WordPress как на ладони
wordpress jino

flush_rules() WP 2.0.1

Обновляет правила перезаписи ссылок (ЧПУ) в базе данных и кэше.

С версии 3.0. для обновления правил перезаписи существует функция-обертка flush_rewrite_rules().

Нужно использовать после добавления новых правил перезаписи УРЛов, чтобы новые правила вступили в силу, иначе новые правила перезаписи работать не будут. Новые правила добавляются функцией add_rewrite_rule().

Не надо использовать функцию каждый раз при загрузке страницы. Не вешайте функцию на хуки, который вызывается при загрузке страницы, типа: initflush_rules() достаточно требовательна к ресурсам, поэтому, её нужно использовать одноразово, например, во время активации/деактивации плагина/темы.

Хуков нет.

Возвращает

Функция ничего не возвращает.

Использование

$wp_rewrite->flush_rules();

Шаблон использования

$GLOBALS['wp_rewrite']->flush_rules();

Примеры

#1. Пример обновления правил перезаписи УРЛов:

// Убедимся, что переменная $wp_rewrite определена глобально
global $wp_rewrite;
$wp_rewrite->flush_rules();

#2. Пример обновления правил перезаписи с использованием функции flush_rewrite_rules(), во время активации плагина:

register_activation_hook( __FILE__, 'author_base_rewrite' );
function author_base_rewrite(){
	flush_rewrite_rules( false );
}

flush_rewrite_rules( false ) - false указывает, что не нужно обновлять файл .htaccess, если не указать false, то файл .htaccess будет обновлен в соответствии с правилами.

Заметки

WordPress сохраняет все правила перезаписи в кэше. Иногда плагины, темы или функции могут добавить свои, новые правила перезаписи и WordPress ничего не будет знать об этих новых правилах, до тех пор, пока все правила не будут перезаписаны (обновлены).

Это не обычная функция, а метод класса WP_Rewrite, поэтому при вызове этого метода, нужно убедится что переменная $wp_rewrite, содержащая в себе экземпляр класса WP_Rewrite, определена глобально. Вызывать метод нужно по правилам классов: $wp_rewrite->flush_rules();.

ВАЖНО: Этот метод (функция) вызывается во время обновления настроек ЧПУ, поэтому для частного обновления правил перезаписи можно зайти на страницу настроек ЧПУ (параметры > постоянные ссылки) и, ничего не меняя, сохранить настройки.

Cвязанные функции

Из метки: Ненужные (устарелые запрещенные не используемые)

Еще из метки: Rewrite (ЧПУ перезапись)

flush_rules Комментариев нет

Здравствуйте, !

Ваш комментарий