액션과 훅
1. 훅(Hooks)
훅은 특정 시점에 코드를 실행할 수 있는 워드프레스의 강력한 기능입니다. 훅은 크게 액션과 필터로 나뉩니다.
- 액션(Action): 특정 이벤트가 발생할 때 실행되는 함수를 정의합니다. 예를 들어, 게시물이 저장될 때 추가 작업을 수행할 수 있습니다.
- 필터(Filter): 데이터를 데이터베이스에 저장하거나 브라우저에 출력하기 전에 수정할 수 있습니다.
2. 액션(Action)
액션은 특정 이벤트가 발생할 때 실행할 함수를 정의합니다. 예를 들어, 플러그인이 활성화될 때, 테마가 로드될 때, 게시물이 저장될 때 등의 이벤트가 있을 수 있습니다.
액션 훅 사용 방법
-
액션 훅 추가
-
add_action()
함수를 사용하여 특정 이벤트에 함수를 추가합니다.
function my_custom_function() { // 실행할 코드 echo "This is my custom function!"; } add_action('wp_footer', 'my_custom_function');
-
-
액션 훅 제거
-
remove_action()
함수를 사용하여 특정 이벤트에서 함수를 제거할 수 있습니다.
remove_action('wp_footer', 'my_custom_function');
-
주요 액션 훅
-
init
: 워드프레스가 초기화될 때 실행됩니다.add_action('init', 'my_init_function'); function my_init_function() { // 초기화 작업 }
-
wp_enqueue_scripts
: 스크립트와 스타일을 큐에 추가할 때 사용됩니다.add_action('wp_enqueue_scripts', 'my_enqueue_scripts'); function my_enqueue_scripts() { wp_enqueue_style('my-style', get_stylesheet_uri()); wp_enqueue_script('my-script', get_template_directory_uri() . '/js/my-script.js', array(), false, true); }
-
save_post
: 게시물이 저장될 때 실행됩니다.add_action('save_post', 'my_save_post_function'); function my_save_post_function($post_id) { // 게시물 저장 작업 }
3. 필터(Filter)
필터는 데이터가 데이터베이스에 저장되기 전이나 브라우저에 출력되기 전에 데이터를 수정할 수 있게 합니다.
필터 훅 사용 방법
-
필터 훅 추가
-
add_filter()
함수를 사용하여 특정 데이터에 함수를 추가합니다.
function my_custom_title($title) { return 'Prefix - ' . $title; } add_filter('the_title', 'my_custom_title');
-
-
필터 훅 제거
-
remove_filter()
함수를 사용하여 특정 데이터에서 함수를 제거할 수 있습니다.
remove_filter('the_title', 'my_custom_title');
-
주요 필터 훅
-
the_content
: 게시물의 콘텐츠를 출력하기 전에 데이터를 수정합니다.add_filter('the_content', 'my_custom_content'); function my_custom_content($content) { return $content . '<p>Custom content added at the end.</p>'; }
-
the_title
: 게시물의 제목을 출력하기 전에 데이터를 수정합니다.add_filter('the_title', 'my_custom_title'); function my_custom_title($title) { return 'Prefix - ' . $title; }
-
wp_nav_menu_items
: 네비게이션 메뉴 항목을 출력하기 전에 데이터를 수정합니다.add_filter('wp_nav_menu_items', 'my_custom_menu_items', 10, 2); function my_custom_menu_items($items, $args) { return $items . '<li><a href="#">Custom Link</a></li>'; }
요약
워드프레스의 훅과 액션은 테마나 플러그인 개발 시 특정 이벤트에 맞춰 코드를 실행하거나 데이터를 수정할 수 있게 합니다. add_action()
과 add_filter()
함수를 사용하여 원하는 기능을 추가하고, remove_action()
과 remove_filter()
함수를 사용하여 불필요한 기능을 제거할 수 있습니다.
Q1: 워드프레스에서 사용자 정의 포스트 타입을 추가할 때 사용하는 주요 액션 훅은 무엇인가요?
Q2: 워드프레스에서 특정 조건에 따라 관리자 메뉴를 수정하려면 어떤 액션 훅을 사용해야 하나요?
Q3: 워드프레스에서 게시물 메타 데이터를 저장하거나 업데이트할 때 사용하는 필터 훅은 무엇인가요?
You wanna more detailed information?
No Comments