Структура кастомных постов и таксономий
Как правильно формировать в вордпрессе подобную структуру?
/developers - список разработчиков с пагинацией
/developers/javascript - список разработчиков, которые выводятся по таксономии javascript
/developers/tomaz-zaman - страница разработчика
Я нашел только такое решение, неужели более рационального варианта в вордпрессе нет?
function generate_taxonomy_rewrite_rules( $wp_rewrite ) { $rules = array(); $post_types = get_post_types( array( 'name' => 'developer', 'public' => true, '_builtin' => false ), 'objects' ); $taxonomies = get_taxonomies( array( 'name' => 'developer_tag', 'public' => true, '_builtin' => false ), 'objects' ); foreach ( $post_types as $post_type ) { $post_type_name = $post_type->name; // 'developer' $post_type_slug = $post_type->rewrite['slug']; // 'developers' foreach ( $taxonomies as $taxonomy ) { if ( $taxonomy->object_type[0] == $post_type_name ) { $terms = get_categories( array( 'type' => $post_type_name, 'taxonomy' => $taxonomy->name, 'hide_empty' => 0 ) ); foreach ( $terms as $term ) { $rules[$post_type_slug . '/' . $term->slug . '/?$'] = 'index.php?' . $term->taxonomy . '=' . $term->slug; } } } } $wp_rewrite->rules = $rules + $wp_rewrite->rules; } add_action('generate_rewrite_rules', 'generate_taxonomy_rewrite_rules');
developers - это может быть тип записей с включенным отображением архивов записей.
тогда таксономию можно сделать например category_developers и указать в качестве slug developers.
А для типа записей developers указать другой slug.
Вроде тогда конфликтов по части урл не должно быть.
Таким образом? Если да, то увы не работает
так
и обновить настройки чпу
Извиняюсь, а что это вообще меняет и каким образом решает проблему?
/event/one/ пост
/event/ архивы
/events/tag/ тег
/events/ страница не найдена
'has_archive' => true
поменяйте на'has_archive' => 'events'
и снова обновите чпуБлагодарю, сейчас попробую. Также хотел уточнить, а такой код, я имею ввиду, который переписывает правила ссылок, его можно использовать для высокопосещаемового сайта? Или эта функция не сильно нагружает сайт
а как в новых таксиномиях кастомного раздела сделать свой slug? у меня раздел Каталог авто и подразделы (таксономиями) хендай, рено... Нужен адрес catalog/hunday/this-post-title