Существует много способов защиты сайта от копирования контента, но мы рассмотрим три наиболее простых способа. Конечно же 100%-й гарантии защиты от копирования нет, продвинутый пользователь найдёт способ обойти такие запреты! Ну а новичков это остановит.
А надо ли вообще ставить защиту от копирования? Я думаю, что если кто-то правильно скопировал и у него хороший сайт, то и Вам и ему это только на пользу. «Правильно скопировать» — это значит в скопированном материале поставить открытую для индексации ссылку на первоисточник. Если такая ссылка будет, то никаких претензий со стороны автора и поисковых систем не будет. Ну а если ссылка не стоит, то не сомневайтесь, поисковики определят по многим критериям первоисточник, и потом в лучшем случае страница с копированным материалом опустится очень глубоко, а в худшем вообще не появится в поиске.
Для тех кто всё-таки решил запретить копирование, опишу три способа.
1. При копировании контента, автоматически добавляется ссылка на Ваш сайт
Этот способ часто используют многие веб-мастера. При копировании теста и вставки его в любой текстовый редактор, автоматически проставляется открытая ссылка на источник. Ее конечно можно стереть, но новичок не сразу разберётся, что это за ссылка.
Реализация данного варианта очень простая, достаточно вставить в файл шаблона вот этот скрипт:
1234567891011121314151617181920212223 <script type="text/javascript">//<![CDATA[function addLink() {var body_element = document.getElementsByTagName('body')[0];var selection = window.getSelection();// Вы можете изменить текст в этой строчкеvar pagelink = "<p>Источник: <a href=""+document.location.href+"">"+document.location.href+"</a> Блог Виталия Кириллова &copy; SEO-Mayak.com</p>";var copytext = selection + pagelink;var newdiv = document.createElement('div');newdiv.style.position = 'absolute';newdiv.style.left="-99999px";body_element.appendChild(newdiv);newdiv.innerHTML = copytext;selection.selectAllChildren(newdiv);window.setTimeout( function() {body_element.removeChild(newdiv);}, 0);}document.oncopy = addLink;//]]></script>
Скрипт проверен, полностью рабочий. Многие пишут, что устанавливать его надо перед закрывающим тегом </head>. Этого делать не надо, Google всегда «ругается» за скрипты в файле header.php Поэтому ставьте его в конце файла foooter.php перед закрывающим тегом </body>, это проверено.
2. Отключение функции выделения текста и изображений
Можно предпринять меры по защите контента и изображений, совсем отключив функцию выделения любого участка текста на странице.
Для осуществления этого отключения нам потребуется открыть для редактирования файл header.php и перед тегом </head> вставить следующий скрипт:
12345678910111213 <script type="text/javascript">function disableSelection(target){if (typeof target.onselectstart!="undefined")target.onselectstart=function(){return false}else if (typeof target.style.MozUserSelect!="undefined")target.style.MozUserSelect="none"elsetarget.onmousedown=function(){return false}target.style.cursor = "default"}</script>
Теперь открываем файл footer.php для редактирования и перед строчкой
<?php wp_footer (); ?>
вставляем следующий скрипт:
12345 <script type="text/javascript">disableSelection(document.body)</script>
Сохраняем изменения и пробуем выделить любой участок текста на сайте или изображение. Если выделить не получается, то значит Вы все сделали правильно.
3. Зашита от копирования контента и изображений с помощью отключения действия правой кнопки мыши
Многие новички не умеют пользоваться сочетанием клавиш Ctrl+C для копирования и Ctrl+V для вставки, но могут вызывать меню с помощью правой кнопки мыши, где также есть функции копировать и вставить.
Ну что же, давайте отключим действие правой кнопки мыши, применительно к Вашему сайту. Для этого открываем все тот же файл header.php и перед закрывающим тегом </head> прописываем одну строчку:
123 <body oncontextmenu="return false;">
Сохраняем изменения и пробуем выделить любой участок текста на сайте или изображение. Если выделить не получается, то значит Вы всё сделали правильно.
В отдельной статье опишу защиту картинок, и для чего это надо сделать.
Статья была полезной?