花魁直播高品质美女在线视频互动社区 - 花魁直播官方版

 歡迎來(lái)到素材無(wú)憂網(wǎng),按 + 收藏我們
登錄 注冊(cè) 退出 找回密碼

織夢(mèng)標(biāo)簽二次開發(fā)解決channel調(diào)用上級(jí)欄目id

時(shí)間: 2019-04-22 11:20 閱讀: 作者:素材無(wú)憂網(wǎng)

我們知道織夢(mèng)系統(tǒng)里面調(diào)用欄目導(dǎo)航用的標(biāo)簽是:

{dede:channel type='top' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}

<li><a href='[field:typelink/]'>[field:typename/]</a> </li>

{/dede:channel}

聽網(wǎng)友說(shuō)要調(diào)用上級(jí)欄目的id,手冊(cè)上說(shuō)使用reid='0',因?yàn)?,沒有使用過個(gè)也沒有注意,但是,測(cè)試一下發(fā)現(xiàn)這個(gè)調(diào)用上級(jí)欄目的功能有問題,加上這個(gè)屬性只能調(diào)用同級(jí)欄目,說(shuō)明這個(gè)屬性有問題。

由于群里的網(wǎng)友說(shuō)要調(diào)用上級(jí)欄目id,所以,我研究了下這個(gè)標(biāo)簽channel的源碼,發(fā)現(xiàn)織夢(mèng)官方?jīng)]有處理調(diào)用上級(jí)欄目的屬性reid='0'情況,可能官方認(rèn)為調(diào)用上級(jí)欄目一般人用不到,確實(shí)如此,用了很多年了,這個(gè)標(biāo)簽競(jìng)?cè)粡臎]有用到過,正好很多也沒有在織夢(mèng)基地做教程了,不管這個(gè)標(biāo)簽屬性是不是常用的標(biāo)簽,今天,就做個(gè)教程。

因?yàn)?,要進(jìn)行二次開發(fā),所以,如果不懂php程序的,可以接照下面一步一步添加上代碼就可以,如果懂php程序的,我會(huì)在后面做一下簡(jiǎn)單分析供大家參考。

1.在文件/include/taglib/channel.lib.php里面添加,如下sql語(yǔ)句,如下圖所示:

else{

$sql = "SELECT reid,id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

FROM `dede_arctype` WHERE id='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";

}

注意,添加的位置是在else if($type=='self')這個(gè)條件下面添加。

這句sql語(yǔ)句的作用是:查詢當(dāng)前欄目下面的上級(jí)欄目reid,當(dāng)前欄目id等,主要是reid值。


2. 然后,添加一行代碼:$row['reid']= $row['reid'];

添加的位置如下:

也就是在下面的這個(gè)條件if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )下面添加二行上面的代碼。

添加這二行的作用就是為了實(shí)現(xiàn)標(biāo)簽底層模板的調(diào)用。


3. 進(jìn)行測(cè)試,在list_arcticle.htm里面添加如下標(biāo)簽:

{dede:channel }

[field:reid/]

{/dede:channel}

注意:上面的{dede:cahnnel}里面不要添加任何屬性。