Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

该主题如何防止文章复制和转载 #11

Open
danyulove opened this issue Feb 2, 2023 · 7 comments
Open

该主题如何防止文章复制和转载 #11

danyulove opened this issue Feb 2, 2023 · 7 comments

Comments

@danyulove
Copy link

danyulove commented Feb 2, 2023

  1. 如何防止文章复制和转载。
  2. 文章页面的导航菜单栏偶尔会消失。
  3. 无法添加备案或云服务提供商,无法添加 开往和虫洞
  4. Halo后台无法在线更新该主题,会提示主题已被删除,页面跳转到404
@guqing
Copy link
Owner

guqing commented Feb 16, 2023

关于文章防止复制,可以简单实现比如在 Halo 后台内容页 head 代码注入中插入 js 来实现
image

<script>
  // 禁止右键菜单
document.oncontextmenu = function(){ return false; };
// 禁止文字选择
document.onselectstart = function(){ return false; };
// 禁止复制
document.oncopy = function(){ return false; };
// 禁止剪切
document.oncut = function(){ return false; };
</script>

@guqing
Copy link
Owner

guqing commented Feb 16, 2023

文章转载目前应该只能通过在文章底部放转载声明的方式来约定,如果你有更好的方式欢迎可以提出来讨论下,我会考虑在提供一个设置来决定是否开启转载声明,开启后就会在文字内容底部追加

@guqing
Copy link
Owner

guqing commented Feb 16, 2023

问题三也是可以通过在后台代码注入设置的, 效果可以参考 https://guqing.xyz。
用 halo 能实现的功能就不在考虑再主题实现一遍了
image

@guqing
Copy link
Owner

guqing commented Feb 16, 2023

问题四,halo 2.0 还没有提供在线升级功能,等应用市场出了以后才会做,如果你使用的是 1.x 则需要看该主题的 release 是否是支持 1.x 的还是 2.x 的,因为 halo 2.0 和 1.x 的实现已经完全改变了。
即使你使用的是 1.x 上述那些功能在 halo 还是存在的依然有效

@adozhao
Copy link

adozhao commented Dec 12, 2023

关于文章防止复制,可以简单实现比如在 Halo 后台内容页 head 代码注入中插入 js 来实现 image

<script>
  // 禁止右键菜单
document.oncontextmenu = function(){ return false; };
// 禁止文字选择
document.onselectstart = function(){ return false; };
// 禁止复制
document.oncopy = function(){ return false; };
// 禁止剪切
document.oncut = function(){ return false; };
</script>

这种方案会导致highlight插件提供的复制功能失效,其实这一点影响挺大的。
其实这个东西,我只想着官方可以出个防止复制的插件来着。
商店有个插件"文章限制阅读"这个只适合成熟的站...
目前我觉得最好的方案就是这位前端大佬提供的:
https://www.zhangxinxu.com/wordpress/2023/03/js-disorder-chinese/
可以把中文取反义词,英文就打乱次序就行~

@guqing
Copy link
Owner

guqing commented Dec 12, 2023

目前我觉得最好的方案就是这位前端大佬提供的: zhangxinxu.com/wordpress/2023/03/js-disorder-chinese 可以把中文取反义词,英文就打乱次序就行~

多好的一个 Idea,如果有人能提供一个插件出来专门做这样的事就好了 😜
image

@adozhao
Copy link

adozhao commented Dec 12, 2023

你搞,我付费 @guqing
逻辑很简单,只是不是后端仔,搞起来费劲~ 还得装java环境,启服务。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants