¿Cómo agrego / blog / como prefijo a la estructura de enlaces permanentes para publicaciones de blog, páginas de etiquetas, etc.?

19

Estoy usando Wordpress 3.1.3 como un CMS completo, instalado en el directorio raíz de un dominio. Lo configuré usando las opciones integradas para tener una página estática como página de inicio, y luego mi blog en http://www.example.com/blog.

Lo que me gustaría es tener mis publicaciones de blog individuales, páginas de categoría, páginas de archivo y páginas de etiquetas, y cualquier otra página relacionada con el blog tiene el "prefijo" de / blog / en su estructura de enlaces. Entonces una URL de publicación seríawww.example.com/blog/post-title


En este momento, solo tengo las páginas de categoría funcionando correctamente. Esto se logró agregando la siguiente línea a mi .htaccesarchivo:

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

Luego, configuré la Base de categoría en "blog" en la página de configuración de enlaces permanentes en Wordpress. Esto le da a las páginas de categoría la URL de: www.example.com/blog/category-name(sin eliminar el prefijo de categoría .htaccess, tenían la URL category/blog/category-name).


En un intento de hacer que esto funcione para las otras cosas para las que quiero que funcione, configuré mi Base de etiquetas en "blog". También hice mi Estructura de enlace permanente personalizada /blog/%postname%(como lo sugieren algunos hilos que encontré buscando en Google).

Esta configuración proporciona a las URL de las publicaciones de blog individuales, las páginas de etiquetas y las páginas de archivo la estructura de URL que estoy buscando. Sin embargo, hace que todos conduzcan a errores 404.

Eliminé mi .htaccessarchivo para asegurarme de que Wordpress le estaba escribiendo, y así es. Si elimino el /blog/de la estructura de enlaces permanentes, todo funciona correctamente, pero ya no tengo la estructura de URL que estoy buscando.

No sé qué debo hacer. Sigo leyendo hilos y guías que dicen que esto es tan simple como agregar /blog/a la estructura de enlaces permanentes, pero hasta ahora no ha sido tan simple.

Estaría muy agradecido si alguien sabe cómo puedo hacer que esto funcione.

.htaccess contenido:

<IfModule mod_rewrite.c>
RewriteEngine On 
RewriteBase / 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule>
Preston
fuente
Como nota al margen, el enlace permanente que se muestra al editar una publicación es "incorrecto". No mostrará el enlace final.
Alexis Wilke

Respuestas:

5

Vaya a Configuración> Enlaces permanentes y agréguelo a las estructuras de enlaces permanentes

xLRDxREVENGEx
fuente
1
Esa fue una de las primeras cosas que probé y resultó en errores 404. Así que lo desactivé durante unas horas y decidí intentarlo nuevamente después de leer su respuesta. Ahora está funcionando para mis páginas de publicaciones individuales. También conseguí que las páginas de categorías volvieran a funcionar. Eso solo deja las páginas de etiquetas y las páginas de archivo que necesitan el / blog / en ellas.
Preston
Si miras la página también hay un lugar para las etiquetas. En cuanto a las páginas de archivo está hablando acerca de la la página que muestra la lista de artículos, etiquetas, categorías, etc., o mensajes archivados
xLRDxREVENGEx
Con las etiquetas, si agrego un blog en el área Base de etiquetas, me da la estructura de URL correcta "mydomain.com/blog/tag-name", pero esa página me da un error 404. Con los archivos, me refiero a la página que muestra las publicaciones archivadas para un mes en particular. Me gustaría que la URL sea mydomain.com/blog/2011/05. Esa estructura de URL aparece cuando hago clic en un enlace de archivo, pero también da un error 404. Y ahora recibo errores 404 para las publicaciones de blog individuales nuevamente. ¿Podría ser este un complemento que está causando problemas?
Preston
¿Es correcta su configuración de .htaccess?
xLRDxREVENGEx
Creo que sí, Wordpress agrega las reglas de reescritura cada vez que las cambio. ¿Debería haber algo en particular allí para algo como esto?
Preston
27

Obtiene errores 404 cuando agrega "/ blog /" a la estructura de enlace permanente personalizado y luego también agrega "/ blog /" a la base de categorías. Solo debe agregarse a uno, la estructura de enlace permanente personalizada.

Si deja su base de categoría y base de etiqueta en blanco y simplemente agrega "/ blog /" al frente de la estructura de enlace permanente personalizada para que se vea así "/ blog /% postname% - esto obtendrá el resultado deseado.

Sus páginas se verán así: domain.com/pagename/ La URL de su publicación se verá así: domain.com/blog/postname La URL de su categoría se verá así: domain.com/blog/category/postname

Espero que esto sea útil ...

dom
fuente
1
Buen truco para agregar solo a una sección. Esta solución también agregará / blog / a las páginas de categoría y archivo, lo cual es bueno. Esta realmente debería ser la respuesta aceptada.
Ian
Me alegra que este método también se aplique a la URL de la página de categorías.
Edwin Yip, el
1
Esta debería ser la respuesta aceptada a esta pregunta.
AndyWarren
2
adjuntará el prefijo a TODOS sus tipos de publicaciones personalizadas
asiente con la cabeza
1
Una pregunta habitual aquí probablemente sería: ¿Cómo maneja esto solo para los tipos de publicación "post" y cómo traduce / blog, por ejemplo, para diferentes idiomas? :)
trainoasis