<?php echo "<h2>高级教程add_action动作和add_filter()过滤器</h2><br/>"; //1.学会使用add_action()方法添加一个动作钩子 //定义一个shuohua 的函数 function shuohua(){ echo "说话<br/>"; } function zoulu(){ echo "走路<br/>"; } //挂载shuohua这个函数到huangcong这个动作钩子上 add_action('huangcong','shuohua'); add_action('huangcong','zoulu'); //2.学会使用do_action()方法运行动作钩子 //运行huangcong这个动作,把所有挂载在这个动作上的函数都执行一遍 do_action('huangcong'); //3.学会使用wp内置的动作钩子 //见插件he.php //wp_footer() //wp-include/general-template.php //4.学会使用add_filter()方法添加一个过滤器钩子,与add_action()相同 //定义一个zhuijia函数 function zhuijia($text){ echo $text . ".......<br>"; } function zhuijia1($text){ echo $text . "!!!!!!<br>"; } //挂载zhuijia这个函数到shuchu这个过滤器钩子上,与add_action()相同 add_filter('shuchu','zhuijia'); add_filter('shuchu','zhuijia1'); //创建一个shuchu过滤器,传递要过滤的字符串; apply_filters('shuchu','黄小聪'); //与do_action()的区别是有返回结果,而do_action()只是执行,而没有返回结果,所以add_action()挂载的函数中,尽量有echo,这样就可以在do_action()后看到结果 add_action('sc','zhuijia'); add_action('sc','zhuijia1'); do_action('sc','黄鼠狼'); //5.学会使用wp内置的过滤器钩子 //见插件he.php //the_content(); //wp-include/post-template.php
he.php
<?php /** * @package ceshi * @version 1.0 */ /* Plugin Name: huangcongceshi Plugin URI: http://www.baidu.com Description: 这就是一个测试插件 Author: zst Version: 1.0 Author URI: www.cnblog.com/zst062102 */ function hit_top(){ echo "<div><a href='#'>TOP</a></div>"; } //挂载hit_top函数到wp_footer这个动作钩子上 add_action('wp_footer','hit_top'); function xianshi($content){ return "黄聪说:" . $content; } //挂载xianshi函数到the_content这个过滤器钩子上 add_filter('the_content','xianshi');