기본 콘텐츠로 건너뛰기

Featured Post

영어회화 빨리 느는 방법 3가지

구글 블로그 복사 방지 및 특정 텍스트만 허용하는 방법(CSS활용)

How to disable copying text on blog except for specific text

 이 포스트는 CSS 코드를 이용하여 블로그 글 복사방지하는 방법과 특정 텍스트만 복사 허용하는 방법을 설명한다.

 일반적으로 블로거들이 무단 복사방지를 위해서 자바스크립트로 텍스트 선택을 못하게 하거나 마우스 우클릭을 방지한다. 하지만 이 방법에는 몇 가지 문제점이 있다. 소스 코드 또는 특정 텍스트를 공유하기 위한 글인 경우 소스 코드마저도 복사를 막아 방문자의 인내심을 시험하게 한다. 희소성 있는 정보가 아닌 이상 방문자들은 1초의 망설임도 없이 다른 블로그를 찾아 떠날 것이고 다시 방문하는 일은 없을 것이다. 다른 문제로는 자바스크립트 복사방지는 해제하기 쉬워 쉽게 무력화될 뿐 아니라, 심지어 인터넷에 "블로그 복사방지 해제"라고 검색하면 관련 글 수십 개 정도는 쉽게 접할 수 있다.




CSS코드로 블로그 복사방지 및 특정 텍스트만 복사 허용하는 방법

 아래와 같은 절차로 포스트 내용 중에 방문자에게 공유하고 싶은 것만 공유하고 나머지는 복사방지 설정할 수 있다.
1. 블로거 로그인 > 블로그 좌측 메뉴에 테마 > 맞춤설정 > 고급 > CSS 추가 선택한다.

2. 아래 코드를 복사해서 붙여 넣는다.
/*--Disable copying Text but not Specific Text with CSS Code--*/
.post blockquote {
-webkit-user-select: text !important;
-moz-user-select: text !important;
-ms-user-select: text !important;
user-select: text !important;
}
body {
-webkit-user-select: none !important;
-moz-user-select: -moz-none !important;
-ms-user-select: none !important;
user-select: none !important;
}

3. 저장하면 모든 셋팅은 완료된다.

4. 블로그 글을 작성할 때 <blockquote> 복사 가능한 텍스트 </blockquote>와 같이 입력하면 해당 텍스트는 아래와 같이 선택 및 복사가 가능하다.
복사 가능한 텍스트
※주의사항
 만약 위 코드를 복사했는데 올바르게 동작하지 않는다면, 현재 사용하는 템플릿이 다른 CSS class를 사용하고 있는 것이기 때문에 .post blockquote를 .post-body blockquote으로 바꿔 입력해야 한다. 또한 당연히 이전에 입력한 자바스크립트 복사방지 코드가 있다면 삭제해야 한다. 자바스크립트가 글 전체를 복사방지하고 있기 때문에 공유하려는 텍스트도 복사방지된다.



CSS코드로 텍스트 전부 복사 방지하는 방법

 공유하는 텍스트 없이 전부 복사방지하고 싶다면 아래 코드만 CSS에 복사해서 붙여넣기만 하면 된다.
/*--Disable copying Text with CSS Code--*/
body {
-webkit-user-select: none !important;
-moz-user-select: -moz-none !important;
-ms-user-select: none !important;
user-select: none !important;
}

자바스크립트로 블로그 텍스트 복사 방지하는 방법

 위 CSS 코드를 입력했다면 필요 없지만 자바스크립트로 복사 방지하는 방법도 있다는 것을 참고한다.
<!--Disabe Copy Paste--- TB-->
<script language="JavaScript1.2">
function disableselect(e){
return false
}
function reEnable(){
return true
}
document.onselectstart=new Function (&quot;return false&quot;)
if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</script>


 자바스크립트보다는 CSS 코드를 사용하는 것을 추천하고 싶다. CSS 코드는 자바스크립트보다 로딩 시간이 더 빠르며 자바스크립트는 상대적으로 더 시간이 걸리기 때문에 자바스크립트를 많이 사용한 블로그는 더 느릴 것이다. 그리고 블로그 글을 무단 복사하는 도둑들은 자바스크립트로 복사방지가 돼있는 블로그 포스트를 브라우저 옵션에서 단순히 자바스크립트 코드를 비활성화 시키고 쉽게 복사해 간다.

 코드상으로 복사방지를 한다고 해도 모든 경우의 수를 막을 수 있는 것은 아니다. 저작권법 책임을 묻거나 여러 가지 방법과 도구가 있지만, 우선이 되어야 하는 것은 사람과 사람 간의 도리와 예의가 되어야 되지 않을까 생각한다.

댓글

이 블로그의 인기 게시물

스티브 잡스 명언 영어 세상에서 가장 감명 깊은 어록 25가지

"Sometimes Life is going to hit you in the head with a brick. Don't lose faith." "때때로 인생은 당신을 심하게 내두를 것이다. 스스로의 믿음을 잃지 마라."   대부분의 사람들은 적당히 즐기고, 적당히 게으르고, 어렵고 힘든 것은 피하고 싶어 한다. 그들이 무지함과 가난에서 벗어나지 못한 것이 그 이유이다. 반대로 큰 성공을 이룬 후에도 스티브잡스는 "내일 죽는다면"이라는 생각으로 극단적 이리만큼 스스로를 동기부여했다. 무엇인가 이룰 수 있는 사람은 그럴만한 자세가 있다.   스티브 잡스가 남긴 어록 중에 사람들이 가장 감명받은 25가지를 선별해 한글로 번역했다. 스티브 잡스 명언 영어  1  "The people who are crazy enough to think they can change the world are the ones who do." 세상을 바꿀수 있다고 생각하는 제대로 정신나간 사람들이 세상을 변화시킨다.  2  "I've always been attracted to the more revolutionary changes. I don't know why. Because they're harder. They're much more stressful emotionally. And you usually go through a period where everybody tells you that you’ve completely failed." 나는 항상 혁신적인 변화를 쫓아왔다. 그건 더 어려웠기 때문인지 모른다. 혁신은 감정적으로 굉장히 압박이 심하다. 그리고 모든사람들이 당신에게 완벽히 실패했다고 이야기 하는 시기를 이겨내야 한다.  3  "It's really hard to design products b

영어 8품사의 문장 구조를 예제로 쉽게 이해하자

1. 영어 8품사 정리  영어 8품사(The 8 parts of speech)란 명사, 대명사, 동사, 형용사, 부사, 전치사, 접속사, 감탄사 를 말하며, 동일한 의미나 기능을 하는 낱말들을 8가지로 분류한 것이다. ① 명사(NOUN) - 사물의 이름으로 사람, 장소, 생물/무생물, 추상적 개념 등 생각해 낼 수 있는 모든 것의 이름이다. 영어에서 명사는 셀 수 있는 명사와 셀 수 없는 명사로 나뉘는데, 셀 수 있는 명사는 단수, 복수에 따라 낱말이 달라지는데, 대게 단어 뒤에 "(e)s"가 붙는다. - 셀 수 있는 명사 ex) book → books, pen → pens, dog → dogs, table → tables, party → parties, woman → women ... - 셀 수 없는 명사 ex) coffee, computer, love, water, family, money, information ... ② 대명사(PRONOUN) - 문장에서 명사 대신 사용한다. 대화나 글에서 사람, 사물 등을 '그녀', '저것'등으로 대신 쓰는 것을 대명사라고 한다. ex) I, you, he, she, it, that, none ... ③ 동사(VERB) - 사람, 사물의 동작이나 상태를 나타내는 품사로 문장에서 필수로 들어간다. 현재시제 3인칭 단수면 동사 뒤에 대게 '(e)s'가 붙는데, 3인칭 단수란 I, You, We를 제외한 다른 인물이나 사물이다. 복수가 아닌 단수를 말하고 현재시제는 미래나 과거가 아닌 현재를 말한다. 또한, 표현하려는 문장이 과거면 동사 뒤에 대게 (e)d가 붙는다. - 현재시제 ex) agree, stay, find, ask, eat, access ... - 3인칭 단수 ex) agrees, stays, finds, asks, eats, accesses ... - 과거시제 ex) agreed, stayed, foun

가산명사 불가산명사를 예제로 쉽게 이해하자

What are the singular and plural noun?  개수를 셀 수 있는 사물을 가산명사라고 하고, 개수를 셀 수 없는 사물을 불가산명사라고 한다. 영어에서는 셀 수 있고 없고에 따라 분류하며, 명사와 동사의 형태가 달라지고 상황에 따라서 한정사도 다르게 사용해야 한다. 한국인, 일본인 등을 포함한 한자문화권에서는 이 부분을 따지지 않는 데 영어는 이걸 굉장히 철저하게 따지며 셀 수 있나 없나에 따라 문법적인 요소가 굉장히 갈리기 때문에 영어를 배울 때 상당히 난항을 겪는 부분이다. TOEIC 등 영어 시험에서도 단골 파트 영역을 차지하고 있다. 예를 들어, 'water'는 셀 수 없지만 물병에 담겨 있는 'a bottle of water'는 셀 수 있는 가산명사이다. 하지만 실제 영어 회화에서는 Native Speaker가 편의상 '2 water'라고 쓰는 경우도 있다. 이를 틀렸다고 말할 수는 없지만 영어 학습지나 시험과 같은 공식적인 영어에서는 삼가야 한다. 아래 링크를 클릭하면 가산명사와 불가산명사에 대한 더 많은 단어를 다뤄서 참고하기 좋다. https://koonhous.tistory.com/entry/countable-and-uncountable-noun 1 가산명사(셀 수 있는 명사)  1개, 2개, 3개 이런 식으로 셀 수 있다는 걸 말하는데 한글이나 영어나 셀 수 있는 종류에는 많은 차이가 없기에 큰 문제가 되지는 않는다. 가산명사가 훨씬 더 많아서 불가산명사 빼고 다 가산명사라고 생각해도 무방하다. 영어권 원어민 강사들은 사고방식으로 이를 간단하게 구분하는 방법은 대상을 반으로 잘라보면 된다. 그다음 대상이 가진 기능이나 모양이 망가진다면 가산 명사이며, 그 기능이나 모양이 망가지지 않거나 나누기 애매한 것이라면 불가산 명사라고 보면 된다. 가산명사에만 단수·복수의 구분이 있고 단수일 때는 반드시 부정관사(a/an)와 같은 한정사(the, my, this)가 필요