魔扣论坛

查看: 15|回复: 1

[织梦教程] 织梦dedecms不同栏目调用不同banner图的方法

[复制链接]
  • TA的每日心情
    开心
    10 小时前
  • 签到天数: 1415 天

    [LV.10]论坛老兵

    7300

    主题

    7517

    帖子

    5万

    积分

    管理员

    Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

    魔扣币
    226303
    贡献
    24450
    威望
    18864

    最佳新人活跃会员热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2019-12-25 23:49:15 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】
    淘宝、天猫优惠券

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    织梦dedecms首页、联系我们、公司介绍,等调用默认banner~~~这就不说了。

    它的产品  比如:
    产品大类A(封面页,typeid=111)-小类1 小类2 小类3 小类4
    产品大类B(封面页 typeid=222)-小类5 小类6 小类7 小类8
    产品大类C(封面页 typeid=333)-小类9 小类10 小类11 小类12……

    A大类下,所有子栏目及文章,banner图是同一张 111.jpg  ~~ B大类的又是另外的一张222.jpg

    ——或者说:产品所有的页面,都是调用所属顶级栏目(封面页)的 typeid 名字的图!!!

    <div class="banner"><img src="banner.jpg" /></div>  那这里,怎么达到我说的效果?

    解决办法:
        <img src="{dede:global.cfg_templets_skin/}/images/{dede:field.typeid function="GetTopid(@me)"/}.jpg" alt="{dede:field.typename/}" /> 只要改改图片的名字就行了 已经试过了很好用的

    最模板首推这一方法,经过测试是可行的

    dede调用顶级栏目ID 方法二:

    首先,在所需要调用顶级栏目ID的地方,添加这段标签语法{dede:type}[feild:topid/]{/dede:type}

    第二,修改源文件,找到include目录下的taglib目录下的type.lib.php。

    找到这条语句

    $row = $dsql->GetOne(“Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
    From `dede_arctype` where id=’$typeid’ “);

    修改成为

    $row = $dsql->GetOne(“Select id,topid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
    From `dede_arctype` where id=’$typeid’ “);

    在if(!is_array($row)) return ”;下一行添加

    if( $row['topid']==0){$row['topid']=$row['id'];}

    这样,这条语句在顶级栏目还是子栏目,都可以调用了

    这一方法看起来不错而且修改一下源码就可以了但是经过本人的测试发现没有实现我要的效果,故没有用它,如果有心的朋友可以测试一下是否可行

    以上是对dede织梦模板中添加顶级栏目id的方法的一个小小总结,欢迎各位的测试和关注

    --------------------------------------------------------------------------------------------------------

    DedeCMS借助顶级栏目id来调用不同的banner广告图片

    DedeCMS借助顶级栏目id来调用不同的banner广告图片。dedecms模板中添加顶级栏目id的方法总结,使用dede顶级栏目id可以实现很多功能比如:在每个列表页调用不同的栏目图片(同一顶级栏目调用相同的图片),如果我们做N个栏目就意味着要做N个列表页模板,显示这种方法是不可取的,那么我们怎样来更快更简单的处理这个问题呢,dede模板的思路是这样的:调用顶级栏目ID,然后将图片尾部添加为ID号如:img1.jpg 即为imgID.jpg这样我们只需要制作图片就可以了;大概意思就是这样的吧,下面是在网络中收集到的方法:

    dede调用顶级栏目ID 方法一:

    {dede:field.typeid function="GetTopid(@me)"/}

    AB模板网首推这一方法,经过测试是可行的

    dede调用顶级栏目ID 方法二:

    首先,在所需要调用顶级栏目ID的地方,添加这段标签语法{dede:type}[feild:topid/]{/dede:type}

    第二,修改源文件,找到include目录下的taglib目录下的type.lib.PHP。

    找到这条语句

    $row = $dsql->GetOne("Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

    From `dede_arctype` where id=rsquo;$typeidrsquo; ");

    修改成为

    $row = $dsql->GetOne("Select id,topid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

    From `dede_arctype` where id=rsquo;$typeidrsquo; ");

    在if(!is_array($row)) return ";下一行添加

    if( $row['topid']==0){$row['topid']=$row['id'];}

    这样,这条语句在顶级栏目还是子栏目,都可以调用了。

    这一方法看起来不错而且修改一下源码就可以了但是经过本人的测试发现没有实现我要的效果,故没有用它,如果有心的朋友可以测试一下是否可行。以上是对dede织梦模板中添加顶级栏目id的方法的一个小小总结。

    个人小总结:

    dede调用顶级栏目ID 方法

    <img src="{dede:global.cfg_templets_skin/}/images/banner/{dede:field.typeid function="GetTopid(@me)"/}.jpg" alt="{dede:field.typename/}" />

    <img src="/templets/default/images/banner/5.jpg" alt="联系我们">

    会员购买:>> 点击购买 << | 魔扣币购买:>> 点击购买 <<
    承接业务:服务器代维丨网站托管丨SEO
    联系客服:微信:morko-net | QQ:1367681973

    该用户从未签到

    1

    主题

    202

    帖子

    403

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    201
    贡献
    201
    威望
    0
    发表于 2019-12-26 09:53:16 | 显示全部楼层
    欢迎你,亲爱的朋友,看到你的留言让我十分高兴。记得从我们第一次接触以后开始互访,至今已经有5个多月了,在这段时间里,我们从陌生到相识相知,增进了彼此信任,友谊不断加深,直到现在成为好朋友,这都是前世修来的缘分。魔扣源码论坛让我们珍惜这份缘,我相信我们的友谊将永存!
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表