Обновление усилий WordPress настроек постоянной ссылки
-
25-09-2019 - |
Вопрос
У меня проблемы с вопросами создания новых блогов WordPress, где я устанавливаю постоянные ссылки через скрипт на тему активации. Однако, хотя они кажутся правильными, когда я проверяю настройки постоянной ссылки в WP, мои новые страницы бросают 404 ошибок.
Единственное исправление, которое я нашел, заключается в том, что я должен вернуться к параметрам Permalink и нажмите «Сохранить изменения», хотя, согласно дисплею, я не имел никаких изменений, чтобы сохранить ...
Я устанавливаю Постоянные ссылки к /% Postname% /
Вот как я это делаю.
if(get_option('permalink_structure')==""){update_option('permalink_structure', '/%postname%/');}
Этот скрипт запускается, когда моя тема активирована.
Любые идеи, почему это только частично делает работу?
Решение
Когда вы устанавливаете структуру постоянной ссылки на панели «Настройки WordPress», это вызывает set_permalink_structure
функция внутри wp_includes/rewrite.php
. Отказ В дополнение к установке permalink_structure
Опция Эта функция также повторно поднимает компонент Rewrite WordPress и работает permalink_structure_changed
действие.
Вы должны вызвать эту функцию вместо того, чтобы установить опцию напрямую, что-то вроде этого должна работать:
if (get_option('permalink_structure') == '') {
global $wp_rewrite;
$wp_rewrite->set_permalink_structure('/%postname%/');
}