首页 > 运营 > 建站经验 > 正文

dedecms 在文章标题前调用顶级栏目的方法

2019-10-14 22:57:10
字体:
来源:转载
供稿:网友

我有3个顶级栏目(栏目a、栏目b、栏目c),顶级栏目下面又有若干子栏目。问题是:首页有个区域需要调用这三个顶级栏目下面的文章,调用的文章前面需加上顶级栏目的名称,且链接地址也是顶级栏目的,效果如下:

[栏目a] 阿斯顿福建历史就分手了附件是了附件
[栏目b] 阿斯顿福建历史就分手了附件是了附件
[栏目c] 阿斯顿福建历史就分手了附件是了附件

{dede:arclist row=8 titlelen=40 orderby=pubdate att=c}
<a href="[field:typeurl/]" >[[field:typename/]]</a>
<a href=’[field:arcurl/]‘ >[field:title/]</a></br>
{/dede:arclist}这样写,只是调用文章所在的子栏目名!
请问改怎么弄,才能调用文章所在的顶级栏目名且链接地址也是顶级栏目地址?

解决办法:

通过文章的typeid从arctype表中找到reID,然后根据这个reID找到id=reID的栏目,读取typename和url并输出
注:reID就是栏目的上级栏目的id
{dede:arclist|}
[field:typeid runphp=yes]
     $tsql = new DedeSql(false);
     $typelink2 = ”;
     $tsql->SetQuery("Select i.typedir,i.typename From dede_arctype t left join dede_arctype i on i.id=t.reid where t.id=’@me’");
     $tsql->Execute(‘t’);
     while($row = $tsql->GetArray(‘t’,MYSQL_ASSOC))
     {
       $typelink2 .= "<a href=’".$row['typedir']."’>".$row['typename']."</a>";
     }
     @me=$typelink2;
[/field:typeid]
{/dede:arclist}

5.3有topid了,把里面reid改成topid即可

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表