POST TIME:2018-04-21 21:34
dedecms織夢問答等模塊支持arclist標簽,實現(xiàn)隨機調(diào)用其他欄目文章
就是讓模塊模板文件支持調(diào)用主站的模板,因為調(diào)用主站下的/templets/default/模板,也就實現(xiàn)了支持調(diào)用所有標簽和標簽屬性。下面是解決方法:不少朋友需要在DedeCms的問答系統(tǒng)、留言本、會員空間導航里調(diào)用系統(tǒng)標簽,但默認是不支持系統(tǒng)標簽調(diào)用的,需要對系統(tǒng)文件進行簡單的修改。
第一步:打開"/include/common.func.php",該文件5.7,5.6版本默認存在,5.5的不存在自己建一個。
然后在該文件中加入一個函數(shù),代碼如下:
function pasterTempletDiy($path)
{
require_once(DEDEINC."/arc.partview.class.php");
global $cfg_basedir,$cfg_templets_dir;
$tmpfile = $cfg_basedir.$cfg_templets_dir."/".$path;//模版文件的路徑
$dtp = new PartView();
$dtp->SetTemplet($tmpfile);
$dtp->Display();
}
加上上面的函數(shù)之后,也就可以調(diào)用主站下的/templets/default/所有模板文件,比如要在問答模塊的主頁調(diào)用主站的隨機文章,你可以在主站模板/templets/default/下新建一個suiji.htm文件,然后在suiji.htm里面加入你需要的標簽和標簽屬性:
{dede:arclist titlelen='100' row='15' orderby='rand'}
<li><a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a></li>
{/dede:arclist}
最后在問答模塊首頁的模板里面加入:
<?php
pasterTempletDiy("default/suiji.htm");
?>
這樣就實現(xiàn)了真正意義的隨機文章,因為ask模塊是動態(tài)頁所以每刷新頁面文章就會變化,還可以通過修改:系統(tǒng)--系統(tǒng)基本參數(shù)--性能選項--arclist標簽調(diào)用緩存的值來控制隨機文章的更新頻率。
這種方法還有很多擴展應用,比如讓其他模塊共用主站下的footer.htm,head.htm等文件。