Запускать действие плагина после действия темы (init, пользовательские таксономии) - PullRequest
0 голосов
/ 01 июня 2019

Я работаю над разработкой плагина WordPress для добавления метаполей в таксономии.Он добавляет их в категории и теги, но не в пользовательские таксономии, зарегистрированные по темам.Кажется, действие плагина выполняется до действия темы, которое регистрирует таксономии.

Я попытался установить более высокий или низкий приоритет для плагина по сравнению с темой, не сработало.

В классе плагина:

add_action( 'init', [ $this, 'registerTaxonomies' ], 1000 );
//...
public function registerTaxonomies() {

    $taxonomies = get_taxonomies( [
        'public'       => true,
        'show_in_menu' => true,
    ], 'objects' );
    foreach ( $taxonomies as $taxonomy ) {
        add_action( $taxonomy->name . '_add_form_fields', [ $this, 'taxonomyAdd' ], 100, 2 );
        add_action( $taxonomy->name . '_edit_form_fields', [ $this, 'taxonomyEdit' ], 100, 2 );
        add_action( 'created_' . $taxonomy->name, [ $this, 'taxonomySave' ], 100, 2 );
        add_action( 'edited_' . $taxonomy->name, [ $this, 'taxonomyUpdate' ], 100, 2 );
        add_filter( 'manage_edit-' . $taxonomy->name . '_columns', [ $this, 'taxonomyColumns' ] );
        add_filter( 'manage_' . $taxonomy->name . '_custom_column', [
            $this,
            'taxonomyColumnContent'
        ], 100, 3 );
    }

}

В теме functions.php:

add_action( 'init', 'rehabtheme_register_post_types', 10 );
add_action( 'init', 'rehabtheme_register_post_types', 10 );

Результатом является то, что для пользовательских таксономий код, присоединенный к действию init, не выполняется, я не получаю пользовательские мета-поля, введенные вформы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...