WordPress插件API/Action Reference中文版文档

一、在典型请求期间运行的操作

当登录用户在版本 3.3.1 中打开主页时调用这些操作。这个列表可能只显示每个动作第一次被调用的时候,在很多情况下,没有函数与动作挂钩。主题和插件可以导致在请求期间多次和在不同时间调用操作。

作为证明,您可以在此列表中看到特定于21主题的操作调用。当用户访问站点时,Cron 任务也可能会触发,从而增加额外的操作调用。此列表应被视为 WordPress 操作执行顺序的指南或近似值,而不是具体规范。

使用函数do_action()调用操作,但标记为 (ref array) 的操作除外,它们使用函数do_action_ref_array()调用。

函数备注
muplugins_loaded加载必须使用的插件后。
注册分类法:registered_taxonomy对于类别、post_tag等。
注册后类型:registered_post_type用于帖子、页面等。
plugins_loaded在活动插件之后和可插拔功能加载之前。
sanitize_comment_cookies当评论 cookie 被清理时。
设置主题:setup_theme在主题加载之前。
加载文本域:load_textdomain对于默认域
after_setup_theme一般用于初始化主题设置/选项。这是themes 可用第一个动作挂钩,在加载活动主题的functions.php文件后立即触发。add_theme_support()应该在这里调用,因为init动作钩子来不及添加一些功能。在此阶段,当前用户尚未通过身份验证。
auth_cookie_malformed
auth_cookie_valid
设置当前用户:set_current_user
初始化:init通常由插件用于初始化。此时当前用户已通过身份验证。
└─ widgets_init用于注册侧边栏。在 ‘init’ 优先级为 1 时触发(因此在优先级 ≥ 1 的 ‘init’ 操作之前!)
注册边栏:register_sidebar对于每个侧边栏和页脚区域
wp_register_sidebar_widget对于每个小部件
wp_default_scripts(参考数组)
wp_default_styles(参考数组)
admin_bar_init
add_admin_bar_menus
wp_loadedWordPress 完全加载后
解析请求:parse_request允许操作 HTTP 请求处理(引用数组)
发送标题:send_headers允许自定义 HTTP 标头(参考数组)
解析查询:parse_query设置查询变量后(参考数组)
pre_get_posts在执行查询之前公开查询变量对象。(参考数组)
帖子选择:posts_selection由缓存插件使用。
wpWP 对象设置后(参考数组)
模板重定向:template_redirect在确定加载哪个模板之前。
get_header在加载头模板文件之前。
wp_enqueue_scripts当脚本和样式入队时。
2011_enqueue_color_scheme(具体到二十一点)
wp_head用于在前端打印头标签中的脚本或数据。
wp_print_styles在 $handles 队列中的样式被打印之前。
wp_print_scripts在 $handles 队列中的脚本被打印之前。
get_search_form
循环开始:loop_start(参考数组)
the_post(ref array) 允许在查询后立即修改 post 对象
get_template_part_content内容的模板部分
循环结束:loop_end(参考数组)
获取侧边栏:get_sidebar在加载侧边栏模板文件之前。
动态侧边栏:dynamic_sidebar在调用小部件的显示回调之前。
get_search_form
pre_get_comments(参考数组)
wp_meta在侧边栏中显示回显内容之前。
get_footer在加载页脚模板文件之前。
获取侧边栏:get_sidebar在加载侧边栏模板文件之前。
211_credits(具体到二十一点)
wp_footer在确定加载哪个模板之前。
wp_print_footer_scripts打印页脚脚本时。
admin_bar_menu(参考数组)
wp_before_admin_bar_render在呈现管理栏之前。
wp_after_admin_bar_render管理栏呈现后。
关机:shutdown在 PHP 执行即将结束之前。

二、在管理页面请求期间运行的操作

当登录用户打开版本 3.3.1 中的帖子页面时,将运行这些操作。此列表仅显示第一次调用操作的时间,并且在许多情况下没有函数与该操作挂钩。每个管理页面都有不同的操作列表,具体取决于页面的用途和安装的插件。此列表应被视为指导方针或近似值,而不是具体的规范。

在这些操作中,(hookname)取决于页面。对于 Posts 页面是edit.php,或者对于主题的 Background 页面是Appearance_page_custom-background。

使用函数do_action()调用操作,但标记为 (ref array) 的操作除外,它们使用函数do_action_ref_array()调用。

