WordPress Shortcode in Text Widget
워드프레스의 텍스트 위젯 안에 Shortcode 사용하기
워드프레스의 텍스트 위젯은 사이드바 안에 포함되어 문자열이나 HTML 코드를 화면에 출력하는 기능을 한다.
뿐만 아니라 한줄의 설정만 해주면 텍스트나 HTML 외에 Shortcode도 포함할 수가 있어서 활용도를 한층 높일 수가 있다
텍스트 위젯에 Shortcode를 사용하려면 현재 사용하는 테마의 functions.php 파일에 다음과 같이 선언해주는 것이 전부이다
사용 중인 테마의 functions.php에 추가할 사항
add_filter('the_excerpt', 'do_shortcode'); // 요약란에 문자열 뿐만 아니라 Shortcode도 사용할 수 있게 함
add_filter('widget_text', 'do_shortcode'); // 텍스트 위젯에 문자열 뿐만 아니라 Shortcode도 사용할 수 있게 함
위와 같이 설정한 후에 플러그인 파일에 Shortcode 함수를 선언하고 텍스트 위젯이나 요약 입력란에 Shortcode를 입력하면 된다
sample_plugin.php 에 Shortcode 함수를 선언한 예
<?php ...... function shortcode_function($atts) { $data = $atts['attr1']; echo "<h3>전달된 속성은 $data 입니다</h3>"; } add_shortcode('sample_shortcode', 'shortcode_function'); ?>
위와 같이 작성된 파일을 워드프레스의 wp-content/plugins/ 폴더 안에 저장하고 관리자 패널에서 해당 플러그인을 활성화하면 Shortcode 함수를 사용할 수가 있는 상태가 된다.
위의 Shortcode 함수를 Text Widget 이나 Excerpt(요약)란에 사용하는 방법은 다음과 같이 위에 선언된 태그를 사용하여 호출하면 된다.
Excerpt, Text Widget 의 입력란에 Shortcode 태그를 사용하는 예
[sample_shortcode attr1="속성 데이터"]
이렇게 하면 요약을 사용하는 곳이나 Text Widget를 사용한 화면에서는 shortcode_function() 함수에서 echo 를 이용해 출력한 문자열이 보여진다