где информация о постоянной ссылке хранится в базе данных?

18

Я вижу, что я могу редактировать информацию о постоянных ссылках на странице wp-admin> settings> permalinks. Однако где эта информация на самом деле хранится в базе данных?

Александр Берд
источник

Ответы:

13

В wp_optionsтаблице есть запись где option_name = "permalink_structure".

Однако истинный, окончательный контроль над переписыванием URL- адресов контролируется API-интерфейсом WP_Rewrite, который сохраняет / кэширует свою информацию в rewrite_rulesопции wordpress (также найденной в wp_optionsтаблице).

РЕДАКТИРОВАТЬ:

Кроме того, при редактировании страницы / сообщения вы можете изменить «постоянную ссылку» для этой страницы / сообщения (прямо ниже, где вы меняете заголовок). Все, что мы делаем, это просто устанавливаем post_nameполе для записи / поста этой страницы в wp_postsтаблице (она также меняет «слаг» для этой страницы).

Похоже, что для всех страниц по умолчанию применяются следующие правила перезаписи:

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

Этот список был получен мной, запустив этот код PHP: echo nl2br('rules = '.print_r( $wp_rewrite->rules, true) . "\n");

Кажется, что нет никакого встроенного способа редактировать маршрутизацию для страниц, так как структура постоянной ссылки применима только к сообщениям.

РЕДАКТИРОВАТЬ:

Больше случайной информации, которую я обнаруживаю: если ваша структура permalink_structure представляет собой пустую строку (которую вы можете выбрать «по умолчанию»), тогда WordPress полностью пропускает все перезаписи - я действительно не уверен, почему это так, но это так. ,

Александр Берд
источник
7

Фактическая информация - например, «слаг» для страницы или записи хранится в wp_posts под столбцом post_name. Обычно это slugified версия post_title, но она может быть перезаписана постранично.

Полная постоянная ссылка деконструируется в зависимости от того, какие настройки вы выбрали в меню «Настройки» -> «Постоянные ссылки», но фактический фрагмент находится в post_name в wp_posts.

Дейв Хилдич
источник
0

Информация о постоянной ссылке хранится в wp_options.

Имя таблицы: - $ wpdb-> prefix 'options'

И имя параметра поиска, например, «permalink_structure» в таблице параметров.

В этой строке таблицы вы можете просмотреть структуру постоянных ссылок.

Арвинд Пал
источник