워드프레스에서 상당히 편리하게 사용하는 플러그인들의 숏코드, 하지만 그 플러그인을 더 이상 활용하지 않는 경우 머리 아픈 일이 발생하게 됩니다.
요즘 들어 페이지 빌더가 워드프레스로 웹사이트 제작 시에 기본적으로 활용되는 추세인 점을 감안하면 앞으로도 숏코드 문제가 제법 발생할 듯 합니다.
이미 이렇게 문제가 되는 숏코드를 삭제하는 방법에 대한 글을 포스팅을 하였습니다.
이번에는 숏코드를 삭제하는 것이 아닌 감추는 방법에 대해 설명을 해보겠습니다.
Divi 빌더를 삭제하면 노출되는 숏코드 들은 [et_pb….로 시작을 합니다.
이렇게 시작되는 코드를 공백으로 치환을 해주는 방식입니다.
/* Remove Divi shortcodes */
add_filter('the_content', 'remove_shortcodes_divi');
function remove_shortcodes_divi( $content ) {
$content = preg_replace('/\[\/?et_pb.*?\]/', '', $content);
return $content;
}
위와 같은 코드는 테마의 functions.php에 추가를 해주면 됩니다.
그럼 노출되던 Divi 빌더 관련 숏코드들은 더 이상 보이지 않습니다.
웹사이트 방문자에게는 Divi 빌더 관련 숏코드가 보이지 않습니다만 페이지나 글을 편집하기 위해 열어보면 위와 같이 숏코드는 그대로 남아 있습니다.
즉 functions.php에 추가한 코드가 위 이미지의 긴 [et_pb…]로 시작하는 코드들을 모두 공백 하나로 변경을 해준다고 할 수 있습니다.
만약 Divi 빌더 관련 숏코드가 아닌 다른 플러그인의 숏코드라면 위의 코드를 응용해서 추가를 해주면 됩니다.
/* Remove related shortcodes */
add_filter('the_content', 'related_remove_shortcodes');
function related_remove_shortcodes( $content ) {
$content = preg_replace('/\[\/?custom-related-posts title.*?\]/', '', $content);
return $content;
}
위 코드는 [custon-related-post..] 숏코드를 활용하는 연관 글 플러그인 입니다.
이렇게 숏코드에 맞게 변경을 해주면 됩니다.
워드프레스 숏코드를 숨기는 방법은
이 방법은 방문자들에게만 보이지 않게 하는 방법으로 숏코드는 그대로 DB에 남아있게 됩니다.
어찌보면 눈속임이라고 할 수 있습니다.
일단 급한대로 이 방식으로 숏코드 문제를 해결한 이후 직접 모두 숏코드를 제거하는 수고(?)를 하는 것이 좋습니다.
만약 DB에 쌓인 내용이 많다면 숏코드 크리너 플러그인의 유료버전을 구입해서 DB에서 한번에 삭제하는 것을 추천합니다.
위의 코드들은 꼭 차일드 테마의 functions.php에 추가를 하기를 추천합니다.
이용하고 있는 테마의 차일드 테마는 검색을 하면 쉽게 얻을 수 있을 것입니다.
그리고 혹시라도 테마를 변경하게 되면 위 코드들은 다시 functions.php에 추가를 해줘야 합니다.