前言

提到创作,版权问题是一个不得不谈的事情。无论是摄影,文章还是代码等,这些都属于个人创作,一份优秀的作品一定是经过了作者的千辛万苦才制作出来的。但可能是因为早期互联网时代大部分人并没有意识到网络信息也存在版权,导致了许多人在上网浏览时忽略了版权问题,更有甚者明知故犯,直接照搬作品不询问,被追究的时候还顺便理直气壮地说一句「反正大家都这么干的,我这样子有何不行」。

虽然本人日常吐槽「白嫖天下第一」,但是该遵守的事情我照样会遵守。作为玩过摄影,做过视频和写过一些文章的人,我很能理解创作的艰辛,也很能理解那些被盗内容的创作者的内心。我作为程序员,虽然支持开源,但是开源也讲究开源协议,并不是随便照搬都可以。因此这篇文章就简单讲一下如何给自己的文章设置版权须知,当然大部分情况下,这样子也只是「防君子不防小人」,我们只能期待这能启发少数的人意识到版权问题,从而带领更多的人遵守规则。

一、博文底部的版权信息

1.插件介绍

我们常见的博文底部的版权声明,只需要一个叫做「Copyright-for-Typecho」的简单插件就可以实现。这是一个 Typecho 插件,利用自定义字段功能灵活地在文章或独立页面尾部显示版权小尾巴。

就像这样:

版权属于:PCsky

本文链接:http://hyouka.club/index.php/archives/29/

本站文章采用知识共享署名4.0 国际许可协议进行许可,请在转载时注明出处及本声明!

作者曾有很长一段时间没有维护此插件,这期间它随 Typecho 1.1 更新而失效。在之后,大佬 神代綺凜 修复了此插件使得它可以在 Typecho1.1 下继续工作。

2.安装插件

首先我们可以从github上下载插件,如果上不去GitHub或者下载速度慢,可以在度盘链接下载,提取码:3457


github下载页面

下载完之后,解压,然后把插件的文件夹重命名为 Copyright ,然后整个文件夹上传到Typecho的 /usr/plugins/ 路径下。
整个文件夹上传

「一步安装的方式」这种方法适用于熟悉服务器和Linux命令操作的人,可以直接远程连接服务器,然后一步步执行下面的命令。

# Initailly open the root document of your Typecho, then
cd usr/plugins/ # 这里填自己站点的路径
git clone https://github.com/Yves-X/Copyright-for-Typecho.git
mv Copyright-for-Typecho Copyright

3.启用与设置插件

登入 Typecho 后台,然后点击 控制台——插件——启用——设置 ,即可启用和设置插件
启动插件

在插件设置中,我们填入对应的信息,然后勾选,即可在每篇文章的结尾处显示版权声明了
插件设置

二、博文复制的版权信息

即使有时候我们已经在博客底部附上了版权信息,但是可能还是会有人直接页面复制到版权信息之前就结束了。这种情况下,可以参考知乎的操作,即复制文章的时候直接附带了版权信息,当黏贴的时候就会显示出来。

1.JavaScript代码

给Typecho博客添加JavaScript代码实现复制带版权信息的功能,当访客有意复制文章内容,会在剪切板上增加类似知乎体一般的版权信息。原理如下:

  1. 监听 copy 事件
  2. 使用 window.getSelection() 获取选中的文本
  3. 使用 clipboardData.setData 操作剪贴板的内容
<script>
document.body.addEventListener('copy', function (e) {
    if (window.getSelection().toString() && window.getSelection().toString().length > 42) {
        setClipboardText(e);
        // alert('商业转载请联系作者获得授权,非商业转载请注明出处哦~\n谢谢合作~(。・`ω´・)');
    }
}); 
function setClipboardText(event) {
    var clipboardData = event.clipboardData || window.clipboardData;
    if (clipboardData) {
        event.preventDefault();
        var htmlData = ''
            + '著作权归作者所有。<br>'
            + '商业转载请联系作者获得授权,非商业转载请注明出处。<br>'
            + '作者:<?php $this->author() ?><br>'
            + '链接:' + window.location.href + '<br>'
            + '来源:<?php $this->options->siteUrl(); ?><br><br>'
            + window.getSelection().toString();
        var textData = ''
            + '著作权归作者所有。\n'
            + '商业转载请联系作者获得授权,非商业转载请注明出处。\n'
            + '作者:<?php $this->author() ?>\n'
            + '链接:' + window.location.href + '\n'
            + '来源:<?php $this->options->siteUrl(); ?>\n\n'
            + window.getSelection().toString();
 
        clipboardData.setData('text/html', htmlData);
        clipboardData.setData('text/plain',textData);
    }
}
</script>

2.食用方法

  • 可以直接在主题文件夹下的 footer.php 的最后一堆 script 之间加入代码就可以了(handsome主题的footer.php在 /handsome/component 目录下)。
    更改footer.php
  • 如果考虑用户体验,个人建议只放在主题文件夹下的 post.php ,即文章内页php文件。如果是使用宝塔界面就直接在线编辑然后保存文件即可。
    更改post.php
  • 显示效果如下:

著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:PCsky
链接:http://hyouka.club/index.php/archives/29/
来源:http://hyouka.club/

  • P.S. 代码中有一个弹窗功能感觉会很烦就注释掉了,如果需要的话就把注释符去掉即可。

结语

版权问题是个日常性问题,虽小但不应该被忽视,对于知识和优秀作品的生产者,我们应该给予足够的尊重,而不是随心所欲地“转发”。养成版权意识,从自己做起。

参考资料

最后修改:2020 年 12 月 09 日 05 : 01 PM
如果觉得我的文章对你有用,请随意赞赏