函数备注
muplugins_loaded加载必须使用的插件后
注册分类法:registered_taxonomy对于类别、post_tag等。
注册后类型:registered_post_type用于帖子、页面等。
plugins_loaded加载活动插件和可插拔功能后
sanitize_comment_cookies
设置主题:setup_theme
加载文本域:load_textdomain对于域默认
after_setup_theme在此阶段,当前用户尚未通过身份验证。
加载文本域:load_textdomain对于域21
auth_cookie_valid
设置当前用户:set_current_user
初始化:init通常由插件用于初始化。此时当前用户已通过身份验证。
└─ widgets_init用于注册侧边栏。这是在 ‘init’ 时触发的,优先级为 1。
注册边栏:register_sidebar对于每个侧边栏
wp_register_sidebar_widget对于每个小部件
wp_default_scripts(参考数组)
wp_default_styles(参考数组)
admin_bar_init
add_admin_bar_menus
wp_loadedWordPress 完全加载后
auth_cookie_valid
auth_redirect
_admin_menu另请参阅:_user_admin_menu、_network_admin_menu
管理菜单:admin_menu另请参阅:user_admin_menu、network_admin_menu
admin_init
当前_屏幕:current_screen
加载-(页面):load-(page)
发送标题:send_headers可以添加自定义 HTTP 标头的位置
pre_get_posts在执行查询之前公开查询变量对象。(参考数组)
帖子选择:posts_selection
wpWP 对象设置后(参考数组)
admin_xml_ns
admin_xml_ns
admin_enqueue_scripts
admin_print_styles-(钩子名称)
admin_print_styles
admin_print_scripts-(钩子名)
admin_print_scripts
wp_print_scripts
admin_head-(钩子名)
admin_head
管理菜单:admin_menu
in_admin_header
admin_notices
all_admin_notices
(钩子名):(hookname)
限制管理帖子:restrict_manage_posts
the_post(参考数组)
pre_user_query(参考数组)
in_admin_footer
admin_footer
admin_bar_menu(参考数组)
wp_before_admin_bar_render
wp_after_admin_bar_render
admin_print_footer_scripts
admin_footer-(钩子名)管理页面页脚
关机:shutdownPHP执行即将结束
wp_dashboard_setup允许自定义管理仪表板

三、帖子、页面、附件和类别操作(管理员)

  • post_submitbox_misc_actions:在生成编辑页面以将一些内容(例如字段)添加到提交框(显示发布按钮的位置)时运行。没有函数参数。
  • 添加附件:category_add_form_fields:在首次将附加文件添加到数据库时运行。操作函数参数:附件 ID。
  • 添加类别:category_edit_form:与create_category相同。
  • category_add_form_fields:在 admin 中对类别添加表单进行验证时运行。在提交按钮之前在此表单中添加字段很有用
  • category_edit_form:在管理员中创建类别编辑表单时运行。用于向此表单添加新字段
  • clean_post_cache:在清理后缓存时运行。动作函数参数:帖子 ID。请参阅clean_post_cache()。
  • 创建类别:create_category:在创建新类别时运行。动作函数参数:类别 ID。
  • 删除附件:delete_attachment:在从数据库中删除附加文件之前运行。操作函数参数:附件 ID。(在 2.8 版本之前,这个钩子是在附件被删除后触发的。)
  • 删除类别:delete_category:在从数据库中删除一个类别并更新其相应的链接/帖子以删除该类别后运行。动作函数参数:类别 ID。
  • wp_trash_post:在帖子或页面即将被删除时运行。操作函数参数:帖子或页面 ID。
  • 垃圾邮件:trashed_post:在帖子或页面被删除后运行。操作函数参数:帖子或页面 ID。
  • untrash_post:当帖子或页面恢复时,在取消删除之前运行。操作函数参数:帖子或页面 ID。
  • untrashed_post:当帖子或页面恢复时,在取消删除后运行。操作函数参数:帖子或页面 ID。
  • before_delete_post:在帖子或页面即将被删除时运行。评论、附件和元数据仍然可用。操作函数参数:帖子或页面 ID。
  • 删除帖子:delete_post:在帖子或页面即将被删除时运行。评论、附件和元数据已被删除。操作函数参数:帖子或页面 ID。
  • 删除的帖子:deleted_post:在帖子或页面被删除后运行。操作函数参数:帖子或页面 ID。
  • 编辑附件:edit_attachment:当附加文件被编辑/更新到数据库时运行。操作函数参数:附件 ID。
  • 编辑类别:edit_category:在更新/编辑类别时运行,包括添加/删除帖子或博客链接或更新其类别(这会导致类别计数更新)。动作函数参数:类别 ID。
  • 编辑帖子:edit_post:在更新/编辑帖子或页面时运行,包括添加或更新评论(这会导致帖子的评论计数更新)。操作函数参数:帖子或页面 ID。
  • pre_post_update:在帖子或页面更新之前运行。操作函数参数:帖子或页面 ID。
  • 更新后:post_updated:在帖子或页面更新后运行。动作函数参数:帖子或页面ID,更新前和更新后帖子的WP_Post对象。
  • transition_post_status:在发生任何后状态转换时运行。动作函数参数:$new_status、$old_status、$post对象。(另请参阅发布状态转换。)
  • (旧状态)to(新状态):(old status)to(new status):当帖子的状态从$old_status更改为$new_status 时运行。动作函数参数:$post对象。(另请参阅发布状态转换。)
  • (状态)(post_type):(status)(post_type):当$post_type类型的帖子从任何其他状态转换为$status时运行。动作函数参数:post ID, $post object。(另请参阅发布状态转换。)
  • publish_post(不推荐使用):在帖子发布时运行,或者在帖子被编辑并且其状态更改为“已发布”时运行。这个动作钩子符合(status)(post_type)动作钩子类型。动作函数参数:post ID, $post object。(另请参阅发布状态转换。)
  • 发布页面:publish_page:在发布页面时运行,或者在页面被编辑并且其状态更改为“已发布”时运行。这个动作钩子符合(status)(post_type)动作钩子类型。动作函数参数:post ID, $post object。(另请参阅发布状态转换。)
  • 发布电话:publish_phone:在通过电子邮件添加帖子后立即运行。动作函数参数:帖子 ID。
  • 发布未来发布:publish_future_post:在发布未来的帖子或页面时运行。动作函数参数:帖子 ID。
  • 保存_post:save_post:每当创建或更新帖子或页面时运行,这可能来自导入、帖子/页面编辑表单、xmlrpc 或通过电子邮件发布。动作函数参数:帖子 ID 和帖子对象。在数据保存到数据库后运行。请注意,帖子 ID 可能会引用帖子修订版,而不是最后保存的帖子。使用wp_is_post_revision()获取真实帖子的 ID。
  • 更新_postmeta:updated_postmeta:在元数据更新时运行。
  • wp_insert_post:与save_post相同,之后立即运行。
  • xmlrpc_publish_post:在通过 XMLRPC 请求发布帖子时运行,或者通过 XMLRPC 对其进行编辑并且其状态为“已发布”时运行。动作函数参数:帖子 ID。

四、分类和术语

  • create_term:在创建新术语之后、清除术语缓存之前运行。
  • created_term:在创建新术语和清除术语缓存后运行。
  • 创建$分类法:create$taxonomy:在为特定分类法创建新术语后运行。
  • created_$分类法:created_$taxonomy:在创建特定分类法中的新术语后运行,并在清除术语缓存后运行。
  • add_term_relationship(从 2.9.0 版开始):在添加对象-术语关系之前运行。
  • added_term_relationship(从 2.9.0 版开始):在添加对象-术语关系后运行。
  • set_object_terms(从 2.8.0 版开始):在设置对象的条款后运行。
  • edit_terms(从 2.9.0 版开始):在编辑给定术语之前运行。
  • edited_terms:在数据库中保存分类法/类别更改后运行。
  • edit_term_taxonomy:在术语-分类关系更新之前运行。
  • edited_term_taxonomy:在术语-分类关系更新后运行。
  • edit_term_taxonomies(从 2.9.0 版开始):在要删除的子项重新分配父项之前运行。
  • edited_term_taxonomies(从 2.9.0 版开始):在要删除的子项重新分配父项之后运行。
  • 编辑$分类法:edit$taxonomy:在针对特定分类法编辑术语后运行。
  • 编辑$分类法:edited$taxonomy:在编辑特定分类法中的术语后运行,并在清除术语缓存后运行。
  • pre_delete_term(从 4.1.0 版本开始):在对帖子或条款进行任何修改之前运行。
  • delete_term_taxonomy(从 2.9.0 版开始):在从数据库中删除术语分类 ID 之前运行(在更改儿童术语之后)。
  • Deleted_term_taxonomy(从 2.9.0 版开始):在删除术语分类 ID 后运行。
  • delete_term(自 2.5.0 版起):在从数据库中删除术语并清除缓存后运行。(参数:$Term_ID、$Term_taxonomy_ID、$Taxonomy_slug、$already_deleted_term)
  • delete_$taxonomy(从 2.3.0 版开始):在删除特定分类法中的术语后运行。(参数:$Term_ID、$Term_taxonomy_ID、$already_deleted_term)
  • 删除$分类法:deleted$taxonomy:在删除特定分类法中的术语后运行,并在清除术语缓存后运行。
  • delete_term_relationships(从 2.9.0 版开始):在删除对象-术语关系之前运行。
  • Deleted_term_relationships(从 2.9.0 版开始):在删除对象-术语关系后运行。
  • clean_object_term_cache(从 2.5.0 版开始):在清除对象术语缓存后运行。
  • clean_term_cache(从 2.5.0 版开始):在清除每个分类法的术语缓存后运行。
  • split_shared_term (从 4.2.0 版本开始):在先前共享的分类术语拆分为两个单独的术语之后运行。
  • pre_term_description:在将分类术语的描述保存到数据库之前运行。
  • pre_category_description:在将类别的描述保存到数据库之前运行。

五、评论、Ping 和引用操作

  • 评论关闭:comment_closed:在尝试显示评论条目表单时将帖子标记为不允许评论时运行。动作函数参数:帖子 ID。
  • comment_id_not_found:在尝试显示评论或评论输入表单时未找到帖子 ID 时运行。动作函数参数:帖子 ID。
  • comment_flood_trigger:在检测到评论泛滥时运行,就在wp_die被调用以阻止评论被接受之前。动作函数参数:上次评论的时间,当前评论的时间。
  • 评论(旧状态)_to(新状态):comment_(old status)to(new status):在发生注释状态转换时运行。动作函数参数:评论对象。
  • 评论草稿:comment_on_draft:当帖子是草稿同时尝试显示评论条目表单或评论时运行。动作函数参数:帖子 ID。
  • 评论帖子:comment_post:在评论保存到数据库后立即运行。操作函数参数:评论 ID、批准状态(“垃圾邮件”或 0/1 表示不批准/批准)。
  • 编辑评论:edit_comment:在数据库中更新/编辑评论后运行。动作函数参数:评论 ID。
  • 删除评论:delete_comment:在从数据库中删除评论之前立即触发。动作函数参数:评论 ID。
  • 删除评论:deleted_comment:从数据库中删除评论后立即触发。动作函数参数:评论 ID。
  • 垃圾评论:trash_comment:在评论发送到垃圾箱之前立即触发。动作函数参数:评论 ID。
  • 垃圾评论:trashed_comment:将评论发送到垃圾箱后立即触发。动作函数参数:评论 ID。
  • untrash_comment:在评论从垃圾箱中恢复之前立即触发。动作函数参数:评论 ID。
  • untrashed_comment:从垃圾箱中恢复评论后​​立即触发。动作函数参数:评论 ID。
  • spam_comment:在评论被标记为垃圾邮件之前立即触发。动作函数参数:评论 ID。
  • spammed_comment:在评论被标记为垃圾邮件后立即触发。动作函数参数:评论 ID。
  • unspam_comment:在评论被取消标记为垃圾邮件之前立即触发。动作函数参数:评论 ID。
  • unspamed_comment:在评论被取消标记为垃圾邮件后立即触发。动作函数参数:评论 ID。
  • pingback_post:在将 ping 添加到帖子时运行。动作函数参数:评论ID。
  • 预ping:pre_ping:在完全处理 ping 之前运行。动作函数参数:要处理的帖子链接数组,以及帖子的“pung”设置。
  • trackback_post:当引用添加到帖子时运行。动作函数参数:评论ID。
  • wp_blacklist_check:运行以检查是否应将评论列入黑名单。操作函数参数:作者姓名、作者电子邮件、作者 URL、评论文本、作者 IP 地址、作者的用户代理(浏览器)。您的函数可以执行wp_die来拒绝评论,或者修改输入参数之一,使其包含在 WordPress 选项中设置的黑名单关键字之一。
  • wp_insert_comment:每当创建评论时运行。
  • wp_set_comment_status:当评论状态改变时运行。操作函数参数:评论 ID、指示新状态的状态字符串(“删除”、“批准”、“垃圾邮件”、“保留”)。

六、博客活动

  • 添加链接:add_link:在首次将新 blogroll 链接添加到数据库时运行。操作函数参数:链接 ID。
  • 删除链接:delete_link:在删除 blogroll 链接时运行。操作函数参数:链接 ID。
  • 编辑链接:edit_link:在编辑 blogroll 链接时运行。操作函数参数:链接 ID。

七、提要操作

  • atom_entry:在为 atom 提要中的每个博客条目打印条目信息之后(但在关闭条目标记之前)运行。
  • atom_head:在博客信息被打印到一个原子提要之后,就在第一个条目之前运行。
  • atom_ns:在原子提要的根 XML 元素内运行(以添加命名空间)。
  • commentrss2_item:在评论提要中打印单个评论信息后(但在关闭项目标签之前)运行。动作函数参数:评论 ID,帖子 ID。
  • do_feed_(feed):在生成提要时运行,其中提要是提要的类型(rss2、atom、rdf等)。在打印馈送之前使用小于 10 的优先级运行。动作函数参数:true(提要用于评论)或false(用于帖子)。
  • rdf_header:在博客信息打印在 RDF 提要中之后运行,就在第一个条目之前。
  • rdf_item:在为 RDF 提要中的每个博客条目打印条目信息之后(但在关闭项目标记之前)运行。
  • rdf_ns:在 RDF 提要中的根 XML 元素内运行(以添加名称空间)。
  • rss_head:在 RSS 提要中打印博客信息之后,就在第一个条目之前运行。
  • rss_item:在为 RSS 源中的每个博客条目打印条目信息之后(但在关闭项目标记之前)运行。
  • rss2_head:在 RSS 2 提要中打印博客信息之后,就在第一个条目之前运行。
  • rss2_item:在为 RSS 2 提要中的每个博客条目打印条目信息之后(但在关闭项目标记之前)运行。
  • rss2_ns:在 RSS 2 提要中的根 XML 元素内运行(以添加命名空间)。

八、模板操作

  • after_setup_theme:在主题初始化期间运行。通常用于执行主题的基本设置、注册和初始化操作。
  • 评论表格:comment_form:在comment_form()呈现的评论表单的底部运行,就在结束 之前。动作函数参数:帖子 ID。
  • comment_form_after:在comment_form()呈现评论表单之后运行,紧跟在关闭 之后。
  • do_robots:当模板文件选择器确定它是 robots.txt 请求时运行。
  • do_robotstxt:在do_robots()函数中运行,然后打印出 robots.txt 文件的禁止列表。
  • get_footer:当模板调用get_footer()函数时运行,就在footer.php模板文件加载之前。
  • get_header:当模板调用get_header()函数时运行,就在加载header.php模板文件之前。
  • 切换主题:switch_theme:在更改博客主题时运行。动作函数参数:新主题的名称。如果在主题中使用,它仅在添加动作的主题是被禁用的主题时才有效。
  • after_switch_theme:在更改博客主题时运行。动作函数参数:新主题的名称。如果在主题中使用,则仅当添加动作的主题是启用的主题时才有效。可用于在启用主题时运行某些代码。
  • 加载-themes.php:在主题激活或停用时运行(由其他主题替换)。
  • 模板重定向:template_redirect:在确定用于显示请求页面的模板文件之前运行。
  • wp_footer:当模板调用wp_footer()函数时运行,通常在博客页面的底部附近。
  • wp_head:当模板调用wp_head()函数时运行。这个钩子通常放置在和之间的页面模板顶部附近。这个钩子不带任何参数。
  • wp_meta:当sidebar.php模板文件调用wp_meta()函数时运行,以允许插件将内容插入侧边栏。
  • wp_print_scripts:在 WordPress 将注册的 JavaScript 脚本打印到页眉之前运行。

九、行政行为

  • activate_(插件文件名):activate_(plugin file name):在插件首次激活时运行。请参阅Function_Reference/register_activation_hook。
  • 活动框结束:activity_box_end:在管理仪表板屏幕上的活动框末尾运行。
  • add_category_form_pre:在将添加类别表单放在管理菜单的屏幕上之前运行。
  • add_option_(option_name):在add_option()函数添加 WordPress 选项后运行。动作函数参数:选项名称、选项值。您必须为要响应的特定选项添加操作,例如在添加选项“foo”时响应“add_option_foo”。
  • 添加选项:add_option:在将选项添加到数据库之前运行。
  • 添加选项:add_option:添加选项后运行。
  • admin_head:在管理面板的 HTML 部分运行。
  • admin_head-(page_hook)或admin_head-(plugin_page):在特定管理页面的 HTML 部分或插件生成页面的管理面板中运行。
  • admin_init:在呈现页面之前在每个管理页面的开头运行。请参阅wp-admin/admin.php、wp-admin/admin-post.php和wp-admin/admin-ajax.php。
  • admin_footer-(plugin_page):在插件生成页面的管理面板的部分的末尾运行。
  • admin_post_(动作):admin_post_(action):另外:admin_post_nopriv_(action) – 为未指定的 GET 或 POST 请求运行处理程序。
  • admin_footer:在 body 标签内的管理面板末尾运行
  • admin_enqueue_scripts:在 HTML 标头中运行,因此插件或主题可以将 JavaScript 和 CSS 排入所有管理页面。
  • admin_print_scripts:在 HTML 标头中运行,因此插件可以将 JavaScript 脚本添加到所有管理页面。
  • admin_print_scripts-(page_hook) 或 admin_print_scripts-(plugin_page):运行以在特定插件生成的管理页面的 HTML 标题部分打印 JavaScript 脚本。当使用任何将插件菜单项添加到管理菜单的函数时返回 (page_hook):add_management_page()、add_options_page() 等。示例:函数 myplugin_menu() { 如果(function_exists(’add_management_page’)){ $page = add_management_page( ‘myplugin’, ‘myplugin’, ‘manage_options’, ‘myplugin_slug’, ‘myplugin_admin_page’ ); add_action( “admin_print_scripts-$page”, ‘myplugin_admin_head’ ); } }
  • admin_print_styles:在 HTML 标题中运行,因此插件可以将 CSS/样式表添加到所有管理页面。
  • admin_print_styles-(page_hook) 或 admin_print_style-(plugin_page):在特定管理页面的样式应与wp_enqueue_style()一起排队时运行。使用诸如add_submenu_page()之类的函数的返回值来确定(page_hook)的值。
  • check_passwords:创建新用户时运行以验证密码的重复输入。动作函数参数:登录名数组、第一个密码、第二个密码。
  • dbx_page_advanced:在管理菜单中页面编辑屏幕上“高级”部分的底部运行。
  • dbx_page_sidebar:在管理菜单中页面编辑屏幕的侧边栏底部运行。
  • dbx_post_advanced:在管理菜单的帖子编辑屏幕上的“高级”部分底部运行。
  • dbx_post_sidebar:在管理菜单中帖子编辑屏幕的侧边栏底部运行。在 WordPress 2.5 及更高版本中使用add_meta_box()。
  • 停用(插件文件名):deactivate(plugin file name):当插件被停用时运行。
  • delete_option_(option_name):在 WordPress 选项被delete_option()函数删除后运行。动作函数参数:选项名称。您必须为要响应的特定选项添加一个操作,例如 ‘delete_option_foo’ 在选项“foo”已被删除时进行响应。
  • 删除选项:delete_option:在从数据库中删除选项之前运行。
  • 删除选项:deleted_option:在删除选项后运行。
  • 删除用户:delete_user:在删除用户时运行。操作函数参数:用户 ID。
  • edit_category_form:在添加/编辑类别表单放在屏幕上之后运行(但在 HTML 表单标记结束之前)。
  • edit_category_form_pre:在将编辑类别表单放在管理菜单的屏幕上之前运行。
  • edit_tag_form:在添加/编辑标签表单放在屏幕上之后运行(但在 HTML 表单标签结束之前)。
  • edit_tag_form_pre:在将编辑标签表单放在管理菜单的屏幕上之前运行。
  • edit_form_top:在 WordPress 帖子编辑屏幕(和自定义帖子类型)上的标题之前的表单内运行,但在初始隐藏字段(user_ID、操作等)之后运行。
  • edit_form_after_title:在 WordPress 帖子编辑屏幕(和自定义帖子类型)上的标题之后但在内置 WordPress 内容区域之前运行。
  • edit_form_after_editor:在 WordPress 帖子编辑器之后但在所有其他元框之前运行。也可用于自定义帖子类型。
  • edit_form_advanced:在管理菜单中帖子编辑表单的“高级”部分之前运行。
  • edit_page_form:在管理菜单中页面编辑表单的“高级”部分之前运行。
  • edit_user_profile:在管理菜单中用户配置文件编辑屏幕的末尾附近运行。
  • 加载-(页面):load-(page):在加载管理菜单页面时运行。通常不会直接添加此操作——有关如何添加管理菜单的更多详细信息,请参阅添加管理菜单。如果您确实想直接使用它,add_options_page()和类似函数的返回值会为您提供操作名称的“(page)”部分。
  • 登录表单:login_form:在登录表单结束之前运行。
  • 登录头:login_head:在登录页面的 HTML 头部部分结束之前运行。
  • 丢失密码:lost_password:在登录屏幕上打印“通过电子邮件检索密码”表单之前运行。
  • 丢失密码form:lostpassword_form:在用于通过电子邮件检索用户密码的表单末尾运行,以允许插件提供额外的字段。
  • 丢失密码_post:lostpassword_post:当用户请求电子邮件消息以检索其密码时运行,以允许插件在处理之前修改 PHP $_POST变量。
  • manage_link_custom_column:当 blogroll 管理管理屏幕的列名未知时运行。操作函数参数:列名、链接 ID。另请参阅插件 API/过滤器参考中的过滤器manage_link_columns,它添加了自定义列。
  • manage_posts_custom_column:当管理帖子管理屏幕的列名称未知时运行。操作函数参数:列名、帖子 ID。另请参阅插件 API/过滤器参考中的过滤器manage_posts_columns,它添加了自定义列。(有关示例和使用,请参阅Scompt 的教程。)
  • manage_pages_custom_column:当管理页面管理屏幕的列名称未知时运行。操作函数参数:列名、页面 ID。另请参阅插件 API/过滤器参考中的过滤器manage_pages_columns,它添加了自定义列。
  • manage_media_custom_column:当管理媒体管理屏幕的列名称未知时运行。操作函数参数:列名、页面 ID。另请参阅插件 API/过滤器参考中的过滤器manage_media_columns,它添加了自定义列。
  • manage{$post_type}posts_custom_column:当管理自定义帖子类型管理屏幕的列名称未知时运行。操作函数参数:列名、帖子 ID。另请参阅插件 API/过滤器参考中的过滤器manage${post_type}posts_columns,它为自定义帖子类型添加了自定义列。
  • 密码重置:password_reset:在用户密码重置为随机新密码之前运行。
  • 个人选项更新:personal_options_update:当用户从管理屏幕更新个人选项时运行。
  • plugins_loaded:在加载所有插件后运行。
  • profile_personal_options:在用户配置文件编辑屏幕的“个人选项”部分的末尾运行。
  • profile_update:在用户的配置文件更新时运行。动作函数参数:用户 ID。
  • quick_edit_custom_box:在创建快速编辑器时存在未知列名时运行。
  • 注册表格:register_form:在新用户注册表结束之前运行。
  • 注册_post:register_post:在处理新用户注册请求之前运行。
  • 限制管理帖子:restrict_manage_posts:在将要编辑的帖子列表放在管理菜单的屏幕上之前运行。
  • 找回密码:retrieve_password:在检索到用户密码时运行,向他们发送提醒电子邮件。动作函数参数:登录名。
  • 设置当前用户:set_current_user:在用户被默认wp_set_current_user()函数更改后运行。请注意,wp_set_current_user()也是一个“可插入”函数,这意味着插件可以覆盖它;请参阅插件 API)。
  • show_user_profile:在用户配置文件编辑屏幕接近尾声时运行。
  • sidebar_admin_page:在小部件管理页面上的主要内容之后运行。
  • sidebar_admin_setup:在编辑侧边栏中显示的小部件时提前运行。
  • simple_edit_form:在管理菜单中的“简单”后期编辑表单的末尾运行(默认情况下,简单表单仅用于书签——它没有“高级”部分)。
  • update_option(option_name):在 WordPress 选项被update_option()函数更新后运行。动作函数参数:旧选项值,新选项值。您必须为要响应的特定选项添加操作,例如“update_option_foo”以在选项“foo”更新时进行响应。
  • 更新选项:update_option:在选项更新到数据库之前运行。
  • 更新选项:updated_option:在选项更新后运行。
  • 上传文件(标签):upload_files(tab):运行以在上传文件管理屏幕上打印屏幕;“tab”是自定义操作选项卡的名称。使用wp_upload_tabs过滤器定义自定义选项卡(请参阅插件 API/过滤器参考)。
  • user_new_form:在“添加新”用户屏幕接近尾声时运行。操作函数参数:在多站点上传递字符串“add-existing-user”或在单站点和网络管理员上传递字符串“add-new-user”。
  • user_profile_update_errors:在更新的用户详细信息提交到数据库之前运行。
  • wpmu_new_user:在多站点环境中首次创建用户配置文件时运行。动作函数参数:用户 ID。如果不在多站点中,则使用 user_register。
  • 用户注册:user_register:在首次创建用户配置文件时运行。动作函数参数:用户 ID。
  • 欢迎面板:welcome_panel:允许您隐藏仪表板中的欢迎面板。这也是一个智能过滤器,它隐藏了相关的屏幕选项。
  • wp_ajax_(动作):wp_ajax_(action):还有: wp_ajax_nopriv_(action) – 运行以执行未知类型的 AJAX 请求处理程序。
  • wp_authenticate:运行以在用户登录时对其进行身份验证。操作函数参数:包含用户名和密码的数组。
  • wp_login:在用户登录时运行。
  • wp_logout:在用户注销时运行。

