Blokada prawego przycisku myszy i zrzutu ekranu w WordPress

Dość irracjonalnie coraz częściej pojawia się pytanie jak zablokować prawy przycisk myszy, aby uniemożliwić kopiowanie treści i podobnie sprawa się ma z możliwością wykonywania zrzutów ekranu i ostatecznie blokadą drukowania.

Hipotetycznie blokady te mają utrudnić złodziejom treści możliwość kopiowania zdjęć, treści i innych elementów – poniżej znajdują się sposoby na utrudnienie im życia, ale w podsumowaniu odnajdziesz też odpowiedź na pytanie dlaczego tego NIE robić.

Jak zablokować prawy przycisk myszy?

Aby zablokować prawy przycisk myszy dodaj do stopki następujący kod JavaScript:

document.addEventListener("contextmenu", function(e){
    e.preventDefault();
}, false);

Dzięki temu próba użycia prawego klawisza myszki będzie niemożliwa – nic się nie stanie, jednak nie zadziała to w każdej konfiguracji i każdej przeglądarce.

Jak zablokować kopiowanie i zaznaczanie treści (CTRL-A i CTRL-C)?

Poza myszką skopiować można też tekst poprzez skróty na klawiaturze.

Poniższy kod zablokuje zaznaczanie tekstu, skrót zaznaczania wszystkiego oraz dzięki temu samo kopiowanie.

function disableselect(e) {
    return false;
}

function reEnable() {
    return true;
}

document.onselectstart = new Function("return false");

if (window.sidebar) {
    document.onmousedown = disableselect;
    document.onclick = reEnable;
}

Blokada wykonywania zrzutów ekranu

Tutaj niestety muszę Ciebie zasmucić – nie można zablokować tej opcji, ale można dać użytkownikowi do zrozumienia, że jest to niemile widziane, a jednocześnie utrudnić użytkownikowi życie.

jQuery(document).ready(function() {
jQuery(window).keyup(function(e){
      if(e.keyCode == 44){
		$("body").html("<h1 style='padding:25px;'><b>Zrzuty ekranu nie są dozwolone.</b></h1>");

      }

    }); });

Blokada drukowania strony

Pozostała ostatnia sprawa – co zrobić, aby użytkownik nie mógł wydrukować strony?

Wystarczy prosty kod CSS dodany do sekcji HEAD witryny lub poprzez Personalizację (Wygląd > Personalizacja > Dodatkowy CSS).

@media print {
body { display:none }
}

Najważniejsze – Dlaczego nie warto tego robić?

Oto kilka powodów, z powodu których nie powinieneś tego robić.

  • Ochroni to Twoją treść tylko minimalnie – ktokolwiek będzie chciał skopiować tekst lub element odnajdzie te elementy w źródle czy z pomocą innego narzędzia,
  • Zmniejszy prawdopodobieństwo, że ktoś udostępnij Twoją treść „legalnie” czyli jako cytat z wartościowym linkiem do oryginału,
  • W menu prawego przycisku myszy znajduje się też wiele innych narzędzi – wtyczki społecznościowe, dodatki ułatwiające prace i spowoduje to irytację użytkownika.

Alternatywne rozwiązanie 

Skorzystanie z tego rozwiązania, spowoduje dodanie linka do strony zaraz po skopiowanym tekście jak na poniższej animacji:

Wystarczy dodać poniższy kod (JavaScript):

function addLink() {
        var selection = window.getSelection(),
            pagelink = '<br /><br /> Oryginalny tekst: ' + document.location.href,
            copytext = selection + pagelink,
            newdiv = document.createElement('div');

        newdiv.style.position = 'absolute';
        newdiv.style.left = '-99999px';

        document.body.appendChild(newdiv);
        newdiv.innerHTML = copytext;
        selection.selectAllChildren(newdiv);

        window.setTimeout(function () {
            document.body.removeChild(newdiv);
        }, 100);
    }

    document.addEventListener('copy', addLink);

Źródło kodów: https://stackoverflow.com

Oceń ten artykuł jako pierwszy
dHosting najlepszy serwer dla wordpress i nie tylko
Powiązane tematy: WordPress

Na stronie mogą znajdować się linki polecające (affiliacyjne), które pozwalają utrzymać bloga. Zakup z mojego polecenia nie generuje dla Ciebie dodatkowych kosztów, a ja otrzymam prowizje od kwoty zapłaconej.

Jeden komentarz dla "Blokada prawego przycisku myszy i zrzutu ekranu w WordPress"

  1. Avatar autora komentarza Janunsz Kamiński
    Janunsz Kamiński

    Korzystam się z dodatku Right Clic dla FireFox. I odblokowuje takie rzeczy na raz. Dlatego taka ochrona treści na prawda jest minimalną…

Przyłącz się do dyskusji