@freeeeez

Как настроить чпу в wordpress?

Приветствую, подскажите в чем проблема.
Имеется сайт на WordPress.
Есть каталог квартир с URL /catalog/offer?id=123
А нужно привести к виду /catalog/offer/123

.htaccess выглядит так:
RewriteEngine on
RewriteRule ^catalog/offer/([0-9]+)$ catalog/offer/?id=$1 [L]

Но это не работает. Как применить правило?
  • Вопрос задан
  • 137 просмотров
Решения вопроса 1
irtek
@irtek
Wordpress-addicted
Вам тогда нужно обновить ЧПУ внутри WP. Добавьте следующий код в functions.php вашей темы

function rewrites_init_q1226714( $rules ) {
	add_rewrite_rule( 'catalog/offer/([0-9]+)$', 'index.php?pagename=catalog/offer&id=$matches[1]', 'top' );

	return $rules;
}

add_action( 'init', 'rewrites_init_q1226714' );


На всякий случай после добавления кода зайдите в Настройки - Постоянные ссылки и пересохраните настройки, чтобы обновить ЧПУ.

Здесь по урлу /catalog/offer/123 откроется страница /catalog/offer и в ней будет $_GET параметр id с 123
Соответственно у вас должна быть страница catalog к ней прикреплена страница offer с родительской страницей catalog и у страницы offer в шаблоне вы получите GET параметр с id

Работая со вторым блоком, где index.php?pagename вы можете открывать там любой пост тип, категорию, тэг и т.п. меняя параметры, вплоть до конкретного ?post=123 и т.д.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы