Intereting Posts
Отображение содержимого дочерних страниц определенного родителя на главной странице Как использовать update _ {$ meta_type} _metadata фильтр для изменения мета значения сделать титры подписи WordPress отзывчивыми Проблема с свойством объекта $ post_id Первый элемент / селектор разбитых файлов CSS Создание сайта WordPress с помощью WP-Deploy Использование команды echo добавляет нежелательные br-теги к источнику Genesis множественная категория пользовательский цикл 404s после первой страницы Разрешить доступ на странице только к определенному члену Инструмент для анализа правил перезаписи? Admin AJAX не работает на странице администрирования плагинов – даже если код скопирован дословно из WordPress Codex Пользовательская форма WordPress + PHP + MYSQL + AJAX, отправьте событие, не записанное Javascript, но данные POST в базу данных Связать страницу с конкретным шаблоном одной записи? add_filter, чтобы опубликовать галерею и удалить все | Темы для детей: отключение родителя

Конкретная маршрутизация для CPT

Я занимаюсь разработкой сайта для художественной галереи. A имеет Artist CPT (внутреннее имя artsin_artist), которое определено в моих функциях.php, например:

register_post_type('artsin_artist', array( 'labels' => $labels, 'public' => true, 'hierarchical' => false, 'supports' => array('title'), 'has_archive' => true, 'rewrite' => array('with_front' => true, 'slug' => 'artists'), 'publicly_queryable' => true, )); 

Поэтому у меня хороший рабочий архив http://artsindika.ru/artists/ и страница художника http://artsindika.ru/artists/arthur-ter-martirosov/ .

У каждого художника есть несколько работ, работы не посвящены типу post, но это простой ассоциативный массив (я использовал плагин AdvancedCustomFields Repeater для этой функции).

Теперь мне нужно иметь страницу со следующими художниками структуры URL /% artist_cpt_slug% /% work_index%.

Например, для второй работы Артура Тер-Мартиросова мне нужно иметь следующую структуру URL: / artist / arthur-ter-martirosov / 2.

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

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

 function add_artists_query_vars($aVars) { $aVars[] = "work_index"; return $aVars; } add_filter('query_vars', 'add_artists_query_vars'); function add_artists_rewrite_rule($aRules) { $aNewRules = array('artists/([^/]*)/([0-9]+)?$' => 'index.php?post_type=artsin_artist&post_name=$matches[1]&work_index=$matches[2]'); $aRules = $aNewRules + $aRules; return $aRules; } add_filter('rewrite_rules_array', 'add_artists_rewrite_rule'); 

Скажите, пожалуйста, что мне не хватает, и в каком направлении мне нужно двигаться дальше?

Solutions Collecting From Web of "Конкретная маршрутизация для CPT"