как добавить правильной работы от Категории+SeoLinkandCategory+ЧПУ+PN

Такая ситуация:
Имеются плагины:
1. SeoLinks and Category
2. PageNavi
последние версии

Чпу: /%category%/%postname%

В категории выводиться по 10 постов, далее идет навигация плагина pagenavi , который ведет на сайт.ру/имя_категори/page/№страницы , но страница выдает 404 ошибку. Было найдено решение поменять ЧПУ на: /%category%/%postname%.htm . Возможно ли обойтись без добавления " .htm " , так как все страницы проиндексированы и оптимизированны именно по тем урлам?

Все плагины, убирающие "лишнее" из путей, требуют наличия "расширения" у шаблона ЧПУ постов.

а можно же написать плагин, который будет не требовать расширения постов, спрос будет

Попробуйте, напишите. 😀

Незнаю что выбрать:
1. сделать ЧПУ вида /%category%/%postname%.htm
2. убрать эти плагин, который укорачивает пермалинк

Ваш выбор?

Дык, от задачи зависит. Иногда бывает достаточно изменить базу категорий, чтобы стало красиво.

что Вы подразумеваете под "база категорий"?

"Category base", оно же "базис", оно же "префикс" в настройках ЧПУ. То, что дописывается в урле перед слагом категории и по умолчанию имеет значение "category". То, что плагины удаляют из урла категории.

наверное это самая правильная тема для вопроса:
и все таки – как сделать, чтобы для категории страницы дальше первой находились?

1. у меня не дефолтивная тема
2. чпу вида /%category%/%post%/
3. стоит seo without category, т.е. site/name_of_category/post
4. вп 2.3.3

и проблема как у TC – любая страница вида site/name_of_category/page/2 – not found 🙁

upd: все начиает работать если деактивировать seo without category, но урл стаёт некрасивым site/category/name-of-category/post-name 🙁

/%category%/%post%/ Ась?
Может лучше /%category%/%postname%.htm

вы оказались правы, я обратно активировал seo without category, изменил чпу на /%category%/%postname%.htm
и постраничная навигация в категориях заработала..

оставлю так, сайт свежий и еще не попал в индекс яндекса, а вот с гуглом..

upd: прочитал вашу статью http://blog.portal.kharkov.ua/2008/03/18/301_redirect/ и перестал бояться 🙂

Нашел русский блог, где все замечательно работает, только автор не помнит, чтобы что либо специально для этого делал.
Адрес: http://bobr.biz/blog/plagin-top-level-categories-10/
Тот плагин, который у него работает, у меня все равно не работает, я пока сделал корявое решение, подсказанное blaisefreeman http://wordpress.org/support/topic/121459. То есть у меня при переходе на вторую страницу добавляется слово "category". Но хочу все таки сделать также, как на http://bobr.biz, помогите, плз.

У меня получилось, долго мучался, но не зря.
Сработал коктейль из двух методов.
1. Скачал плагин (http://urbangiraffe.com/plugins/redirection/)
2. В свойствах плагина указал Source URL: /(.*)/page/(.*)/
Target URL: /$1/?paged=$2/
В итоге при переходе на вторую строчку у меня получается адресная строка вида
http://blog.com/moyarubrika/?paged=2/.
Ошибки 404 при этом нет!

Ошибки 404 при этом нет!

Зато есть 301 или 302, да?

Если бы выдавалась другая ошибка, я бы заметил, наверное.
Можете сами посмотреть пример на:
http://hdtv.dn.ua/dokumentalnoe-kino/?paged=2/

Запрос
http://hdtv.dn.ua/dokumentalnoe-kino/page/3/

Ответ
HTTP/1.0 301 Moved Permanently
Date: Fri, 23 May 2008 09:15:52 GMT
Server: Apache
X-Powered-By: PHP/5.2.5-3
Location: /dokumentalnoe-kino/?paged=3/
Vary: Accept-Encoding
Connection: close
Content-Type: text/html; charset=WINDOWS-1251

Как говорил мой американский друг, It’s not my fucking problem!

Запрос
http://hdtv.dn.ua/dokumentalnoe-kino/page/3/

Ответ
HTTP/1.0 301 Moved Permanently
Date: Fri, 23 May 2008 09:15:52 GMT
Server: Apache
X-Powered-By: PHP/5.2.5-3
Location: /dokumentalnoe-kino/?paged=3/
Vary: Accept-Encoding
Connection: close
Content-Type: text/html; charset=WINDOWS-1251

Как говорил мой американский друг, It's not my fucking problem!

Я не понимаю, как вы зашли на эту страницу и соответственно вызвали эту ошибку, мой браузер Опера 9.27, когда я захожу в рубрику Документальное кино (http://hdtv.dn.ua/dokumentalnoe-kino/), и внизу кликаю внизу на кнопке "« Раньше", у меня появляется страница
http://hdtv.dn.ua/dokumentalnoe-kino/?paged=2/, когда я на ней кликаю внизу на кнопке "« Раньше", у меня появляется страница http://hdtv.dn.ua/dokumentalnoe-kino/?paged=3/. В обратном порядке тоже все нормально перелистывается. Плз, опишите, как вы зашли на http://hdtv.dn.ua/dokumentalnoe-kino/page/3/ с помощью навигации сайта.

Элементарно, Ватсон! 🙂 Подведите мышку к ссылке "Раньше" и посмотрите, куда ссылка ведет.

Элементарно, Ватсон! :) Подведите мышку к ссылке "Раньше" и посмотрите, куда ссылка ведет.

Да, ссылка ведет на http://hdtv.dn.ua/dokumentalnoe-kino/page/3/,
но нажав ее, я попадаю на http://hdtv.dn.ua/dokumentalnoe-kino/?paged=3/.
Пожалуйста, Ю.Б. помогите мне вызвать ошибку, у меня опыта не хватает. Попробовал в IE, тоже все нормально.

301 – это не совсем ошибка, это статус "страница временно перемещена". Это не смертельно, но не очень красиво, когда идешь на один url (/page/3), а попадаешь на другой (/?paged=3). Так что найденное Вами решение нельзя признать идеальным.

То, что я привел – это http-заголовок, броузеры его не показывают, а, так сказать, принимают к сведению. Статус 301/302 и Location указывают, что вместо текущего url, нужно открыть другой, так фактически открывается сначала одна страница, потом сразу другая.

Возможно это не идеальное решение, идеальным для меня было сразу переходить вместо /page/2/ на /?paged=2/. Если вы можете подсказать где в rewrite.php или в другом месте это можно исправить, я был бы очень благодарен (у меня версия 2.5.1). Но даже мой вариант решения для многих будет предпочтительнее, чем добавлять расширения *.htm в уже работающий сайт.

Пробовал в link-template.php в функции next_posts менять
echo clean_url(get_next_posts_page_link($max_page));
на
$the_unmodified_link = clean_url(get_next_posts_page_link($max_page));
if (preg_match(‘/?paged=/’, $the_unmodified_link)) echo $the_unmodified_link;
else echo preg_replace(‘/page/$1′ ,’/?paged=$1/’, $the_unmodified_link);

Получается полный бред, если не будет другого решения предложено опытными знатоками Вордпресса, останусть с редиректом.

Anonymous
Отправить
Ответ на: