文章标题自动加“图”字

让标题后面加[图]字:

dedecms让带有图片的文章,标题后面加一个【图】字,文章如没有图片则不加,类似下图:

文章标题自动加“图”字_第1张图片

→ 亲自实践的做法:

情况1 :如果是在{dede:arclist}、{dede:list}循环里:
-------------------------------------------------------------------------
[field:litpic runphp='yes']
  $imgurl = @me ;
  if(@me==""){
  @me="";
  }
  else{
    $imglink =(strpos( @me ,'defaultpic')?'':'【图】');
 
   @me=$imglink;
  }
[/field:litpic]
-------------------------------------------------------------------------
情况2:
如果不在{dede:arclist}、{dede:list}等循环内,则将上述代码中的:
[field:litpic runphp='yes']、[/field:litpic]分别替换为:
{dede:field name="litpic" runphp='yes'}、{/dede:field}



****************************

→ 引申:网上的教程误区解疑:

这是www.dede888.com网站管理员老李的做法:
·  如果在文章页:
在循环标签中加入:
--------------------------------
[field:litpic runphp='yes']
$imgurl = @me;
if(@me=="")@me="";else{
$imglink = '【图】';
@me=$imglink;
}
[/field:litpic]
--------------------------------

·  如果是首页
第1步:加入 上述代码,
第2步:注释掉include/arc.archives.class.php 中约883-885行代码:
if($this->Fields['litpic'] == '-' || $this->Fields['litpic'] == '')
{
   $this->Fields['litpic'] = $GLOBALS['cfg_cmspath'].'/images/defaultpic.gif';
 } 
 
·  如果是在列表页
第1步:加入 上述 代码,
第2步: 注释掉 include/arc.listview.class.php中的下述代码:
if($row['litpic'] == '-' || $row['litpic'] == '')
{
      $row['litpic'] = $GLOBALS['cfg_cmspath'].'/images/defaultpic.gif';
 }

老李的这种做法有一个Bug。在列表页,如果只列出文章标题,老李的这种做法可以,但如果有列出文章缩略图和标题,那么老李的这种做法就存在问题了,就是即使文章没有缩略图,文章标题也会显示一个【图】。

故推荐个人亲自实践过的做法!!

****************************

转载于:https://my.oschina.net/zhumofeng/blog/403786

你可能感兴趣的:(文章标题自动加“图”字)