Можно колдовать с category base в настройках, но я нашел в интернетах более простой способ, добавив в functions.php пару строк

function seocategorydel($catlink1) {
 $catlink1 = str_replace('/category', '', $catlink1);
 return $catlink1;
}
add_filter('category_link', 'seocategorydel', 1, 1);

Возможно, это будет интересно...

65 responses


Do you want to comment?

Comments RSS and TrackBack Identifier URI ?

А просто в настройках разве нельзя поменять…
Category base
или
плагином точно можно токо я название не помню… :)

Март 31, 2010 3:51 пп

Все гениальное – просто!)

Март 31, 2010 4:05 пп

О да! Большое спасибо!

Март 31, 2010 8:34 пп

А зачем убирать категории из урла? О_о .. Надо ж как-то конкретизировать, а то получается блог мегасакральных знаний..я слышал что вроде это надо, а зачем??

Март 31, 2010 9:12 пп

ОченьЗлой, затем что category в урле не очень смотрится

Март 31, 2010 10:31 пп

взял на заметку, спасибо) будем использовать

Апрель 1, 2010 10:38 дп

Alex Volkov, подскажи пожалуйста, как убрать category, но, что-бы структура сайта(ЧПУ) осталась в виде %postname% т.к в твоем случае(%category%/%postname%), любой пост будет содержать сайт.ру/рубрика/новость, а хотелось бы сайт.ру/новость. Спасибо!

Апрель 2, 2010 8:59 дп

А разве при настройках чпу в админке не возможно это сделать?

Апрель 2, 2010 11:20 пп

Привет, однофамилец! Только зачем это делать? Правила, по которым формируется пермолинка редактируется в админке в разделе permalinks. Убрал оттуда категорию и всех делов.

Апрель 3, 2010 5:47 пп

Лично для себя я вижу пользу исключения категории из урла в том, что имеется возможность в будущем перенести статьи из одной категории в другую, поменять название категории и т.д. То есть остаются возможности для маневров. И все это не отразится на ссылочном на ранее проиндексированные страницы (урлы останутся прежними).

Апрель 3, 2010 6:25 пп

psp, %postname%

Апрель 5, 2010 7:38 пп

Алексей Волков, привет )) домен козырный у тебя ))
>>Убрал оттуда категорию и всех делов.
category не убирается, в том то и дело. Например у меня пермалинк %postname%.html , а категории имеют вид http://alexvolkov.ru/category/sport, http://alexvolkov.ru/category/skripty . Т.е. напрягает именно присутствие category/

Апрель 5, 2010 7:41 пп

А, понял… Тут ты прав. Зато с помощью Category base его можно сократить легко до http://alexvolkov.ru/c/sport

Домен, да. :-) .В давние времена добыл, в еще довоенные. :-) . Как и все мои домены любимые.

Апрель 5, 2010 7:58 пп

отличный трюк, применю на своём блоге, спасибо)!

Апрель 6, 2010 9:10 дп

Блин, всё так простобыло, я вчера целый вечер мучался, чтобы убрать этот category и так и не сделал, а тут раз-два и готово. Спасибо огромное !!!

Апрель 6, 2010 6:08 пп

Как раз искал подобное для своего блога!

Апрель 7, 2010 3:27 пп

Привет.
Если откусываю category, то по клику на название рубрики пишет, что мол ничего не найдено, вместо того, чтобы как раньше выводить список статей в этой рубрике. Что я делаю не так и как поправить?

Апрель 9, 2010 7:30 дп

Интересное решение. Хотя на сколько я помню, отображение категории из адресной строки можно убрать и с помощью плагина.

Апрель 9, 2010 11:15 дп

вот спасибо) не ожидала что всё так просто делается.. давно мучилась с этой проблемой)

Апрель 9, 2010 11:23 дп

Круто, спасибо, давно интересовал этот вопрос с сылками))

Апрель 12, 2010 10:52 дп

Владимир, можно, но зачем вешать для этого лишний плагин?

Апрель 12, 2010 5:26 пп

Sonikelf, урл у рубрики какой получается? Я когда убираю category, руками еще урлы переписываю, потому что они по старинке с category идут

Апрель 12, 2010 5:27 пп

Я тоже в коде данное дело подправляю, если что! После знакомства с PHP, мне как то проще код подправить, нежели какиетго плангины ставить, или ещо бох весть что!

Апрель 13, 2010 2:09 пп

У меня дак все убирается, когда ставлю ЧПУ %postname%. Никакие категории нигде не вылезают, просто может версия движка чем то отличается?

Апрель 13, 2010 6:19 пп

Верно, проще через Rustolat убить категории: быстро, дешево, и практично :) ))

Апрель 13, 2010 9:47 пп

