WP: пользовательский тип записи, переписать URL, давая 404 - PullRequest
1 голос
/ 14 августа 2010

Я регистрирую пользовательский тип записи следующим образом:

register_post_type('agent_info', array(
                'labels' => array('name' => __('Agents'), 
                           'singular_name' => __('Agent'),
                           'add_new_item' => __('Add New Agent'),
                           'edit_item' => __('Edit Agent'),
                     ),
                    'public' => true,
            '_builtin' => false,
            'query_var' => true,
            'rewrite' => array('slug' => 'agents', 'with_front' => false),
                    'show_ui' => true,
                    'supports' => array('title')
            ));

и когда я пытаюсь получить доступ к агенту с помощью '/ agents / agent-name-slug', я получаю ошибку 404, но я изменяю агентов на agent_info, все работает нормально. Чего мне не хватает, чтобы переписать материал, чтобы он работал правильно?

1 Ответ

5 голосов
/ 18 августа 2010

Две вещи, которые нужно проверить: вы подключаете регистрацию типа почты к init? и вы очищаете правила перезаписи каждый раз, когда меняете слаг перезаписи?

Если вы не цепляетесь за init, вам следует.

Чтобы сбросить правила перезаписи, просто перейдите на страницу настроек постоянных ссылок. Вам даже не нужно нажимать сохранить. Он перепишет правила, как только вы перейдете туда.

Кроме того, я не знаю, понимаете ли вы это, но это не даст вам представление списка ваших типов сообщений. Чтобы включить это, вы должны добавить это также в свою ловушку инициализации:

add_rewrite_rule( 'agents/?$', 'index.php?post_type=agent_info', 'top' );

После добавления этого кода вернитесь на страницу настроек постоянных ссылок.

...