注册 登录 天兴工作室:提供zblog模板 emlog模板 dedecms模板的下载和仿站定制

zblogphp教程

zblogphp教程汇总

当前位置:网站首页 教程 zblogphp教程 正文

zblogphp1.5已知bug之相关文章调用

天兴工作室管理 2016-11-26 zblogphp教程 232 ℃ 2 评论

额,这是一个已知的zblogphp1.5bug。具体表现为,在zblogphp1.4下正常的“相关文章”功能在升级到zblogphp1.5后就失效了,调用出来的不是相关文章而是最新文章。

在询问过zblog官方后给出的回复是这是一个已知bug,说是在下个版本(1.5.1)会修复(对此存疑)。

嗯,说下解决办法,如果你动手能力较强,可按照下面的方式修复。

1、找到你正在使用的主题中的post-single.php模板文件,找到以下代码:

{foreach GetList(10,null,null,null,null,null,array('is_related'=>$article.ID)) as $related}
<li><span>{$related.Time('Y-m-d')}</span><a href="{$related.Url}">{$related.Title}</a></li>
{/foreach}

ps:代码不一定一模一样,但是只要找到“{foreach GetList(10,null,null,null,null,null,array('is_related'=>$article.ID)) as $related}”这一段就行。

替换成以下代码:

{$aid=$article.ID}{$tagid=$article.Tags}{$cid=$article.Category.ID}{php}
    $str = '';
    $tagrd=array_rand($tagid);
    if( sizeof($tagid)>0 && ($tagid[$tagrd]->Count)>1){
        $tagi='%{'.$tagrd.'}%';
        $where = array(array('=','log_Status','0'),array('like','log_Tag',$tagi),array('<>','log_ID',$aid));
    }else{
        $where = array(array('=','log_Status','0'),array('=','log_CateID',$cid),array('<>','log_ID',$aid));
    }
    $array = $zbp->GetArticleList(array('*'),$where,array('rand()'=>' '),array(6),'');
    foreach ($array as $related) {
        if(($related->ID)!=$aid){
        $str .= "<li><a href=\"{$related->Url}\" title=\"{$related->Title}\">{$related->Title}</a></li>";
        }
    }{/php}{$str}

保存--后台首页--更新缓存即可。


注意:修改折腾前请务必备份,否则搞坏了不能还原的不要喷我。QAQ

赞 (2)

已有 2 位小伙伴发表了看法

过往云烟

回应ta过往云烟 (游客)

评论于 2016-11-27 21:59:13

这个代码真的管用吗?怎么你这里还是显示最新文章,而不是相关文章呢?难道你没折腾?呵呵
天兴工作室管理

回应ta天兴工作室管理 (管理员)

评论于 2016-12-03 16:07:05

管不管用试试不久知道了,呵呵个屁,我就是懒而已。。。

欢迎 发表评论

服务项目

快速入口

常见问题

天兴工作室 | www.txcstx.cn

天兴工作室介绍天兴工作室承接:网站建设、zblog模板和dedecms模板定制、仿站(像素级仿站)、html单页面定制和修改、网站模板修改等服务;我们的办事准则:要么不答应、答应则一定做到

  • 交流群:ZBLOG交流群
  • 客户群:天兴工作室客户群
在线QQ 评论文章