Intereting Posts
«Внутренняя ошибка сервера» с wp_update_post Помощь с большой базой данных MySQL на базе WordPress для совместного хостинга Ошибка при использовании плагина QuickCache с плагином Mobile Smart? Переменная в массиве не работает Пользовательский тип сообщения (постоянная ссылка) выдает ошибку 404 Есть ли способ добавить ссылку непосредственно в этот медиа-запрос? Авторский архив только для пользовательского типа сообщения Каковы действительные сроки использования current_user_can () и связанных с ним функций? Сообщение с защитой паролем или страница – сообщение об ошибке по неверному паролю? Задача базы данных Как подключаться только к Single.php после содержимого? Создание / post_type / таксономия / термин Постоянная ссылка Структура персонализированные почтовые индексы не сохраняются Проверьте изображение в WP_Query Что говорит против использования пользовательского login.php / register.php для wordpress?

Конкретная маршрутизация для 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"