dove sono memorizzate le informazioni dei permalink nel database?
Nella tabella wp_options
c'è un record dove option_name = "permalink_structure"
.
Tuttavia, il vero controllo ultimo del rewrite degli URL è gestito dall'API WP_Rewrite che salva/memorizza nella cache le sue informazioni nell'opzione rewrite_rules
di WordPress (anch'essa presente nella tabella wp_options
).
MODIFICA:
Inoltre, quando si modifica una pagina/post, è possibile cambiare il "permalink" per quella pagina/post (proprio sotto dove si modifica il titolo). Tutto ciò che fa è semplicemente impostare il campo post_name
per l'entrata di quella pagina/post nella tabella wp_posts
(ovvero cambia lo "slug" per quella pagina).
Per tutte le pagine, sembra che le regole di rewrite predefinite siano le seguenti:
[(.?.+?)/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]
Questo elenco è stato ottenuto eseguendo questo codice PHP: echo nl2br('rules = '.print_r( $wp_rewrite->rules, true) . "\n");
Non sembra esserci alcun modo integrato per modificare il routing per le pagine poiché la struttura dei permalink si applica solo ai post.
MODIFICA:
Altre informazioni casuali che sto scoprendo: se il tuo permalink_structure è una stringa vuota (che è l'opzione "predefinita" che puoi scegliere), allora WordPress salta completamente tutto il rewriting - non sono proprio sicuro del perché sia così, ma è così.

Le informazioni effettive - ad esempio lo 'slug' per la pagina o l'articolo sono memorizzate nella tabella wp_posts nella colonna post_name. Normalmente è una versione "slugificata" del post_title, ma può essere sovrascritta pagina per pagina.
Il permalink completo viene ricostruito in base alle impostazioni scelte in Impostazioni -> Permalink, ma lo slug effettivo si trova in post_name nella tabella wp_posts.

Le informazioni sui permalink sono memorizzate nella tabella wp_options.
Nome della tabella: $wpdb->prefix'options'
Cerca il nome dell'opzione 'permalink_structure' nella tabella delle opzioni.
In quella riga della tabella puoi visualizzare la struttura del permalink.
