Veo que puedo editar la información del enlace permanente en la página wp-admin > configuraciones > enlaces permanentes. Sin embargo, ¿dónde se almacena esa información en la base de datos?
Veo que puedo editar la información del enlace permanente en la página wp-admin > configuraciones > enlaces permanentes. Sin embargo, ¿dónde se almacena esa información en la base de datos?
En la tabla wp_options
hay un registro donde option_name = "permalink_structure"
.
Sin embargo, el verdadero y último control de la reescritura de url está controlado por la WP_Rewrite API que guarda / guarda su información en la opción rewrite_rules
wordpress (también se encuentra en la tabla wp_options
).
EDITAR:
Además, al editar una página / publicación, puede cambiar el "enlace permanente" para esa página / publicación (justo debajo de donde cambia el título). Todo lo que se está haciendo es simplemente establecer el campo post_name
para la entrada / post de esa página en la tabla wp_posts
(también está cambiando el "slug" de esa página).
Para todas las páginas, parece que las reglas de reescritura predeterminadas son las siguientes:
[(.?.+?)/page/?([0-9]{1,})/?$] => index.php?pagename=$matches[1]&paged=$matches[2]
[(.?.+?)/comment-page-([0-9]{1,})/?$] => index.php?pagename=$matches[1]&cpage=$matches[2]
[(.?.+?)(/[0-9]+)?/?$] => index.php?pagename=$matches[1]&page=$matches[2]
Esa lista la obtuve al ejecutar este código php: echo nl2br('rules = '.print_r( $wp_rewrite->rules, true) . "\n");
No parece haber ninguna forma integrada de editar el enrutamiento de las páginas, ya que la estructura de enlace permanente solo se aplica a las publicaciones.
EDITAR:
Más información aleatoria que estoy descubriendo: si su permalink_structure es una cadena vacía (que es la opción "predeterminada" que puede elegir), WordPress omite toda la reescritura. Realmente no estoy seguro de por qué ese es el caso. pero es.
La información real, por ejemplo, el 'slug' para la página o publicación se almacena en wp_posts debajo de la columna post_name. Esta es una versión slugificada de post_title normalmente, pero se puede sobrescribir página por página.
El enlace permanente completo se deconstruye según la configuración que haya elegido en Configuración - > Permalinks, pero el slug real está en post_name en wp_posts.
La información del enlace permanente se almacena en wp_options.
Nombre de la tabla: - $ wpdb- > prefix'options '
Y busque el nombre de la opción como 'permalink_structure' en la tabla de opciones.
En esa fila de una tabla u puede ver la estructura del enlace permanente.
Lea otras preguntas en las etiquetas permalinks database