Я знаю, что он старый, но этот поток был именно тем, что мне было нужно.
Единственное предостережение для ответа numediaweb - то, что для действия удаления требуется тот же приоритет, что и для действия добавления
Хукив плагине
add_action('wp_print_styles', 'easy_fancybox_enqueue_styles', 999);
add_action('wp_enqueue_scripts', 'easy_fancybox_enqueue_scripts', 999);
add_action('wp_head', 'easy_fancybox', 999);
Код для удаления крючков
function remove_easy_fancybox() {
global $post;
$ids = array(12,34,55);
if(in_array($post->ID,$ids)):
remove_action('wp_print_styles', 'easy_fancybox_enqueue_styles', 999);
remove_action('wp_enqueue_scripts', 'easy_fancybox_enqueue_scripts',999);
remove_action('wp_head', 'easy_fancybox', 999);
wp_dequeue_script( 'jquery.fancybox' );
wp_dequeue_script( 'jquery.easing' );
wp_dequeue_script( 'jquery.mousewheel' );
wp_dequeue_script( 'jquery.metadata' );
endif;
}
add_action('wp_head', 'remove_easy_fancybox', 1);
С http://codex.wordpress.org/Function_Reference/remove_action
Важное замечание: Чтобы удалить хук, аргументы $ function_to_remove и $ priority должны совпадать при добавлении хука.Это касается как фильтров, так и действий.При сбое удаления предупреждения не выдаются.
Я включил оператор if, чтобы запускать действие только для определенных идентификаторов записей, хотя это может быть полезно.