織夢要在交叉欄目中調用自定義字段的內容,用了下面的代碼獲取的內容為空:
{dede:arclist addfields='add1,add2,...' channelid='自定義內容模型的ID' row='10' orderby='pubdate'} //(add1,add2為自字義的字段名)
[field:add1/]//(字段名1 調用 )
[field:add2/]//(字段名2 調用 )
{/dede:arclist}
看來常規的方法是實現不了的,這個時候想起了Dede的萬能標簽[field:id runphp='yes'],我們直接調取數據庫的內容,越過dede的底層標簽就有好了,于是便有了下面這段代碼:
[field:id runphp='yes']
$id=@me;
global $dsql;
$row=$dsql->getone("select aid,hx from `dede_addon17` where aid=$id");
@me=$row["hx"] ;
[/field:id]
代碼釋義:查詢附加表dede_addon17的自定義字段hx,輸出自定義字段hx的內容。這樣就可以實現了欄目交叉的自定義模型字段調用,因為一個一個的調用會顯得代碼比較臃腫也加大了服務器的負擔,于是我們可以批量查詢并輸出,代碼如下:
[field:id runphp='yes'] $id=@me; global $dsql; $info=''; $row=$dsql->getone("select aid,hx,fg,sjsf,zj from `dede_addon17` where aid=$id"); $info='<p class="p2"><span><strong>戶型:</strong>'.$row["hx"].'</span><span><strong>風格:</strong>'.$row["fg"].'</span></p> <p class="p2"><span><strong>設計收費標準:</strong>'.$row["sjsf"].'</span><span><strong>造價:</strong>'.$row["zj"].'</span></p>'; @me=$info; [/field:id] |
大家根據自己的自定義字段存儲的表以及相關自定義字段名來分別做相應修改就好了。



















