1
的插件,过滤器我有一个WordPress的后续过滤器插件名为“JobBoard包”重写使用WordPress
function apply_job_validate($validate){
$package = jb_package_get_current_package();
if(!$package){
jb_notice_add(esc_html__('You need to purchase a package before applying job.', 'jobboard-package'), 'error');
return true;
}
$applied = JB()->candidate->count_applied_all();
$limit = get_post_meta($package->ID, '_apply', true);
if($applied >= $limit){
jb_notice_add(esc_html__('Apply job limited, you can update your package.', 'jobboard-package'), 'error');
return true;
}
return $validate;
}
在插件的顶部被称为如下:
private function actions(){
add_action('wp_enqueue_scripts', array($this, 'add_scripts'));
add_action('admin_menu', array ($this, 'get_menu_notice') , 100);
add_action('admin_enqueue_scripts', array($this, 'add_admin_scripts'));
add_action('save_post_jobboard-post-jobs', array($this, 'save_post'));
add_filter('jobboard_query_endpoint_args', array($this, 'add_endpoint'));
add_filter('jobboard_query_endpoint_package_title', array($this, 'add_endpoint_package_title'));
add_filter('jobboard_query_endpoint_transactions_title', array($this, 'add_endpoint_transactions_title'));
add_filter('jobboard_employer_navigation_args', array($this, 'add_endpoint_menu'));
add_filter('jobboard_candidate_navigation_args', array($this, 'add_endpoint_menu'));
add_action('jobboard_endpoint_employer_new', array($this, 'get_template_add_new'), 0);
add_action('jobboard_endpoint_employer_package', array($this, 'get_template_package'));
add_action('jobboard_endpoint_candidate_package', array($this, 'get_template_package'));
add_filter('jobboard_form_handler_validate_add_job', array($this, 'add_new_job_validate'));
add_filter('jobboard_form_handler_validate_apply_job', array($this, 'apply_job_validate'));
}
我已经尝试通过functions.php禁用apply_job_validate,并且使用下面的代码及其变体没有运气的插件作为插件,真的很感谢一些帮助。
if(class_exists('JB_Package')){
//This should work in whatever case
remove_filter('jobboard_form_handler_validate_apply_job', array('JB_Package', 'apply_job_validate'));
//or Instantiating a new instance
//remove_filter('jobboard_form_handler_validate_apply_job', array(new JB_Package(), 'apply_job_validate'));
//or Targeting the specific instance, not tested
//remove_filter('jobboard_form_handler_validate_apply_job', array(JB_Package::get_instance(), 'apply_job_validate'));
}
我也试了一下,如下所示:
function remove_package() {
if (class_exists('JB_Package')) {
remove_filter('jobboard_form_handler_validate_apply_job', array('JB_Package', 'apply_job_validate'));
}
}
add_action('plugins_loaded','remove_package');
任何帮助,将不胜感激。非常感谢!
谢谢,这工作。你有任何关于如何检查课程是否被吸引的建议?我还是个新人,但明白这是更好的做事方式。 – Cozmoz
它与wp_loaded一起使用时仍然有效。 – Cozmoz
我尝试删除更多,如下所示,但它似乎并没有为其他工作https://anotepad.com/notes/csi3as – Cozmoz