php - 在 PHP 中运行一个动作函数的一个特定动作
问题描述
背景:
在我的 WordPress 主题中,我有以下操作函数,它们合并了几个钩子,例如,几个函数合并为:
'single_job_listing_meta_start'
public static function template_tags() {
add_action( 'single_job_listing_start', array( __CLASS__, 'single_job_listing_start' ), 10 );
add_action( 'listify_single_job_listing_meta', array( __CLASS__, 'enqueue_scripts' ) );
add_action( 'listify_single_job_listing_meta', array( __CLASS__, 'single_job_listing_meta' ) );
add_action( 'single_job_listing_meta_start', array( __CLASS__, 'the_secondary_image' ), 7 );
add_action( 'single_job_listing_meta_start', 'listify_the_listing_title', 10 );
add_action( 'single_job_listing_meta_start', 'listify_the_listing_location', 20 );
add_action( 'single_job_listing_meta_start', 'listify_the_listing_category', 30 );
add_action( 'single_job_listing_meta_after', 'listify_the_listing_rating' );
add_action( 'listify_single_job_listing_actions', array( __CLASS__, 'the_actions' ) );
add_action( 'listify_single_job_listing_actions_after', array( __CLASS__, 'submit_review_link' ) );
add_action( 'listify_single_job_listing_cover_end', array( __CLASS__, 'cover_gallery' ) );
}
期望的结果
但是,我实际上需要它背后的更精细的功能,即
array( __CLASS__, 'the_secondary_image' )
'listify_the_listing_title'
'listify_the_listing_location'
'listify_the_listing_category'
'listify_the_listing_rating'
解决方案尝试
通过尝试,我能够执行上述最后 4 个钩子,只需通过例如
<?php listify_the_listing_rating(); ?>
但是,我有两个问题:
鉴于这些都被挂钩(合并)到
'single_job_listing_meta_start'
,有没有办法调用这个(合并的)动作并只执行一个特定的挂钩?如果是,例如代码将如何?虽然我能够通过 2-5 执行上述钩子函数
<?php listify_the_listing_rating(); ?>
,但我将如何执行第一个钩子array( __CLASS__, 'the_secondary_image'
?我试过<?php array( __CLASS__, 'the_secondary_image') ?>
了,没有用。
解决方案
我能够使用以下内容执行辅助图像代码:
Listify_WP_Job_Manager_Template_Single_Listing::the_secondary_image();
我相信它指的是模板文件(代码的第一部分),然后是函数(第二部分)。
推荐阅读
- apache-spark - Spark vs Hadoop 这个简单的例子?
- arrays - 在 React Native 中显示嵌套对象数组中的所有数据
- c - 如何使用正确提供的 argc、argv、envp 从 NASM 调用用 C 编写的链接可执行文件中的主函数
- apache-spark - 由于节点故障和源数据更改,从初始源一直重新计算 Spark 分区
- scala - 数组列中的Scala DataFrame过滤器值
- c++ - 为什么这是一个常量字符,而不是正常字符?
- sql - 如何在单列中使用多个值进行 sql 透视
- angular - 连接两个组件之间的元素引用
- python - 为什么工人停止在游泳池内工作?
- python - DataFrame 行为异常?