Intereting Posts
эхо значение поля выбора метаданных сколько PHP-кодирования мне нужно знать, чтобы создать веб-блог, используя wordpress.org Тема для детей, не переопределяющая «включает» папку на сервере – на localhost, она делает Отсутствует сообщение из пользовательского типа сообщения facebook like – изображение и описание изображения Многостраничная проблема с заданной позицией Есть ли недостаток в использовании wp_defer_term_counting? Тема останавливает загрузчик мультимедиа от работы автор статьи thumbnail показать сообщение thumbnail Работает ли файл auto_update_plugin Filter при вводе в файл functions.php темы Больше тегов – как удалить предыдущий файл? Исключить конкретный user_id из args в get_comments Не удается найти, где изменить <html> attrbitutes Две установки WooCommerce на одном сервере, один отправляет электронные письма клиентам, а другой не Как получить сообщение, введя URL-адрес в настраиваемом поле и отображая его на странице параметров

WordPress не помнит мое пользовательское правило перезаписи

У меня есть следующий код:

function b09_custom_rewrite_rule() { add_rewrite_rule( 'utils/([^/]+)/?', 'index.php?utils=$matches[1]', 'top' ); flush_rewrite_rules(); } add_action('init', 'b09_custom_rewrite_rule', 10, 0); function b09_query_vars( $query_vars ) { array_push( $query_vars, 'utils' ); return $query_vars; } add_filter( 'query_vars', 'b09_query_vars' ); function b09_template_redirect(){ global $wp_query; $utils_page = get_query_var("utils"); var_dump( $utils_page ); if( $utils_page ): // custom function exit(); endif; } add_filter( 'template_redirect', 'b09_template_redirect' ); 

Все работает так, как ожидалось, но как только я flush_rewrite_rules() строку flush_rewrite_rules() , WordPress отключает это правило при следующей перезагрузке.

Есть идеи?

Спасибо @cybmeta за подсказку. Я искал свою тему и нашел другой flush_rewrite_rules(true); на крючке инициализации. Я удалил это, и теперь правило запоминается.

По-видимому, вызов функции дважды нарушает что-то. На самом деле это не имеет смысла, но теперь это работает, так что угодно 🙂