WordPress文章防复制代码的方法

更新于 2020年6月26日 wordpress教程

WordPress文章防复制代码的方法

通过下面的JS代码,可以有效地防止别人直接复制拷贝你的文章,用frame标签引用你的文章时,会自动跳转到文章正常链接,同时禁止右键菜单。

使用方法一:

打开当前主题头部模板header.php找到:<?php wp_head(); ?>将下面代码添加到后面:

<script>
// 禁止右键
document.oncontextmenu = function() {
    return false
};
// 禁止图片拖放
document.ondragstart = function() {
    return false
};
// 禁止选择文本
document.onselectstart = function() {
    if (event.srcElement.type != "text" && event.srcElement.type != "textarea" && event.srcElement.type != "password") {
        return false;
    } else {
        return true;
    }
};
if (window.sidebar) {
    document.onmousedown = function(e) {
        var obj = e.target;
        if (obj.tagName.toUpperCase() == "INPUT" || obj.tagName.toUpperCase() == "TEXTAREA" || obj.tagName.toUpperCase() == "PASSWORD") {
            return true;
        }
        else {
           return false;
        }
    }
};
// 禁止frame标签引用
if (parent.frames.length > 0) {
    top.location.replace(document.location);
}
</script>

使用方法二:

上面的方法查看源代码时有些乱,可以在当前主题目录新建一个名称为copyright.js文件,将下面代码添加进去:

// 禁止右键
document.oncontextmenu = function() {
    return false
};
// 禁止图片拖放
document.ondragstart = function() {
    return false
};
// 禁止选择文本
document.onselectstart = function() {
    if (event.srcElement.type != "text" && event.srcElement.type != "textarea" && event.srcElement.type != "password") {
        return false;
    } else {
        return true;
    }
};
if (window.sidebar) {
    document.onmousedown = function(e) {
        var obj = e.target;
        if (obj.tagName.toUpperCase() == "INPUT" || obj.tagName.toUpperCase() == "TEXTAREA" || obj.tagName.toUpperCase() == "PASSWORD") {
            return true;
        }
        else {
           return false;
        }
    }
};
// 禁止frame标签引用
if (parent.frames.length > 0) {
    top.location.replace(document.location);
}

然后再将下面代码添加到当前主题函数模板functions.php的最后:

function copyrightpro_scripts() {
    wp_enqueue_script('copyright', get_template_directory_uri() . '/copyright.js', array(),  false);
}
 
if (!current_user_can('level_10')) {
    add_action( 'wp_enqueue_scripts', 'copyrightpro_scripts' );
}

代码中加了判断,管理员登录状态一下,防复制代码无效。

当然上面的方法,也只是忽悠一下小白,浏览器禁用JavaScript后,将失去效果。

你可能还喜欢下面这些文章

WordPress如何禁止特定用户修改密码WordPress如何禁止特定用户修改密码

在某些特殊情况下,可能需要禁止用户使用WordPress自带的密码重置功能,也就是在登录界面点击“忘记密码。添加下面的代码:add_filter('allow_password_reset',。'__return_false'。添加下面的代码

wordpress网站怎么设置不可被复制wordpress网站怎么设置不可被复制

一是使用插件,二是添加JavaScript代码。站长工具箱中自带内容保护插件,可禁止右键和复制功能,使用十分方便。JavaScript代码登录WordPress后台,依次点击【外观。

wordpress怎么实现文章分页wordpress怎么实现文章分页

underline">'wp_more',</SPAN></STRONG></SPAN>。underline">'wp_more','wp_page',</SPAN></STR

如何在WordPress文本小工具中运行PHP代码如何在WordPress文本小工具中运行PHP代码

文件:add_filter('widget_text',。php_text($text)。$text;}之后,可以将一个文本小工具添加到侧边栏中,并在其中输入PHP函数代码,看看是不是可以正常运行了。

wordpress如何禁用wp-jsonwordpress如何禁用wp-json

插件关闭imwpf可以很方便关闭关闭wp-json接口并且不影响后台使用,并且其他更强大的优化功能,推荐使用。代码关闭由于wordpress新版编辑器的后台会使用wp-json,因此只需要让未登陆的禁止使用即可。

如何禁止WordPress头部加载s.w.org如何禁止WordPress头部加载s.w.org

href='//s.w.org'>WordPress在头部添加dns-prefetch,应该是为了从s.w.org预获取表情和头像,目的是提高网页加载速度。

wordpress如何在一个页面显示所有文章wordpress如何在一个页面显示所有文章

></h3>。<li><a。>"><。></a></li>。get_categories();改为$cats。

WordPress前台如何显示登录用户的最后登录时间WordPress前台如何显示登录用户的最后登录时间

s'));}add_action('wp_login','user_last_login');//。get_last_login($userdata->ID);。