WordPress文章防***代码的方法

更新于 2020年6月26日 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如何禁止特定用户修改密码

add_filter(‘allow_password_reset’, ‘__return_false’ );如果仅仅是禁止某些特定的用户使用这个功能,可以在主题的 functions.php 添加下面的代码:

wordpress网站怎么设置不可被***wordpress网站怎么设置不可被***

原创内容经常被别人轻易***转载?站长工具箱中自带内容保护插件,可禁止右键和***功能,使用十分方便。登录WordPress后台,依次点击【外观】-【编辑】,找到footer.php并编辑,在<

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

最近发现 有不少文章配上图片,写得比较长。’wp_more’,<if ( strpos( $content,'<if ( strpos( $content, ‘<

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

WordPress文本小工具中可以添加任意HTML代码,但默认PHP代码添加到文本小工具中却不能运行,下面的这段代码很有用! $text = ob_get_contents();

wordpress如何自定义短代码wordpress如何自定义短代码

wordpress实现自定义短代码。// @param $content 短代码里面的内容// @param $code 短代码function hello($atts, $content=null, $code=””) {

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

wp-json可以很方便获取wordpress的内容,但也让采集变得容易起来,很容易被恶意抓取。imwpf可以很方便关闭关闭wp-json接口并且不影响后台使用,并且其他更强大的优化功能,推荐使用。

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

function remove_dns_prefetch( $hints, $relation_type ) {add_filter( ‘wp_resource_hints’, ‘remove_dns_prefetch’, 10, 2 );方

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

让WordPress一个页面显示全部分类的文章cat=’ . $cat->php echo $cat->a href=”<$cats = get_categories(array(‘include’ =>