本文最后更新于2019年03月16日,共366字。如有问题或建议,欢迎在文章底部留言参与讨论!

通常我们在博客发布文章有两种情况,一种是自己原创的文章,需要在文末添加自己的版权说明;另一种是转载的别人文章,需要说明文章来源。

博主起初参照 E语云博客 的添加方式添加了文章末尾的版权信息,发现判断有误,在稍做修改后现判断正常,故做个记录备用。

修改functions.php设置自定义字段并绑定面板

为了编辑方便,我们给新增文章设置两个自定义字段并固定在文章编辑页,copy_author代表转载作者,copy_link代表转载链接。如果文章是你原创,字段值留空即可。

打开主题目录下functions.php文件,搜索themeFields,在该函数的最后粘贴下面代码即可:

$copy_author = new Typecho_Widget_Helper_Form_Element_Text('copy_author', NULL, NULL, _t('转载作者'), _t('文章转载自哪个网站,若为原创则留空'));
$copy_author->input->setAttribute('class', 'w-100');
$copy_link = new Typecho_Widget_Helper_Form_Element_Text('copy_link', NULL, NULL, _t('转载链接'), _t('转载文章的链接,若为原创则留空'));
$copy_link->input->setAttribute('class', 'w-100');
$layout->addItem($copy_author);
$layout->addItem($copy_link);

修改post.php文件添加版权信息

将下面代码,添加在post.php文件的合适位置即可,代码中的邮箱替换成自己的。代码是先判断自定义字段值是否为空,非空代表转载的文章,空代表你原创的文章。

<?php if (($this->fields->copy_author) == ''): ?>
<div class="copyright"><p>本文为<a href="<?php $this->options->siteUrl();?>" title="<?php $this->options->title();?>" target="_blank" style="color:#3354aa;padding:3px;"><?php $this->options->title();?></a>原创文章,转载请注明出处 <a href="<?php $this->permalink();?>" title="<?php $this->title();?>" style="color:#3354aa;padding:3px;"><?php $this->permalink();?></a></p></div>
<?php else: ?>
<div class="copyright"><p>本文主要内容转载自<a href="<?php echo $this->fields->copy_link;?>" rel="nofollow" title="文章来源:<?php echo $this->fields->copy_link;?>" style="color:#3354aa;padding:3px;"><?php echo $this->fields->copy_author;?></a>,仅供用于学习和交流,若有侵权请邮件联系本站!<a href="mailto:admin@nanlon.cn" style="color:#3354aa">admin@nanlon.cn</a></p></div>
<?php endif; ?>
文章目录