zblog 调用相关文章标签的例子

作者:袖梨 2022-06-25

方法是很多的,这里小编选择了三种,第一种是zblog官方比较推荐的方法,代码如下:

{$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 .= "

  • {$related->Time('m-d')}
  • ";
    }
    }
    {/php}
    {$str}

    第二种用到的是zblogphp的“GetList“函数,代码如下:

    {foreach GetList(10,null,null,null,null,null,array('is_related'=>$article.ID)) as $related}

  • {$related.Time('Y-m-d')}

  • {/foreach}

    把以上代码放置到你正在使用的主题内的”post-single.php“文件内即可,一般推荐放在”{$article.Content}“下面吧,css自己定义即可。

    还可以自己在主题里面写相关文章的调用代码,代码如下:


    {php}
    $relatedpad='';
    $relatedtxt='';
    $numm=$zbp->Config('duxx')->related;//duxx为主题的id
    if(count (GetList($numm,null,null,null,null,null,array('is_related'=>$article->ID)))){
    $array = GetList($numm,null,null,null,null,null,array('is_related'=>$article->ID));
    }else{
    $array = Getlist($numm,$article->Category->ID);
    }
    foreach ($array as $related) {
    SF_img1::getPics($related,181,111,4);
    if ($related->sf_img_count>0){
    $rimg=$related->sf_img[0];
    }else{
    $rimg=$zbp->host.'zb_users/theme/duxx/style/img/random/'.rand(1,20).'.jpg';
    }
    $relatedpad .= '

  • ';
    $relatedtxt .= '
  • ';
    }
    {/php}

    当然我们也可以用第三方的”相关文章“插件来替换zblogphp原生的相关文章功能。比较推荐的插件有”百度推荐“、”友荐“。大家可根据自身需求选择适合的相关文章功能

  • 相关文章

    精彩推荐