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

  织梦dedecms5.7下,问答首页(ask)调用的是一些最新问题、高悬赏问题等,在实际的使用中发现,虽然各个问答栏目下调用出来了所有的问题,但是首页中并没有所有问题的调用方法。

  当问题过期、未解决等情况出现的时候,ask首页就不再能看到所有问题的列表了,这对用户检索或者是搜索引擎抓取来说都是不好的。解决方法就是在织梦ask首页调用出来所有问题。

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

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

  

  

  

问题列表

  

  

      {dede:ask row=’100′ titlelen=’100′ sort=’commend’}

      

    [{dede:field.typedata /}] {dede:field.title /}

      {/dede:ask}

      

  

  

  

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

  修改完上述代码以后,需要到后台的问答管理中,选定一些需要的问题进行推荐,所有执行了“推荐”操作的问题将会显示在首页。

  刷新问答首页即可看到列表效果,此时的问答系统中推荐的问题链接是可用的,但是栏目链接却有错误,需要修改url格式,具体设计到的标签是dede:field.typedata。

  要修改这个标签,需要找到这个位置:/include/tpllib/plus_ask.php,文件中有两处定义typedata的地方,根据URL结构做如下修改:

  while($row = $dsql->GetArray(‘an’))

  {

  if($row[‘tid2’] != 0)

  $row[‘typelink’] = $row[‘typedata’] = ” {$row[‘tid2name’]}

  ”;

  else

  $row[‘typelink’] = $row[‘typedata’] = ” {$row[‘tidname’]}

  ”;

  $row[‘title’] = cn_substr($row[‘title’],$titlelen);

  $rearr[] = $row;

  }

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

☉免责声明:本站所有模板均来自用户分享和网络收集,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服,我们核实后会立即删除。
☉本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
pbootcms模板网 » dedecms问答首页调用所有问题列表的方法

Pbootcms模板网 提供优质的模板集合

立即查看 了解详情