Поддержка Проблемы и решения Перестали работать add_rewrite_rule после смены url

  • Всем привет.
    Долгое время на сайте работали ЧПУ через functions.php
    Сейчас возникла необходимость поменять url у рубрики, заменил ярлык у рубрики, поправил functions.php но при попытке пройти по новому url получаю 404

    Код functions.php:

    if (!function_exists('custom_rewrite_basic'))
    	{
    	function custom_rewrite_basic() {
    		
    		add_filter( 'query_vars', function( $vars ){
    			$vars[] = 'events_archive';
    			return $vars;
    		} );
    		
    	  add_rewrite_rule('^category/what-to-do-in-moscow/archive/?', 'index.php?category_name=what-to-do-in-moscow&events_archive=true', 'top');
    	}
    	}
    add_action('init', 'custom_rewrite_basic');

    Если пройти по адресу index.php?category_name=what-to-do-in-moscow&events_archive=true — всё работает…

    Пробовал несколько раз нажимать кнопку Сохранить в настройке ЧПУ, пробовал вызывать
    flush_rewrite_rules() под add_rewrite_rule — без результатов.
    Кстати помню что когда делал рерайт первый раз тоже всё было не слава Богу, но потом как-то резко заработало…

    Такое чувство что где-то что-то кешируется, но где?

    • Тема изменена 5 лет, 9 месяцев назад пользователем noindex.
Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Так, ну чутье не подвело, старые url хранятся в базе, wp_options, option_name = rewrite_rules — http://prntscr.com/k1ynfe
    Как их оттуда выкурить ?%)

    Модератор Yuri

    (@yube)

    Программно — flush_rules (небыстрая операция)
    Вручную — «сохранить» в настройке постоянных ссылок.

    @yube, какая-то ерунда…
    Я десятки раз нажимал на Сохранить в настройках ЧПУ и ничего, сейчас нажал еще один раз и сработало…
    Такая же ерунда была и в первый раз, когда правила только добавлялись.
    WP 4.9.6

    В любом случае спасибо большое!:)

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «Перестали работать add_rewrite_rule после смены url» закрыта для новых ответов.