十、仪表板“现在”小部件操作

  • right_now_content_table_end:在 Right Now Dashboard 小部件的内容列底部添加表格行。
  • right_now_table_end:在 Right Now Dashboard 小部件的讨论列中显示垃圾评论数量后调用。
  • right_now_discussion_table_end:在显示垃圾评论的数量和Right Now Dashboard 小部件的讨论列中的right_now_table_end操作之后调用。
  • 现在就结束:right_now_end:在 Right Now Dashboardwidget 上显示当前版本信息后调用。(注意:在 v3.4 中,这实际上是 rightnow_end。请参阅票证#21046。)
  • 活动框结束:activity_box_end:在 Right Now Dashboard 小部件上调用的最后一个操作。

十一、高级操作

本部分包含与 WordPress 用于确定要显示的帖子、WordPress 循环、激活插件和其他基本级 WordPress 代码的查询相关的操作。

  • 激活插件:activated_plugin:任何插件成功激活时随时运行
  • add_meta_boxes:在“编辑帖子”页面加载时运行。( 3.0+ )
  • 管理菜单:admin_menu:在基本管理面板菜单结构到位后运行。
  • network_admin_notices:在管理菜单打印到网络管理屏幕后运行。
  • user_admin_notices:在管理菜单打印到用户管理屏幕后运行。
  • admin_notices:在将管理菜单打印到非网络或用户管理屏幕的屏幕后运行。
  • all_admin_notices:在管理菜单打印到所有屏幕后运行。
  • blog_privacy_selector:在屏幕上打印默认博客隐私选项后运行。
  • check_admin_referer:在出于安全目的检查随机数后,在默认的check_admin_referrer()函数中运行,以允许插件出于额外的安全原因强制 WordPress关闭。请注意,check_admin_referrer也是一个“可插入”函数,这意味着插件可以覆盖它;请参阅插件 API)。
  • check_ajax_referer:在用户的登录名和密码通过 cookie 成功验证后,在默认的check_ajax_referer()函数(当 AJAX 请求转到wp-admin/admin-ajax.php脚本时调用)中运行,以允许插件强制 WordPress为了额外的安全原因而死。请注意,check_ajax_referer也是一个“可插入”函数,这意味着插件可以覆盖它;请参阅插件 API)。
  • custom_controls_enqueue_scripts:在调用customize_controls_init之后的WP Theme Customizer之后触发,它的动作/回调被执行,并且它自己的样式和脚本入队,所以你可以使用这个钩子为WP Theme Customizer注册你自己的脚本和样式。用于主题自定义 API(从版本 3.4 开始)。
  • custom_register:在每个请求上运行,允许开发人员注册新的主题选项和控件以用于主题自定义 API(从版本 3.4 开始)。
  • custom_preview_init:仅允许您直接在主题定制器中排队资产(例如 javascript 文件)。用于主题自定义 API(从版本 3.4 开始)。
  • 已停用插件:deactivated_plugin:在任何插件成功停用时随时运行
  • generate_rewrite_rules:在生成重写规则后运行。动作函数参数:WP_Rewrite对象($wp_rewrite)通过引用。请注意,使用rewrite_rules_array过滤器代替此操作更容易修改重写规则。
  • 初始化:init:在 WordPress 完成加载之后但在发送任何标头之前运行。用于拦截 $_GET 或 $_POST 触发器。
  • 循环结束:loop_end:在处理完 WordPress 循环的最后一篇文章后运行。
  • 循环开始:loop_start:在处理 WordPress 循环的第一篇文章之前运行。
  • network_admin_menu:在为网络管理页面准备好基本菜单结构时运行。(管理菜单)
  • 解析查询:parse_query:在主查询或WP_Query 的任何实例(例如query_posts、get_posts或get_children )中的查询解析结束时运行。动作函数参数:WP_Query对象的引用。
  • 解析请求:parse_request:在 WordPress 主函数wp内解析查询请求后运行。动作函数参数:WP对象($wp)通过引用。
  • pre_get_posts:在主查询或WP_Query 的任何实例中执行查询之前运行,例如query_posts()、get_posts()或get_children()。这个钩子在创建查询变量对象之后调用,但在查询实际运行之前调用,可用于在运行之前更改主查询。另见is_main_query()。动作函数参数:WP_Query对象的引用。
  • sanitize_comment_cookies:在从 HTTP 请求中读取 cookie 后运行。
  • 发送标题:send_headers:在主要 WordPress 函数wp()内发送基本 HTTP 标头后运行。动作函数参数:WP对象($wp)通过引用。
  • 关机:shutdown:在页面输出完成时运行。
  • update(meta_type)meta:在保存元数据时运行。
  • 更新(元类型)元:updated(meta_type)_meta:在元数据更新时运行。
  • upgrader_process_complete:当插件下载器/升级器类完成运行时运行
  • wp_loaded:一旦WP、所有插件和主题完全加载和实例化,这个钩子就会被触发。
  • wp:在查询被解析并加载后执行,但在任何模板执行之前,在主 WordPress 函数wp()内执行。如果您需要访问发布数据但不能使用模板进行输出,则很有用。动作函数参数:WP对象($wp)通过引用。

十二、管理员登录操作

本部分包含 WordPress 管理员登录页面用于处理显示、身份验证、注册、重置密码、忘记密码和其他用户处理的操作。

  • 登录初始化:login_init:当登录表单初始化时触发。
  • login_form_(动作):login_form_(action):在指定的登录表单操作之前触发。
  • login_enqueue_scripts:将登录页面的脚本和样式排入队列。
  • 登录头:login_head:脚本入队后在登录页面标题中触发。
  • 登录标题:login_header:在打开 body 标签后在登录页面标题中触发。
  • 登录表单:login_form:在登录表单中的“密码”字段之后触发。
  • 丢失密码_post:lostpassword_post:在从密码重置请求返回错误之前触发。
  • admin_email_confirm:在管理员电子邮件确认表单之前触发。
  • admin_email_confirm_form:在隐藏字段之前的 admin-email-confirm-form 表单标签内触发。
  • 丢失密码:lost_password:在丢失密码表单之前触发。
  • 丢失密码_form:lostpassword_form:在 lostpassword 表单标签内触发,在隐藏字段之前。
  • validate_password_reset:在验证密码重置过程之前触发。
  • resetpass_form:在用户密码重置表单中的“强度指示器”仪表之后触发。
  • 注册表格:resetpass_form:在用户注册表单中的“电子邮件”字段之后触发。
  • user_request_action_confirmed:当用户确认帐户操作时触发操作挂钩。
  • 登录页脚:login_footer:在登录页面页脚中触发。

发表评论