你应该看看owWordPress Plugin Api 作品
添加筛选器时,挂接到该筛选器的函数将从函数接收参数:apply_filters
.
此函数至少传递一个参数,但可以传递更多参数,并且始终显示返回的值。
所以如果你能写
add_filter( \'walker_nav_menu_start_el\', \'description_in_nav_el\', 10, 4 );
是因为代码中的某个地方有一行类似于:
$output .= apply_filters( \'walker_nav_menu_start_el\', $item_output, $item, $depth, $args );
因此,可以使用的参数通过
apply_filters
它们是在包含该行的函数中生成的。
当你想了解更多关于钩子的知识时,首先要看的地方是Codex,然而并不是所有的钩子都能在那里找到,在这种情况下,最好的地方是lookcode.
我认为您使用软件来编写代码,而且该软件很可能在文件夹中的所有文件中都有搜索功能,所以一旦您知道要搜索什么:
应用过滤器(\'walker\\u nav\\u menu\\u start\\u el\'
你自己试试,你会找到文件的/wp-includes/nav-menu-template.php
at line 169 只包含我上面发布的行,在方法内部start_el
班级的Walker_Nav_Menu
.
如果您熟悉并使用任何Unix,那么使用起来当然会更轻松grep
, 但在这种情况下,你已经知道了