Модератор
Yuri
(@yube)
Всегда так было, что отсутствовал шаблон для вывода всех категорий по слагу «category»?
Вроде, всегда.
И не кажется ли вам странным, что одна сущность — таксономия (притом «встроенная») плавно превращается в другую?
ЧПУ — это вообще вещь в себе, к тому же постоянно мутирующая от версии к версии.
Модератор
Yuri
(@yube)
и попадаем на шаблон 404 и содержимое query:
[pagename] => category
Попробуйте обработать это прискорбное событие при помощи add_action(‘template_redirect’…
P.S. Шаблон придется таки делать. Или фейкать $posts.
Меня смущает другое, если глянуть внутрь, то «шаблоноизвлекатель» выглядит так http://core.trac.wordpress.org/browser/tags/3.5.2/wp-includes/template.php#L149
По идее, должен работать шаблон taxonomy-category.php
, только почему движок считает, что category является страницей, вот это удивительно.. Не баг ли? (глубже не смотрел, только предположение)..
Со злости написал такой вариант:
function stupid_redirect_template($template) {
global $wp_query;
if ($wp_query->is_404 && $wp_query->query['pagename'] == 'category') {
$template = get_categories_template();
}
return $template;
}
add_filter( 'template_include', 'stupid_redirect_template' );
function get_categories_template() {
return get_query_template('categories');
}
К какому результату приведет, пока не знаю… :))
add_action(‘template_redirect’…
Посмотрю, после, как успокоюсь от такого насилия на моим мировозрением построения URI :))
Модератор
Yuri
(@yube)
почему движок считает, что category является страницей,
Видимо, потому что после /category ничего нет. Надо смотреть правила реврайта.
Со злости написал такой вариант:
Мне кажется, стоит добавить
header('HTTP/1.1 200 OK');
200 добавил.. Там в реврайтах черт ногу сломит. Ну их. Проще один page создать и забыть…
Пока клацал по клавишам обнаружил некрасивость.. Оказывается UA комментатора вообще не фильтруется.. Теоретически может «всплыть» где-нибудь и у кого-нибудь, всякое ведь бывает 😉