이 글에서는 WordPress의 구문 분석 기능 중 Hook의 기능과 기본 사용법을 주로 소개합니다. Hook은 WordPress에서 함수를 호출하는 중요한 사용법이자 플러그인 개발의 기초이기도 합니다. 그것이 모두에게 도움이 되기를 바랍니다.
워드프레스의 플러그인 메커니즘은 실제로 이 후크입니다. 중국어 이름은 후크로 번역되며, 이를 통해 워드프레스 코어 실행에 참여할 수 있습니다. 아래에서 자세히 알아보세요.
Hook 분류
Hook는 두 가지 유형으로 나뉘는데 하나는 액션, 다른 하나는 필터입니다. 이 두 후크의 구현 원리는 기본적으로 동일합니다. 나중에 언급하겠지만 사용법의 차이점은 필터에는 반환 값이 있지만 작업에는 없다는 점입니다.
액션의 아이디어는 이메일 보내기 등과 같은 상황이나 특별한 위치에서 일부 기능을 수행할 수 있도록 하는 것입니다. 필터를 사용하면 WordPress 코어가 사용해야 하는 값을 수정할 수 있습니다. 이 값을 사용합니다. 함수의 반환 값 등과 같은 작업을 수행합니다.
Action Hook
wp_head는 테마 개발 중에 wp_head() 함수를 head 태그에 추가하는 매우 일반적으로 사용되는 액션 후크입니다.
플러그인 개발자가 head 태그에 문장을 추가하고 싶다면 wp_head 후크를 사용할 수 있습니다. 다음은 간단한 예입니다.
//在 head 标签添加一些内容 function Bing_add_head_tag(){ echo '添加内容'; } add_action( 'wp_head', 'Bing_add_head_tag' );
코드 추가 후 프론트엔드 웹페이지의 소스코드를 확인하시면, head 태그에 저희가 추가한 내용을 보실 수 있습니다.
위는 문장만 출력하는 간단한 예시입니다. 이 후크를 사용하면 404 페이지가 나타날 때 관리자에게 이메일을 보내는 플러그인을 만들 수도 있습니다. 아래에 간단히 작성했습니다.
//遇到 404 页面给管理员发送邮件 function Bing_404_page_mail(){ if( !is_404() ) return;//如果不是 404 页面就退出函数 $to = get_option( 'admin_email' );//获取管理员地址 $subject = '遇到 404 页面啦!';//邮件标题 $message = '404 页面的地址:http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];//邮件内容 wp_mail( $to, $subject, $message );//发送邮件 } add_action( 'wp_head', 'Bing_404_page_mail' );
필터 후크
개인 경험에 따르면 필터 후크는 특히 PHP에 익숙하지 않은 사람들에게는 이해하기 어려울 수 있습니다.
필터 후크를 사용하면 항목의 값을 변경할 수 있습니다. 필터 콜백 함수는 현재 값인 매개변수를 허용합니다. 기사 콘텐츠를 호출하는 데 사용되는 the_content() 함수를 기억하세요. 이 함수는 the_content 필터를 제공합니다.
the_content 후크에 함수를 추가하세요. 이 함수는 현재 값인 매개변수를 받아야 합니다.
//文章内容全部链接新窗口打开 function Bing_autoblank( $content ){//$content 变量就是文章内容,因为其它过滤器也要过滤,所以这个内容可能是经过其它函数过滤的 $content = str_replace( '<a', '<a target="_blank"', $content );//添加 target="_blank" return $content;//必须要把过滤后的内容返回回去,否则值就丢了 } add_filter( 'the_content', 'Bing_autoblank' );
Hook 원리
실제로 add_action() 및 add_filter()를 호출할 때 $wp_filter 전역 변수에 배열 요소만 추가하고 액션 및 필터링도 언급합니다. 공용 전역 변수, 즉 필터와 작업은 동일한 이름을 가질 수 없습니다.
do_action()이 호출되면 $wp_filter 전역 변수에서 이 작업에 추가된 함수를 검색하여 루프에서 실행합니다.
apply_filters()는 do_action()보다 한 단계 더 있는데, 호출될 때마다 이 함수의 반환 값을 받고, 최종적으로 여러 번 필터링된 값을 반환하여 사용하는 것입니다.
현재 후크 목록 가져오기
WordPress 액션과 필터는 플러그인 메커니즘의 핵심 부분으로, 특정 위치에서 수행해야 하는 액션을 적극적으로 추가할 수 있도록 해줍니다. 일반적으로 add_action() 및 add_filter() 함수를 사용합니다. 기능을 탑재합니다.
이러한 Hooks는 $wp_filter 전역 변수에 저장되므로 Hook 목록을 얻으려면 $wp_filter 전역 변수를 직접 가져올 수 있습니다.
<pre class="brush:php;toolbar:false"><?php var_dump( $GLOBALS['wp_filter'] ); ?>
위 코드는 후크 목록을 인쇄합니다. ㅋㅋㅋ ord Press에서 생성 및 생성하는 데 사용됩니다. 측면 가져오기 PHP 함수 예제 설명
위 내용은 WordPress에서 후크 사용 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!