Wo werden Permalink-Informationen in der Datenbank gespeichert?

18

Ich sehe, dass ich Permalink-Informationen unter wp-admin page> settings> permalinks bearbeiten kann. Wo sind diese Informationen jedoch tatsächlich in der Datenbank gespeichert?

Alexander Bird
quelle

Antworten:

13

In der wp_optionsTabelle steht ein Datensatz, in dem option_name = "permalink_structure".

Die wahre, ultimative Kontrolle über das Umschreiben von URLs wird jedoch von der WP_Rewrite-API gesteuert, die ihre Informationen in der rewrite_ruleswordpress-Option speichert / zwischenspeichert (auch in der wp_optionsTabelle zu finden).

BEARBEITEN:

Wenn Sie eine Seite / einen Beitrag bearbeiten, können Sie auch den "Permalink" für diese Seite / diesen Beitrag ändern (rechts unten, wo Sie den Titel ändern). Das Einzige, was Sie tun, ist, das post_nameFeld für den Eintrag dieser Seite / dieses Beitrags in der wp_postsTabelle zu setzen (auch bekannt als "Slug" für diese Seite).

Für alle Seiten gelten anscheinend die folgenden Standardregeln zum Umschreiben:

[(.?.+?)/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]

Diese Liste habe ich mit folgendem PHP-Code erhalten: echo nl2br('rules = '.print_r( $wp_rewrite->rules, true) . "\n");

Es scheint keine eingebaute Möglichkeit zu geben, das Routing für Seiten zu bearbeiten, da die Permalink-Struktur nur für Posts gilt.

BEARBEITEN:

Weitere zufällige Informationen, die ich entdecke: Wenn Ihre permalink_structure eine leere Zeichenfolge ist (dies ist die "Standard" -Option, die Sie auswählen können), überspringt WordPress das gesamte Umschreiben vollständig - ich bin mir wirklich nicht sicher, warum das so ist, aber es ist so .

Alexander Bird
quelle
6

Die eigentlichen Informationen - z. B. der 'Slug' für die Seite oder den Beitrag - werden in wp_posts in der Spalte post_name gespeichert. Dies ist normalerweise eine verschlüsselte Version von post_title, die jedoch seitenweise überschrieben werden kann.

Der vollständige Permalink wird auf der Grundlage der Einstellungen dekonstruiert, die Sie unter Einstellungen -> Permalinks ausgewählt haben. Der eigentliche Slug befindet sich jedoch in post_name in wp_posts.

Dave Hilditch
quelle
0

Permalink-Informationen werden in wp_options gespeichert.

Tabellenname: - $ wpdb-> prefix'options '

Und suchen Sie den Optionsnamen wie 'permalink_structure' in der Optionstabelle.

In dieser Zeile in einer Tabelle können Sie die Permalink-Struktur anzeigen.

Arvind Pal
quelle