正在读取WordPress PHP Documentation Standards, 我看不到任何地方提到如何记录函数调用,例如add_action( \'foo\', \'bar\' );
我应该记录函数调用吗?如果是,如何记录?
正在读取WordPress PHP Documentation Standards, 我看不到任何地方提到如何记录函数调用,例如add_action( \'foo\', \'bar\' );
我应该记录函数调用吗?如果是,如何记录?
您不记录函数调用,但记录函数定义。因为这个函数可以被无限次调用,对吗?因此,在调用函数时记录它们是没有意义的。
如果您记录了调用,那么可能是因为您做了一些您想稍后记住的事情,或者让其他后续开发人员知道。但通常,我会说,这不应该发生——在一个完美的世界里。
现在,钩子系统与正常调用有些不同,这可能是造成混淆的原因。但事实并非如此add_action()
它本身是有文档记录的,所以它是关于钩子和所使用的函数的。让我们看看您的示例:
add_action( \'foo\', \'bar\' );
在哪里foo
是钩子和bar
是函数。对于这一点,你可能必须像@birgire在他的回答中所展示的那样去做。我假设您知道如何记录函数,您链接了正确的文档。在这里,您还可以找到关于记录挂钩的两个部分,这显然只适用于do_action()
和apply_filters()
.
/** * Summary. * * Description. * * @since x.x.x * * @param type $var Description. * @param array $args { * Short description about this hash. * * @type type $var Description. * @type type $var Description. * } * @param type $var Description. */
/** This action is documented in path/to/filename.php */这是官方部分。
个人喜欢添加以下内容:
/**
* (Here is the official part)
*
* @hooked bar - 10
*/
do_action( \'foo\' );
我是在项目收尾时做这件事的,因为我觉得它有一定的帮助和信息。我没有想到这一点,但不要问我它来自哪里,可能来自WC。此外,我想指出,这可能不是一个好的做法。这里的模式是@hooked function_name - priority
如果有一个特殊的WordPress核心标准,那么对于此类函数调用,人们会期望在这个文件中使用它:
/wp-includes/default-filters.php
钩子之母设置调用。浏览该文件,我们发现每个函数调用最多只有一行注释:
// Slugs
add_filter( \'pre_term_slug\', \'sanitize_title\' );
某些呼叫分组在注释下:// Mime types
add_filter( \'pre_post_mime_type\', \'sanitize_mime_type\' );
add_filter( \'post_mime_type\', \'sanitize_mime_type\' );
甚至像这样:// Format text area for display.
foreach ( array( \'term_description\' ) as $filter ) {
add_filter( $filter, \'wptexturize\' );
add_filter( $filter, \'convert_chars\' );
add_filter( $filter, \'wpautop\' );
add_filter( $filter, \'shortcode_unautop\');
}
因此,我建议您做一些对您的代码有意义并有助于提高可读性的事情。我们还可以通过描述性回调来增强可读性。例如:
// BAD:
add_filter( \'the_title\', \'wpse_11\' );
// BETTER:
add_filter( \'the_title\', \'wpse_remove_blacklisted_words\' );
我已经搜索了很多关于buddypress挂钩(操作、过滤器)和函数的完整文档列表,但对提供的有限文档并不满意Buddypress.如果我想知道bp_directory_groups_search_form() 没有关于这种方法的具体细节,buddypress-hook也是如此。。。所以任何人都知道完整文档的确切位置。