Вставка копирайтов при копировании текста на сайте

Головная боль многих новостных сайтов — копирование оригинального текста и его использование на других сайтах.
В качестве официального решения проблемы — предлагается автоматическое добавление копирайтов при копировании текста в буфер обмена. Копирайт может содержать ссылку на сайт-источник, что дает дополнительное SEO преимущество.
Ниже я предлагаю найденное мною и немного оптимизированное решение этого вопроса.

Вам достаточно добавить данный скрипт на страницах сайта.

<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> Любое использование материалов допускается только при наличии гиперссылки на  © www.site.com</p>";

    var copytext = selection + pagelink;
    var newdiv = document.createElement('div');
    newdiv.style.position = 'absolute';
       body_element.appendChild(newdiv);
    newdiv.innerHTML = copytext;
    selection.selectAllChildren(newdiv);
    window.setTimeout( function() {
        body_element.removeChild(newdiv);
    }, 0);
}
document.oncopy = addLink;
//]]>
</script>

При необходимости я могу собрать компонент с автоматической подгрузкой скрипта на сайт и вставкой адреса и названия сайта в текст копирайта. Если вы считаете что такой простенький компонент необходим — пишите об этом в комментариях.
Николай Савин
Николай Савин
18 апреля 2017, 16:43
modx.pro
5 486

Комментарии: 5

Александр
19 апреля 2017, 03:43
Пригодится, почему бы и нет.
Хотя, это было бы удобнее использовать в качестве одной из многих настроек более крупного компонента, типа adminTools. Но если будет компонент только с этим функционалом — всё равно буду юзать )
Кирилл
19 апреля 2017, 09:03
var pagelink = "<p>Источник: <a href='"+document.location.href+"'>"+document.location.href+"</a> Любое использование материалов допускается только при наличии гиперссылки на  © "+document.location.origin.replace('http://','')+"</p>";

Вот таким образом можно, чтобы не заменять www.site.com каждый раз. Компонент, как по мне, лишний. Проще в отдельный js файл весь код сохранить и строку для подключения самого скрипта прописать:

<script src="/js/copyright.js"></script>
    brioni
    24 апреля 2017, 00:15
    Уже поставил. Спасибо!
      Николай Савин
      24 апреля 2017, 00:31
      Лучшее спасибо — ваш плюсик в рейтинге статьи.
      Шучу — деньги конечно. Но плюсик тоже приятно.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      5