Як додати / blog / як префікс до структури постійної посилання для публікацій блогу, сторінок тегів тощо?


19

Я використовую Wordpress 3.1.3 як повний CMS, встановлений у кореневому каталозі домену. У мене це налаштування, використовуючи вбудовані параметри, щоб статична сторінка як домашня сторінка, а потім мій блог на http://www.example.com/blog.

Мені б хотілося, щоб мої одиничні публікації в блогах, сторінки категорій, сторінки архівів та тегів, а також будь-які інші сторінки, пов’язані з блогом, мали в своєму посиланні "префікс" / blog /. Отже, URL-адреса публікації будеwww.example.com/blog/post-title


Зараз у мене лише сторінки категорій працюють правильно. Це було досягнуто, додавши до мого .htaccesфайлу наступний рядок :

RewriteRule ^category/(.+)$ http://www.example.com/$1 [R=301,L]

Потім я встановив категорію "Блог" на сторінці "Постійні посилання" в Wordpress. Це дає сторінкам категорій URL-адресу: www.example.com/blog/category-name(без видалення префіксу категорії у .htaccessних була URL-адреса category/blog/category-name).


Намагаючись, щоб це працювало на інші речі, для яких я хочу, щоб він працював, я встановив свою базу тегів на "блог". Я також створив /blog/%postname%власну структуру постійних посилань: (як це запропоновано кількома темами, які я знайшов у пошуку в Google).

Ці налаштування дають URL-адреси для одиночних публікацій блогу, сторінок тегів та архівних сторінок структури URL-адрес, які я шукаю. Однак це змушує їх призвести до 404 помилок.

Я видалив свій .htaccessфайл, щоб переконатися, що Wordpress пише його, і це так. Якщо я /blog/видаляю з структури постійної посилання, все працює правильно, але я більше не маю структури URL-адреси, яку шукаю.

Я в збитті щодо того, що мені робити. Я продовжую читати теми та посібники, кажучи, що це так просто, як додавання /blog/до структури постійної посилання, але поки що це було не так просто.

Я був би дуже вдячний, якщо хтось знає, як я можу змусити це працювати.

.htaccess вміст:

<IfModule mod_rewrite.c>
RewriteEngine On 
RewriteBase / 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule>

Як бічна примітка, постійна посилання, показана під час редагування публікації, "неправильна". Кінцеве посилання не відображатиметься.
Алексіс Вілке

Відповіді:


5

Перейдіть у Налаштування> Постійні посилання та додайте їх до структур постійної посилання


1
Це було однією з перших речей, які я спробував, і це призвело до 404 помилок. Тому я його відключив на кілька годин і вирішив спробувати ще раз, прочитавши вашу відповідь. Зараз він працює для моїх одиночних сторінок публікації. У мене також знову почали працювати сторінки категорії. Це просто залишає сторінки тегів та сторінки архіву, які потребують / блог / на них.
Престон

Якщо ви подивитеся на сторінку, там також є місце для тегів. Щодо сторінок архіву, ви говорите про сторінку, на якій відображається перелік статей, тегів, категорій тощо чи архівованих публікацій
xLRDxREVENGEx

Якщо додати тег, якщо я додаю блог у область бази тегів, це дає мені правильну структуру URL-адреси "mydomain.com/blog/tag-name", але ця сторінка тоді дає мені помилку 404. Під архівами я маю на увазі сторінку, на якій відображаються заархівовані пости за певний місяць. Я хотів би, щоб URL-адреса була mydomain.com/blog/2011/05. Ця структура URL-адреси з’являється, коли я натискаю посилання на архів, але також дає помилку 404. І тепер я знову отримую 404 помилки для одиночних публікацій блогу. Чи може це бути плагін, який викликає проблеми?
Престон

Правильно налаштування .htaccess?
xLRDxREVENGEx

Я так вважаю, Wordpress додає в правила переписування кожен раз, коли я їх змінюю. Чи має бути щось там зокрема?
Престон

27

Ви отримуєте 404 помилки, додаючи "/ blog /" до спеціальної структури постійних посилань, а потім додаючи "/ blog /" до бази категорій. Його слід додати лише до однієї, власної структури постійної посилання.

Якщо ви залишите базу категорій та базу тегів порожньою та просто додайте "/ blog /" на передню частину спеціальної структури постійної посилання, щоб вона виглядала так "/ blog /% postname% - це отримає бажаний результат.

Ваші сторінки будуть виглядати приблизно так: domain.com/pagename/ URL вашого повідомлення буде виглядати приблизно так: domain.com/blog/postname Ваша URL-адреса категорії буде виглядати приблизно так - domain.com/blog/category/postname

Сподіваємось, це корисно ...


1
Хороший лов за додавання лише до одного розділу. Це рішення також додасть / блог / до категорій та архівних сторінок, що добре. Це справді має бути прийнятою відповіддю.
Ян

Я радий, що цей метод стосується і URL-адреси сторінки категорій.
Едвін Іп

1
Це має бути прийнятою відповіддю на це питання.
AndyWarren

2
він додасть префікс до ВСІХ ваших користувацьких типів публікацій
киває

1
Звичайним питанням тут, мабуть, буде таке: як ти керуєш цим лише для типів публікацій, які "розміщують", і як ти перекладаєш / блогуєш, наприклад, для різних мов? :)
trainoasis
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.