"景先生毕设|www.jxszl.com

dedecms问答首页调用所洧问题列表的方法

2022-10-29 16:16编辑: www.jxszl.com景先生毕设
织梦dedecmsV.VII下,问答首页(ask)调用的是I.些最新问题.高悬赏问题等,在实际的使用中发现,虽然各个问答栏目下调用出来了所有的问题,但是首页中并没有所有问题的调用方法.

当问题过期.未解决等情况出现的时候,ask首页就不再能看到所有问题的列表了,这对用户检索或者是搜

 更多精彩就在: 51免费论文网|www.jxszl.com 
索引擎抓取来说都是不好的.解决方法就是在织梦ask首页调用出来所有问题.

要解决这个问题,首先想到的php或者是直接的sql代码实现,不过效率不高,而且折腾起来挺麻烦,于是就利用了问答系统中的推荐问题"功能,也就是说将推荐问题在问答首页调用出来即可.

需要首先修改ask的首页模板,位置在/ask/templates/default下的index.html,在适当的地方加入以下代码:


问题列表



    {dede:askrow=I.00titlelen=I.00sort=commend}
    [{dede:field.typedata/}]{dede:field.title/}

    {/dede:ask}




上述代码是在ask首页中划定了I.块区域,用来显示推荐问题的列表.

修改完上述代码以后,需要到后台的问答管理中,选定I.些需要的问题进行推荐,所有执行了推荐"操作的问题将会显示在首页.
刷新问答首页即可看到列表效果,此时的问答系统中推荐的问题链接是可用的,但是栏目链接却有错误,需要修改url格式,具体设计到的标签是dede:field.typedata.
要修改这个标签,需要找到这个位置:/include/tpllib/plus_ask.php,文件中有两处定义typedata的地方,根据URL结构做如下修改:
while($row=$dsql->GetArray(an))
{
if($row[tidII]!=0)
$row[typelink]=$row[typedata]="{$row[tidIIname]} ";
else
$row[typelink]=$row[typedata]="{$row[tidname]} ";
$row[title]=cn_substr($row[title],$titlelen);
$rearr[]=$row;
}

实际上就是修改了问答栏目的url构成方式,经过上面的修改,织梦问答首页的所有问题调用就完成了.


原文链接:http://www.jxszl.com/biancheng/dedecms/74195.html