Intereting Posts
Удалите типы сообщений по умолчанию на всех сайтах, кроме основного блога. WPMU Нет файла журнала ошибок, нет информации об отладке Шаблон для WordPress RSS Очистка: лучший способ удалить комментарии WooCommerce из таблицы wp_comments Как сделать метод из плагина доступным в теме? Как удалить элементы из + Новое меню администратора? Невозможно отобразить значок с помощью get_favicon ()? Блог установлен в подкаталоге, но нужно создавать страницы в корне. Как использовать постоянные ссылки? Обновление тематического местоположения Как я могу получить свои варианты в json-ответе? Детский раздел Как передать все пользовательские данные между установками wordpress? Автоматически назначать таксономический термин, если существует обычное метазначение Должен ли я загружать всю директорию WP для каждого отдельного экземпляра / веб-сайта, который использует WP? CMB2 условная логика обмена

Проблемы с правилом перезаписи

Я действительно не могу это понять.

Что я хочу сделать, это URI http://www.hotels-lithuania.net/index.php?page=76&type=hotels&id=1 преобразовать в http://www.hotels-lithuania.net/item/hotels/ 1 . Фактически я прочитал тонны страниц, к чему я пришел:

add_action( 'init', 'wpa5413_init' ); function wpa5413_init() { add_rewrite_rule( 'item/([^/]+)/([^/]+)?', 'index.php?page=76&type=$matches[1]&id=$matches[2]', 'top' ); } add_filter( 'query_vars', 'wpa5413_query_vars' ); function wpa5413_query_vars( $query_vars ) { $query_vars[] = 'type'; $query_vars[] = 'id'; return $query_vars; } 

Если я войду в hotels-lithuania.net/item/hotels/1 в свой браузер, он порежет отелям-lithuania.net/item/ и cc никакие предметы не отображаются.

Экран из плагина анализатора перезаписи: i.stack.imgur.com/AgNoq.png

Извините за плохие гиперссылки, но я новичок здесь и не могу опубликовать

EDIT: Я не знаю, почему, но у меня был guid в моем db со значением localhost / hotel /? page_id = 76 Итак, мой последний файл rewrite_rule выглядит так:

 add_action( 'init', 'wpa5413_init' ); function wpa5413_init() { add_rewrite_rule( 'item/([^/]+)/([^/]+)?', 'index.php?page_id=76&itemType=$matches[1]&itemId=$matches[2]', 'top' ); } add_filter( 'query_vars', 'wpa5413_query_vars' ); function wpa5413_query_vars( $query_vars ) { $query_vars[] = 'itemType'; $query_vars[] = 'itemId'; return $query_vars; } 

И используя эти переменные с:

 global $wp; $type = $wp->query_vars['itemType']; $id = $wp->query_vars['itemId']; 

Solutions Collecting From Web of "Проблемы с правилом перезаписи"

Я подозреваю, что у вас конфликт с вашими запросами. id уже является запросом WordPress var, а type – зарезервированным словом. Вы должны использовать vars, который, как вы знаете, будет уникальным среди ядра и любого плагина, который вы можете использовать, префикс всего, например zilvinas_id и zilvinas_type .