JOE添加原创以及转载来源

chen'mo
2021-02-21 / 0 评论 / 58 阅读 / 正在检测是否收录...

我一向收集的文章比较多,一直也不敢多转载,就是因为不好添加转载来源声明!但也有些自己写的文章,加个原创图标以示区别。 利用typecho的自定义字段来实现此功能,以JOE主题为例,记录如下。

效果如图:

添加原创.png

一、core/core.php 添加如下代码:

    $Copyrightnew = new Typecho_Widget_Helper_Form_Element_Radio('Copyrightnew', 
    array('0' => _t('原创版权'),
    '1' => _t('投稿版权'),
    '2' => _t('转载文章')),
    '1', _t('投稿版权'), _t('版权类型默认:投稿版权,文章版权类型,可以在主题设置里面新增和编辑版权类型,'));
    $layout->addItem($Copyrightnew); 
    
    $url = new Typecho_Widget_Helper_Form_Element_Text('url', NULL, NULL, _t('转载文章来源'), _t('在这里填入一个文章 URL 地址,留空则没有'));
    $zzz = new Typecho_Widget_Helper_Form_Element_Text('zzz', NULL, NULL, _t('作者名'), _t('原作者'));    
    $url->input->setAttribute('class', 'w-100 setfb');
    $layout->addItem($url);  
    $layout->addItem($zzz);

二、public/copyright.php里修改为如下代码:

<?php if($this->fields->zzz != ''){
      echo '<span>转载于:  </span><p>'.$this->fields->zzz.'</p>';
    }else{       
        echo '<span>发表者:</span><p>';
                      $this->author();
                echo'</p>';
    }
?>
         <?php if($this->fields->url != ''){
           echo '<span>来源网址:  </span><p>'.$this->fields->url.'</p>';
                }else{       
    echo '<span>本文链接:</span><p>'.$this->permalink.'(非特殊说明,文章均收集于互网联!)</p>';
                 }
     ?>  

三、post.php里添加:
<?php if ($this->fields->Copyrightnew =='0'):?><div class="originalImg"></div><?php endif; ?>
放到 <div class="joe_main joe_post"> 后面。
四、添加CSS
.originalImg { background: url(assets/img/original.png); background-position: 0 0; background-size: 64px; width: 64px; height: 64px; float:right; right: 0; top: 0;}
图片自取。

Typecho 随机文章(日志)
« 上一篇 02-19
Typecho 免插件统计浏览次数,输出热门文章
下一篇 » 02-22

评论 (0)

取消