Шаблон ЧПУ /%category%/%postname%/
У категории “dogs” есть дочерняя категория “buldogs”.
Без плагина seo without category при таком ЧПУ ссылки работают так:
категория верхнего уровня доступна по адресу www.site.ru/dogs/ и по адресу www.site.ru/catogory/dogs/ (почему?!)
подкатегория buldogs доступна только по адресу www.site.ru/catogory/dogs/buldogs/
При этом пост "buldog-grisha", написанный в подкатегорию buldogs доступен только по адресу www.site.ru/dogs/buldogs/buldog-grisha/ (без category в адресе)
При включенном плагине SEO without Category ссылка www.site.ru/dogs/buldogs/ все равно выдает несуществующую страницу (в то время как страница www.site.ru/dogs/ открывается нормально).
По логике при включенном плагине категория должна быть доступна по адресу www.site.ru/dogs/, а подкатегория — www.site.ru/dogs/buldogs/
В чем тут дело?
Думаю, что здесь WordPress просто не может определить, что такая подрубрика является именно подрубрикой.
Вот смотри. Для работы с пермалинками, WordPress (2.x) использует сложную систему, в которой предопределены т.н. rewritecode. Например "%category%" соответствует "category_name", а "%monthnum%" – "monthnum" и т.д.
Когда происходит обращение по пермалинку формируется класс $wp_rewrite, в котором и содержится вся структура линка. В дальнейшем, когда нужно сформировать или передать управление по этому линку, анализируется база структуры согласно rewritecode.
Когда происходит обращение по адресу www.site.ru/category/dogs/buldogs/, то WordPress однозначно определяет, что это структура категории. После того, как включается плагин "Seo-Without-Category" из пермалинка вырезается подстрока "/category". А такая строка для WordPress уже однозначно является ссылкой на имя поста (postname). Получается, что сформировать-то строчку без "/category" можно, но вот при переходе по такой ссылке, WordPress берет "базу" категории (значение "%category%"), но в самой ссылке её-то как раз и нет. Получается, что WordPress передает управление не "?cat=…", а неизвестно чему. Но, поскольку поля $wp_rewrite заполняются все (т.е. и категория, и автор, и архив и т.д.), то управление переходит к тому, что раньше других совпало с пермалинком.
В общем для того, чтобы исключить подстроку "/category" нужно не только удалить её из пермалинка, но и изменить базу рубрики %category%. Но вот этого уже WordPress не позволит сделать. И правильно, поскольку в этом случае возникает неопределенность куда именно нужно передать управление.
До меня дошло, если сделать шаблон ЧПУ /%category%/%postname%.htm, все прекрасно работает!
Спасибо, Макс!
—
Не дошло. 😐
У меня та же самая проблема, открывается несуществующая страница Error 404 – Not Found.
Если Шаблон ЧПУ: /%postname%/
Но при этом посты имеют привлекательный вид
http://www.mysite.com/blog/hello-world/ Даже если плагин отключен (правда при отключке плагина, соответственно, ссылка категорий имеют вид http://www.mysite.com/blog/category/uncategorized/
Если Шаблон ЧПУ: /%category%/%postname%/ и плагин включён, то
посты – http://www.mysite.com/blog/uncategorized/hello-world/
категории – http://www.mysite.com/blog/uncategorized/
Вот и думай, что для SEO лучше: посты с дополнением категории
http://www.mysite.com/blog/uncategorized/hello-world/, но при этом
сами категории: http://www.mysite.com/blog/uncategorized/ (без category)
или
категории с category: http://www.mysite.com/blog/category/uncategorized/,
но посты прямые: http://www.mysite.com/blog/hello-world/
Вот бы так:
и посты: http://www.mysite.com/blog/hello-world/
и категории: http://www.mysite.com/blog/uncategorized/
Может можно под это плагин подправить?
А шаблон ЧПУ при вложенных категориях должен быть /%category%/%postname%.html
у меня вообще ничего толком не даёт. И при чём тут .html ? Сорри …
Выше у Макса все подробно написано.
Шаблон /%category%/%postname%.html прекрасно работает при включенном плагине seo-without-category.
Какой именно толк вы от него ждете?
Не нравится .html, поставьте .htm 🙂
Так а возможно каким-нибудь образом сделать урлы
для постов: /%postname%/
для категорий: /%category%/ или /%category%-blabla/ ?
очень нужно..
Настройки — ЧПУ (постоянные ссылки)
своя структура: пишете /%postname%/
сохраняете
так не работает. по ссылке категории ошибка 404..
Как заметил Prost, я тоже встал перед проблемой:
Либо красивые ссылки на посты (/%postname%.html)
, либо рубрики без category. Вместе никак не хочет работать. Неужели нет решения?