목차
제 워드프레스에 자주 찾아주시는 분께서 문의하여 찾아보게 되었습니다. 워드프레스 관리자 로그인 시 애드센스 광고 차단하는 방법입니다.
01
of 05워드프레스 관리자 로그인 시 애드센스 광고 차단
아마도 본인의 워드프레스를 볼 때 실수로 광고를 클릭하여, 애드센스 광고 게재 제한당하는 경우 때문에 문의를 하신 것 같습니다.
플러그인도 있는 것 같은데 이것 하나 때문에 플러그인을 설치하긴 조금 과한 것 같아 코드를 찾아보게 되었습니다. 코드의 작동방식은 애드센스 승인받을 때 최초로 head 부분에 삽입하는 애드센스 코드를 방문자에 따라서 삽입하거나 삽입하지 않거나 하는 방식입니다.
관리자의 경우 애드센스 코드를 삽입하지 않고, 그 외의 경우엔 애드센스 코드를 삽입하는 방식입니다.
02
of 05head 코드 삭제
애드센스 광고를 사용할때 기본적으로 삽입했던 코드를 삭제한다. 보통 <head></head> 사이에 코드를 삽입했을 것이다.
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-0000000000000000" crossorigin="anonymous">
Code language: HTML, XML (xml)위 코드를 찾아 삭제한다.
03
of 05Ad Inserter 사용 시 코드 삭제
Ad Inserter 플러그인을 사용한다면 설정의 Header에서 녹색 ON 버튼을 회색으로 OFF 한다. 코드는 삭제하지 않아도 된다.

04
of 05functions.php 파일에 코드 추가
되도록 Child Theme의 functions.php 파일에 아래의 코드를 추가한다.
/* 관리자 광고 차단 */
function insert_adsense_script_for_public_pages() {
if (is_user_logged_in() && current_user_can('manage_options')) {
return;
}
echo '<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-0000000000000000" crossorigin="anonymous"></script>';
}
add_action('wp_head', 'insert_adsense_script_for_public_pages');
Code language: PHP (php)위 코드의 내용은 관리자의 경우 사이트 접속 시 애드센스 광고를 삽입하지 않는 코드다.
① is_user_logged_in() : 현재 사용자가 로그인 되어 있고
② current_user_can(‘manage_options’) : 현재 사용자가 관리자 권한을 가지고 있고
③ return : 애드센스 코드 추가 없이 종료한다.
④ echo : 로그인한 관리자가 아니라면 애드센스 코드를 추가한다.
⑤ add_action : <head></head> 사이에 애드센스 코드를 추가한다.
05
of 05테스트 및 마무리
보통 난 마이크로소프트 엣지에서 관리자 로그인 후 글을 작성하고, 테스트는 구글 크롬을 통해서 비회원으로 테스트한다. 또한 모든 캐시를 삭제한다. 모든 테스트를 이런 식으로 진행한다.
이렇게 하는 이유는 html, JS, CSS 압축으로 사이트 속도를 높이는 대신 사이트가 정상으로 작동하는지 확인하기 위해서이다, 보통 관리자로 테스트하면 사이트가 정상으로 보이지만 비회원으로 테스트할 때 사이트가 깨지는 현상이 발생하기 때문이다. 이 때문에 적용 후 꼭 테스트는 비회원으로 진행을 해야 한다.
이런식으로 코드를 삽입 후 워드프레스 관리자 로그인 시 애드센스 광고 차단하기가 성공적으로 적용되는지 확인하면 된다.





