Можно ли удалить это действие? (поскольку он добавлен непосредственно перед его вызовом)

В wp-signup.php есть следующие строки:

add_action( 'wp_head', 'wpmu_signup_stylesheet' ); get_header(); 

Мне нужно удалить wpmu_signup_stylesheet из действия wp_head , но я, кажется, wp_head , я предполагаю, что это происходит потому, что действие вызывается сразу после.

Вот что я пробовал из плагина:

 // Called from an action that is added with: // add_action('wp_head', array($this, 'remove_signup_style', 11)); remove_action( 'wp_head', 'wpmu_signup_stylesheet'); 

Действие действительно не так. Существует get_header() , затем действие get_header а затем поиск и загрузка файла шаблона с wp_head() в нем.

Я стараюсь не вмешиваться в удаление вещей изнутри того же самого крючка, на котором вы находитесь, поэтому в этом случае я (ab) использовал бы это действие get_header для перехвата функции, которая удалит то, чего вы не хотите, из более позднего wp_head .

Спасибо за подсказку @Rarst! Рабочий код ниже.

 //Remove the css injected into wp_head for the wp-signup.php form add_action('get_header', 'remove_wpmu_signup_styles'); function remove_wpmu_signup_styles () { remove_action('wp_head', 'wpmu_signup_stylesheet'); } 

Попробуйте добавить приоритет:

 remove_action( 'wp_head', 'wpmu_signup_stylesheet', 11 ); 

ps – это вызов add_action() действительно помещенный перед get_header() , или он помещен перед wp_head() ? Я не уверен, что это действительно важно, если wp_head() включен в header.php ; но это просто необычное место для добавления вызова add_action() .