Так дойдет до того что вам проще будет написать свой движко для блога :)

Апрель 14, 2010 3:14 пп

спасибо за совет! можно теперь ещё от одного плагина избавится

Апрель 15, 2010 8:31 пп

Лучше поставить seo плагин для вордпресса и не мучаться с ручной оптимизацией.

Апрель 16, 2010 11:18 пп

Идея хорошая, а 404 вылазят?

Апрель 18, 2010 12:30 пп

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

Апрель 19, 2010 8:01 дп

Лена, все правильно если сделать то нет

Апрель 19, 2010 1:28 пп

В принципе дело нужное только для красоты, НО для сайтов, которые проиндексированы поисковиками, лучше ничего не менять, а то всё повылетает, и не факт, что снова попадёт в индекс :)

Апрель 19, 2010 3:52 пп

это конечно всё хорошо, но только у меня в ЧПУ прописано “/%postname%.htm” и слова “category” в прямых урлах на статьи нет!

Апрель 19, 2010 7:42 пп

ahmetoff, на список категорий наведи и там увидишь.

Апрель 20, 2010 7:49 дп

Хорошее однако решение, если не хочешь ставить дополнительных плагинов :)

Апрель 20, 2010 9:20 дп

Интересный способ решения проблемы. Не знал, что так можно. Лично я убирал category из урла при помощи плагина.

Апрель 20, 2010 4:06 пп

Отличный способ, всегда мещали эти категории, многие ещё давали таким ссылкам УВ больше, чем оно есть.

Апрель 21, 2010 2:45 пп

А с навигацией внутри категории кто, что делал? То есть если у меня к примеру в рубрике 25страниц. Открываю рубрику, по умолчанию на одну страницу выводится 5 страниц рубрики. Нажимаю далее, либо выбираю страницу в навигации и идет ошибка 404. Если вручную в сылку добавить category, то все нормально.
То есть вот такая страница mysite/название_категории/page/2/ идет с ошибкой, надо вот такую mysite/category/название_категории/page/2/.
Кто как это решал?

Апрель 22, 2010 9:57 пп

по-моему в настройках ЧПУ это можно сделать

Апрель 23, 2010 1:57 пп

категорию из ссылки убирают для того, чтобы страницы были 2 уровня, и ссылки с них дороже продаются :)

Апрель 23, 2010 5:38 пп

Sevod, скинь пример, посмотрим в чем трабла.

Апрель 23, 2010 7:26 пп

Сбросить то нечего… Плагин на локалке тестировал.
У тебя вот к примеру сылки _http://alexvolkov.ru/category/wordpress. А у меня получалось _http://alexvolkov.ru/wordpress. Переход на первую страницу _http://alexvolkov.ru/wordpress нормально проходит, а вот дальнейшее листание уже не работатет, требует вот такого вида _http://alexvolkov.ru/category/wordpress/page/2. Тоесть что бы category было обязательно, иначе 404.
С помощью ЧПУ поправить удавалось, но тогда уже не открывались страницы О.о Вордпрес 2.9.2

Апрель 25, 2010 9:35 пп

На блоге на этом поставил код, без category отдает 404. На сайтах, где я применял это, была custom структура файла archives.php, но я уже не помню что и как там делал. Вечерком посвободней буду, гляну.

Апрель 26, 2010 8:22 дп

http://codex.wordpress.org/Using_Permalinks, секция Paged Navigation Doesn’t Work, вроде бы оно

Апрель 26, 2010 12:02 пп

Спасибо за пост.
Я как раз хочу на водпресе сделать один сайт, и задавался этим вопросом, чтобы из урла убрать лишнее.

Апрель 27, 2010 2:31 дп

Sevod, если я правильно понял, то страницы page/2 (page/3, page/4 и так далее) не открываются или открываются с ошибкой. Если вы применяете плагин, то решение проблемы вот: в чпу нужно прописывать не %category%/%postname%, %category%/%postname%.html – обязательно наличие html, тогда всё будет в порядке – будет ссылка домен/название категории/page/2.

Май 2, 2010 1:27 дп

2 Puhtya.
Спасибо, вот так заработало, я действительно без html пытался применить.
А кто знает что за функция и где находится разделяющая категории на страницы? Просто стало интересно почему без html не работает.

Май 3, 2010 7:06 пп

Sevod, без html не работает, потому что это прописано в плагине. Сам не очень в этом разбираюсь, поэтому это не точно. Поищите, я когда то наткнулся на сайт, на котором автор перелапатил этот плагин и он стал нормально работать и без html.
Функция, разделяющая категории на страницы, скорее всего, назодится в коде wordpress, так как уоличество записей на странице ставится в админке.

Май 8, 2010 9:49 пп

А работает ли данный метод совместно с плагином WP-page navi?
У меня такая вот проблема в паре SEO without catergory + WP Page Navi – при просмотре не первой страницы рубрики даёт 404 ошибку.

Май 12, 2010 11:26 дп

Вот млин :) . Сколько пользуюсь WordPress, а в functions.php так залезть и не подумал. Говоришь там полезные вещи для создания шаблона лежат. Надо полюбпытствовать. Спасибо за идею, будет над чем голову поломать.

Май 17, 2010 11:06 пп

Alex Volkov, заранее извиняюсь, но повторю свой вопрос заново. Используя ваш способ, можно сократить “не нужное” слово category из УРЛа страницы. После чего категории(рубрики) сайта перестают открываться по причине 404 ошибки(Not Found). Тогда, что-бы избежать этой ошибки в настройках WordPress в разделе ЧПУ(галочка Произвольная структура) надо прописать %category%/%postname%. После применения категории(рубрики) работают, но каждая новость содержит опять же “не нужное” слово category. Вопрос заключался в том, что бы убрать %category%, как в новости так и в категориях. Помогите, хотя бы сделать такой вид навигации на сайте “категория-рубрика” без слеша. На примере, своего сайта из http://psplay.ru/psp/wallpapers сделать http://psplay.ru/psp-wallpapers. Огромное спасибо.

Май 18, 2010 12:21 пп

psp, category можно убрать кодом из поста. ЧТобы категории не было в посте, указываем в чпу %postname%.

Май 19, 2010 7:37 дп

Alex Volkov, я попробовал поставить в чпу %postname%, но сталкнулся с проблемой. Урлы действительно стали такими: http://psplay.ru/psp-wallpapers, то бишь без категории. Но, на страницах самих категорий ( http://psplay.ru/psp например) выдаёт ошибку 404. Как побороть?

Май 23, 2010 1:29 дп

Puhtya, попозже выложу код для лупа, который корректно выводит пагинацию

Май 26, 2010 10:13 пп

Спасибо за статью, всегда кумарили меня category в урле, теперь смогу от них избавится. Ещё раз Спасибо!

Май 28, 2010 2:18 пп

Попробовал я добавить, в итоге 404 ошибка при переходе в категории.
Использую плагин rustolat

Июнь 9, 2010 11:53 дп

Спасибо, сделал у себя на блоге именно так.
Никита, я тоже rustolat использую, не в нем дело точно…

Июль 8, 2010 9:20 пп

Всегда поражался, когда какое-то простое решение заменяют установленным плагином, а тут несколько строчек и нет лишней нагрузки на движок. Спасибо, Александр!

Июль 9, 2010 2:10 пп

Минимализм статей поражает. Хорошо для тех, кто глубоко в теме. Я не рискну воспользоваться этим, и так масса ошибок приходит на почту после плагина Smart 404.

Июль 17, 2010 9:08 пп

Автору респект. Перерыл нет в поисках, решения этого дела без плагина. Короче еще раз респект!

Конечно мой блог еще молод. Но может захочешь обменяться ссылками пиши!

В твите следую за тобой!

Июль 23, 2010 2:16 пп

Добрый день! ПЛЗ кто-нить помогите. Попользовался данным методом, добавил строки в functions.php. Все бы хорошо, но вот пагинация перестала работать. т.е я захожу в рубрику новости, там у меня пагинация. Нажимаю на страниц 2 к примеру, мне выдает ошибку 404. Если я руками прописываю путь 2ой страницы с указанием /category/ то тогда все работает. Как сделать так, чтобы данный метод работал с пагинацией без /category/

10 раз перечитал все посты, но у себя так и не смог решить эту проблему, т.к слабо понимаю что делаю.

Заходу

Очень прошу отзовитесь кто-нить плз. Спасибо

Июль 28, 2010 2:56 пп

Denis, стукнись в асю, подумаем как решить.

Июль 28, 2010 11:58 пп

2 Alex Volkov

Спасибо что отозвались. Но уже вроде решил сам.

Июль 29, 2010 12:20 дп

Любопытно. Надо попробовать этот метод. Правда, этот метод с изменением functions.php, так сказать “железный”. Разве с плагином “seo-without-category” не более гибкие возможности?
Или все-таки принцип: чем меньше плагинов, тем лучше работает движок имеет место быть?

Август 21, 2010 6:28 дп

Спасибо за статью. Вопрос, а вот если у меня довольно много категорий и они все уже есть в индексе (на некоторых есть PR), я поменяю их урлы, как написано в статье, они пропадут из индекса и пропадёт PR?

Август 24, 2010 4:52 пп

Comment now!
















Trackbacks