워드프레스: 플러그인을 사용하지 않고 우클릭과 텍스트 복사, 이미지 다운로드 금지하기

워드프레스 정보를 제공하는 블로그 Avada 2023. 1. 23. 10:27 • 댓글:

워드프레스를 사용하는 경우 WP Content Copy Protection & No Right Click과 같은 플러그인을 사용하여 텍스트 복사를 방지하고 우클릭을 금지할 수 있습니다. 또한, 이미지 등을 불펌할 수 있도록 할 수 있습니다. 하지만 플러그인을 사용할 경우 간혹 다른 플러그인과 충돌을 일으켜 예상치 못한 문제를 일으키기도 합니다. 그리고 모든 불펌 방법은 쉽게 무력화될 수 있으므로 실질적으로 큰 효과가 없을 수도 있습니다.

아래 방법은 워드프레스뿐만 아니라 티스토리 등에서도 활용이 가능합니다.

body 태그에 코드를 추가하여 우클릭과 텍스트 복사 금지하기

대안으로 [**<body>**] 태그에 코드를 추가하여 우클릭과 이미지/텍스트 선택/복사를 방지할 수 있습니다.

<body oncontextmenu="return false" onselectstart="return false" ondragstart="return false" onkeydown="return false">

위의 코드에서...

  1. oncontextmenu = "return false": 오른쪽 마우스 클릭 방지
  2. onseletstart = "return false": 마우스 드래그 방지
  3. 
ondragstart =  "return false" : 이미지 복사 드래그 방지
  4. 
onkeydown = "return false": 키보드 단축키 복사 방지

워드프레스에서 body 태그에 코드를 추가하려면 차일드 테마를 설치하여 작업해야 합니다.

보통 [**<body>**] 태그는 [**header.php**] 파일에 위치하지만 테마에 따라 다를 수 있습니다.

예를 들어, GeneratePress 테마의 경우 차일드 테마를 만들고, FTP 서버에 접속하여 부모 테마 폴더에서 [**header.php**] 파일을 PC로 다운로드한 후에 차일드 테마 폴더로 업로드합니다.

차일드 테마 폴더에서 [**header.php**] 파일을 마우스로 클릭하고 오른쪽 버튼을 클릭한 다음, 보기/편집을 클릭합니다.

워드프레스 헤더 파일

그러면 [**header.php**] 파일 편집 화면이 표시됩니다. 

body 태그에 코드를 추가하여 우클릭과 텍스트 복사 금지하기

[**<body>**] 태그 부분을 찾습니다. GeneratePress 테마의 경우 위의 그림과 같이 [**body**] 태그가 다음과 같이 되어 있습니다.

<body <?php body_class(); ?> <?php generate_do_microdata( 'body' ); ?>>

원하는 기능의 코드를 추가하도록 합니다. 예를 들어, 오른쪽 마우스 버튼만 비활성화하려는 경우 [**oncontextmenu = "return false"**]를 추가하면 됩니다.

<body oncontextmenu = "return false" <?php body_class(); ?> <?php generate_do_microdata( 'body' ); ?>>

그러면 우클릭만 금지됩니다. 테스트로 제 워드프레스 블로그에 위의 코드를 추가하니 잘 작동하는 것을 확인할 수 있었습니다. 페이지 소스를 확인하면 추가한 코드가 추가되어 있습니다.

하지만 이런 방법도 간단히 무력화될 수 있으므로 플러그인과 마찬가지로 큰 효과는 없고, 이미지 불펌이나 텍스트 불펌을 근본적으로 막을 수 있는 방법은 없습니다. 다만, 무력화 방법을 모르는 사용자들에게 조금 불편하게 할 수 있습니다. (텍스트를 복사할 수 없다면 직접 타이핑할 수 있고, 이미지를 다운로드할 수 없다면 스크린샷 플러그인으로 화면을 갈무리할 수도 있습니다. 어떤 식으로든 복사할 사람은 복사할 것입니다.😥😥😥)

자바스크립트를 사용하여 우클릭 금지/텍스트 복사 방지하지

[**<body>**] 태그 안에 코드를 추가할 수 없는 경우 자바스크립트를 사용하여 우클릭을 금지하고 텍스트 복사를 방지할 수 있습니다.

다음 자스 코드를 사용하면 우클릭을 금지할 수 있습니다.

<script>
    document.oncontextmenu = function(){return false;}
</script>

또한, Disable Copying on a website 문서에서 소개하는 JavaScript 코드를 사용하면 텍스트 복사와 이미지 다운로드를 방지할 수 있습니다.

<script>
    function killCopy(e){
        return false;
    }
    function reEnable(){
        return true;
    }
    document.onselectstart=new Function ("return false");
    if (window.sidebar){
        document.onmousedown=killCopy;
        document.onclick=reEnable;
    }
</script>

자바스크립트 코드를 [**</head>**] 바로 위에 추가하시기 바랍니다.

WPCode와 같은 플러그인을 사용하여 헤더 섹션에 위의 코드를 추가하거나, [**wp_head**] 훅을 사용하여 추가할 수 있습니다. GeneratePress 테마를 사용하는 경우 Elments를 사용하여 헤더 섹션에 코드를 추가할 수 있습니다.

 

GeneratePress 테마 후크 사용하기 - 워드프레스 정보꾸러미

GeneratePress 테마는 쉽게 커스텀이 가능하도록 자체 후크를 제공합니다. 함수 파일에 GeneratePress 테마 후크를 이용하여 코드를 직접 삽입할 수 있고, GP Premium을 이용하는 경우 Element를 사용하여 수

www.thewordcracker.com

마찬가지로 이런 방법도 쉽게 무력화될 수 있습니다.

참고

https://avada.tistory.com/2897

 

엘리멘터 무료 버전 vs. 프로 버전 비교

엘리멘터(Elmentor)는 500만 개가 넘는 사이트에 설치되어 사용되고 있는 인기 워드프레스 페이지 빌더 플러그인입니다. 엘리멘터는 무료 버전과 프로 버전으로 제공됩니다. Elementor 프로 버전에서

avada.tistory.com

https://avada.tistory.com/554

 

워드프레스 아바다 테마 라이선스 (테마포레스트 테마)

아바다, 플랫섬, 엔폴드, 뉴스페이퍼 등 유료 워드프레스 테마를 처음 구입하는 사용자들이 자주 하는 질문 중 하나가 테마를 구입한 후 계속 사용이 가능한지 여부입니다. Avada 등 테마포레스테

avada.tistory.com

https://avada.tistory.com/2881

 

티스토리에서 워드프레스 이전 작업

지난 1월 3일, 티스토리 운영진은 사전 안내를 통해 서비스 내 광고 게재와 관련된 티스토리 이용약관 개정에 대해 발표했습니다. 개정된 이용약관의 요점은 티스토리 운영업체(카카오)가 서비

avada.tistory.com