在使用DedeCMS进行网站建设时,问答功能是一个非常重要的模块。然而,在实际应用中,我们常常需要在首页或者其他页面调用全部问题列表。虽然DedeCMS默认支持调用待解决问题、新解决问题、推荐问题和高悬赏问题,但并没有直接提供调用全部问题的功能。本文将详细介绍如何通过修改代码来实现这一需求。

// 自定义函数
// 实现调用全部问题
else if($sort=='all')
{
    $wheresql .= ' And status in (1,2) ';
    $orderby = ' ORDER BY dateline DESC';
}
// 自定义函数结束
    
首先,我们需要打开文件 /include/tpllib/plus_ask.php 。在这个文件中,找到大约第32行的位置,或者通过查找工具定位到 else if($sort=='ok') 这段代码。然后,在这段代码之前插入上述自定义函数代码。
接下来,我们可以看一下插入后的完整代码片段:

else if($sort=='commend')
{
    $wheresql .= ' And digest=1';
    $orderby = ' ORDER BY dateline DESC';
}
// 自定义函数
// 实现调用全部问题
else if($sort=='all')
{
    $wheresql .= ' And status in (1,2) ';
    $orderby = ' ORDER BY dateline DESC';
}
// 自定义函数结束
else if($sort=='ok')
{
    $wheresql .= ' And status=1 ';
    $orderby = ' ORDER BY solvetime DESC';
}
    
完成以上步骤后,您就可以在前台页面上使用以下标签来调用全部问题了:
{dede:ask row='22' titlelen='80' sort='all'}...{/dede:ask}
其中,row参数表示显示的问题数量,titlelen参数控制标题长度,而sort参数设置为'all'以调用所有问题。
通过这样的修改,您可以轻松实现在DedeCMS网站中调用全部问答问题的功能,进一步提升用户体验。希望这篇文章对您有所帮助!