透過下面的JS程式碼,可以有效地防止別人直接複製拷貝你的文章,用frame標籤引用你的文章時,會自動跳到文章正常鏈接,同時禁止右鍵選單。以下由WordPress教學專欄為大家介紹具體方法。
使用方法一:
#開啟目前主題頭部模板header.php找到:將下面程式碼加到後面:
<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文章防複製程式碼的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!