WordPress как на ладони
Очень Удобный и Быстрый Хостинг для сайтов на WordPress. Пользуюсь сам и вам рекомендую!

Проблема с taxonomy!

Зарегал таксу, чтобы было древовидно:

'rewrite' => array( 'hierarchical' => true, 'with_front' => true )

Все работает, открывается нужный терм (sub-term1), пример url = https://side.com/my-tax/term1/sub-term1/.

query_vars на parse_request:

[my-tax] => term1/sub-term1

Но если произвольно изменить url на - https://side.com/my-tax/bla/bla/sub-term1/ и т.д, то все равно отрывается страница терма - sub-term1, хотя должен отдать 404, так как родителей bla - нету.

query_vars на parse_request:

[my-tax] => bla/bla/sub-term1

К примеру дочерние страницы из коробки если в url добавить левое - отдадут 404,

[name] => 
[page] => page1/bla/bla/sub-page1

А так норм:

[name] => 
[page] => page1/sub-page1

Пермалинки сбрасывал! Помогите ((

Заметки к вопросу:
Amira 4.5 лет назад

Можно конечно разбить URL на parse_request, проверить есть-ли термы через get_term_by. Но хотелось бы увидеть другое решение..

Kama 4 года назад

По идее ВП такое редиректить на норм URL должен. У тебя случаем redirect_canonical хук не отключен?

0
Amira
4.5 лет назад 5
  • 0

    Тип таксономии задается отдельным параметром 'hierarchical' => true функции register_taxonomy(), а не в параметре rewrite. (в рерайте он нужен, чтобы в адрес добавлялся слаг родительского термина)

    Amira 4.5 лет назад

    Отдельным параметром hierarchical тоже есть. А так в адресе мне нужен родитель, чтобы был вложенный URL.

    Andrew 4.5 лет назад

    в sql запросах указывается term_id этого термина, поэтому неудивительно, что система игнорирует подстановку.

    Amira 4.5 лет назад

    вообщем жду других ответов

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация