Wordpress, Custom post Type дает 404, если больше 1 типа сообщения

Я знаю, что это обычная проблема.

Сначала я хочу сказать - я пытаюсь: сбросить перезапись, сбросить настройки постоянных ссылок, удалить .htacces и снова создать, используя настройки постоянных ссылок, пробовал: flush_rewrite_rules().

Проблема: пользовательский тип post_type показывает 404 при использовании настроек постоянной ссылки - /% postname% /, не работает нормально, такая же проблема связана со сборкой сообщений !. Когда я создаю один post_type - он работает, но при создании следующего - работает только последний добавленный тип сообщения, первый post_type дает 404. Вот моя функция Create post:

add_action( 'init', 'create_post_types', 0 );
function create_post_types() {

/***********************************
*
* Register post type - Svømming
*
 ***********************************/
    $labels = array(
        'name'                => _x( 'Svømming', 'Post Type General Name', TD),
        'singular_name'       => _x( 'Svømming', 'Post Type Singular Name', TD ),
        'menu_name'           => __( 'Svømming', TD ),
        'name_admin_bar'      => __( 'Svømming', TD ),
    );
    $supports = array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'revisions', 'page-attributes');
    $args = array(
        'label'               => __( 'Svømming', TD ),
        'description'         => __( 'Svømming', TD ),
        'labels'              => $labels,
        'supports'            => $supports,
        'hierarchical'        => true,
        'public'              => true,
        'show_ui'             => true,
        'show_in_menu'        => true,
        'menu_position'       => 5,
        'menu_icon'           => THEMEURL.'/img/swimming2x2.svg',
        'show_in_admin_bar'   => true,
        'show_in_nav_menus'   => true,
        'can_export'          => true,
        'has_archive'         => false,
        'exclude_from_search' => false,
        'publicly_queryable'  => true,
        'rewrite'             => array( 'slug' => '/' ),
        'capability_type'     => 'page',
    );
    register_post_type( 'svomming', $args );
/***********************************
*
* Register post type - Stup
*
 ***********************************/
    $labels = array(
        'name'                => _x( 'Stup', 'Post Type General Name', TD),
        'singular_name'       => _x( 'Stup', 'Post Type Singular Name', TD ),
        'menu_name'           => __( 'Stup', TD ),
        'name_admin_bar'      => __( 'Stup', TD ),
    );
    $supports = array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'revisions', 'page-attributes');
    $args = array(
        'label'               => __( 'Stup', TD ),
        'description'         => __( 'Stup', TD ),
        'labels'              => $labels,
        'supports'            => $supports,
        'hierarchical'        => true,
        'public'              => true,
        'show_ui'             => true,
        'show_in_menu'        => true,
        'menu_position'       => 5,
        'menu_icon'           => THEMEURL.'/img/stup.svg',
        'show_in_admin_bar'   => true,
        'show_in_nav_menus'   => true,
        'can_export'          => true,
        'has_archive'         => false,
        'exclude_from_search' => false,
        'publicly_queryable'  => true,
        'rewrite'             => array( 'slug' => '/' ),
        'capability_type'     => 'page',
    );
    register_post_type( 'stup', $args );
/* There will be 4 more post types */
    }

Эти типы сообщений должны быть иерархическими, и slug => '/' я совершенно не понимаю, почему существует эта проблема :(

Самое странное - почему работают только последние зарегистрированные сообщения и почему встроенные "сообщения" не работают


person Isu    schedule 23.10.2015    source источник


Ответы (2)


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

'rewrite' => array( 'slug' => '/' ),

У вас не может быть двух типов сообщений с одним и тем же слагом, поэтому измените имя одного из них, не забудьте обновить свои постоянные ссылки: перейдите в Настройки-> Постоянные ссылки и нажмите Сохранить изменения < / strong> внизу без изменения каких-либо настроек, это просто обновит таблицу постоянных ссылок. И это сработает ..

person Salam El-Banna    schedule 09.06.2016

Используйте другое название сообщения. Созданный вами тип сообщения не будет удален из базы данных. Так что создайте новый тип сообщения с другим именем. Выберите настройки постоянной ссылки для имени публикации

person Sindhu    schedule 23.10.2015