コンテンツの複製を拒否するシンプルなコード

はじめに

コンテンツの盗用による被害が結構な頻度で見受けられます。それに対応する一番シンプルな方法を以下に記します。以下の方法は、ブラウザや Javascript に少しでも知見のある方なら破れますが、無いよりは良いのではないかと思います。

コード

/* スクリプトを読み込みます */
add_action(
	'wp_enqueue_scripts',
	function() {
		/* 管理画面以外で */
		if ( ! is_admin() ) {
			?>
			<script>
			/* ブラウザの右クリックを無効にします */
			 document.oncontextmenu = function () { return false; }
			</script>
			<style>
			/* タブレットやスマートフォンの長押しを無効にします */
			.nocopy {
			 -webkit-touch-callout: none;
			 -webkit-user-select: none;
			 -khtml-user-select: none;
			 -moz-user-select: none;
			 -ms-user-select: none;
			 user-select: none;
			}
			</style>
			<?php
		}
	},
	10,
	1
);
/* 上記の 'nocopy' クラスを、body タグに追加します */
add_filter( 'body_class',
	function() {
		/* 管理画面以外で */
		if ( ! is_admin() ) {
			return array( 'nocopy' );
		}
	},
	10,
	1
);

Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください