• Решено ☭Gu

    (@gusoft)


    Тахо разрегистриваю так

    function gu_unreg_taxo(){
        register_taxonomy('post_tag', array());
        register_taxonomy('category', array());
    }
    Add_Action('init', 'gu_unreg_taxo');

    а удалить как (обратное Register_Taxonomy есть что-то)?

    и как удалить записи типа post (не сами записи, а тип — обратное Register_Post_Type)?

Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    В WordPress 4.5 (выйдет в середине апреля) добавлены unregister_post_type() и unregister_taxonomy(), но они пока не поддерживают удаление встроенных типов и таксономий.

    Я бы не советовал удалять штатные типы без особой необходимости, это приводит к ошибкам в некоторых местах. Проще скрыть ненужные пункты в меню.

    Однако если очень хочется, можно без труда найти пример 🙂

    Автор ☭Gu

    (@gusoft)

    круто, работает, спасибо.

    // Remove taxo
    
    function gu_unreg_taxo(){
        global $wp_taxonomies;
        register_taxonomy('post_tag', array()); register_taxonomy('category', array());
        unregister_taxonomy_for_object_type('post_tag','post'); unregister_taxonomy_for_object_type('category','post');
        if ( isset( $wp_taxonomies[ 'post_tag' ] ) ) unset( $wp_taxonomies[ 'post_tag' ] );
        if ( isset( $wp_taxonomies[ 'category' ] ) ) unset( $wp_taxonomies[ 'category' ] );
    }
    Add_Action('init', 'gu_unreg_taxo', $Gu_Wp_Order + 1);
    
    // Remove post type
    
    if ( ! function_exists( 'unregister_post_type' ) ) :
    function unregister_post_type() {
        global $wp_post_types;
        if ( isset( $wp_post_types[ 'post' ] ) ) { unset( $wp_post_types[ 'post' ] ); return true; } return false; }
    endif;
    add_action('init', 'unregister_post_type', $Gu_Wp_Order + 1 );
Просмотр 2 ответов — с 1 по 2 (всего 2)

Тема «как удалить стандартные типы записей и таксономий» закрыта для новых ответов.