Таксономия: почему 'with_front' => false НЕ РАБОТАЕТ?

10

Серьезно, почему 'with_front' => falseне работает так, как должно быть? Предполагается удалить имя базы TAXONOMY, и мой вопрос, почему он не работает?

Я просто не хочу, чтобы базовый слаг таксономии появлялся в моем URL, а кодекс говорит, что 'with_front' =>false должно помочь, но это не так. Если оставить слизень пустым, то 'slug'=> ''получится ошибка 404.

register_taxonomy("tax_categories", array("products"), array(
    "hierarchical" => true,
    "label" => "Categories",
    "singular_label" => "Category",
    "show_ui" => true,
    'update_count_callback' => '_update_post_term_count',
    "rewrite" => array(     
        'with_front' => false,      
        'hierarchical' => true      
        )
    ));

Эта проблема должна быть решена http://core.trac.wordpress.org/ticket/16807

Пожалуйста, помогите понять это. Спасибо.

Alex
источник
3
Попробуйте перейти в настройки -> постоянные ссылки и нажмите кнопку «Сохранить» или сбросьте правила перезаписи.
Вик
2
Как сказал Мэнни, with_frontэто не удалить имя таксономии базы. Я предполагаю, что вы хотите преобразовать формат ссылки из /tax-categories/banana/в /banana/? Был вопрос об этом (это довольно сложно), но я не могу найти его прямо сейчас.
Ян Фабри
это именно то, что нужно.
Алекс
Проблема в том, что вам нужно название таксономии, чтобы WordPress знал следующее: термин таксономии. Единственный способ, которым я знаю, это сделать, если вы создадите полностью персонализированную постоянную ссылку. Вы знаете, как вы хотите, чтобы ваша постоянная ссылка была похожа?
Мэнни Флермонд
Другой вопрос, на который ссылается @JanFabry, может быть таким: wordpress.stackexchange.com/questions/21076/…
Тим Мэлоун,

Ответы:

11

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

blah.com/2011/09/tax/term

при значении false все, что вы можете сделать, это:

blah.com/tax/term
Мэнни Флермонд
источник
2
Я вижу ... не помогает, хотя. Как удалить / TAX / часть из таксономии?
Алекс
5

Используйте код ниже:

'rewrite' => array( 
    'slug'          => '.',
    'with_front'    => false 
),

Обратите внимание, что когда вы переписываете slug, открывается шаблон страницы по умолчанию, когда вы переходите на страницу таксономии.

user45446
источник
3
В дополнение к тому, что сказал @tf, также объясните, почему ваш код предоставляет решение.
карите
Это решение работает и должно быть принятым ответом.
Техливи
Дайте мне 404, несмотря на то, что я спасаю постоянные ссылки. Он переписывает URL-адрес в браузере (но не в области постоянной ссылки), но все равно выдает 404 в браузере.
Гарконис
2

Используйте этот код, его работа отлично

'rewrite' => ['slug' => '/', 'with_front' => false]
Аммар
источник
Кто-то пометил ваш ответ. Но я нашел это уместным.
Усман Ахмед