Значение переменной в урл

158
02 марта 2018, 18:04

Работаю в wordpress. У меня есть переменная с именем города.

$vibor_pol = get_term_by('name', $_SESSION['sity'], 'post_tag');
$tax_term_id = $vibor_pol->slug; //получаем эту переменную

Например, voronezh. Переменная передается GET-запросом. Я пытаюсь сделать url вида site.ru/voronezh/news.

Т.е. после site.ru всегда идет название города, а потом все остальное.

site.ru/news1/?city=voronezh должно превращаться в site.ru/voronezh/news1/

Пример можно посмотреть на https://auto.ru/.

Вот мой код. Его я вставил в functions.php:

function rewrite_rules() {
    // Теги
    add_rewrite_tag( '%sity%', '([^&]+)', 'sity=' );
    // Правило перезаписи
    add_rewrite_rule( '^([^/]*)/?', 'index.php?sity=$matches[1]', 'top' );
    // Скажем WP, что есть новые параметры запроса
    add_filter( 'query_vars', function( $vars ) {
        $vars[] = 'sity';
        return $vars;
    } );
}
add_action( 'init', 'rewrite_rules' );

И подскажите, %sity% - нужно же вставлять в произвольные ссылки в админке?

Может я не там пишу код. Может это нужно делать в .htaccess. Я пробовал очень много вариантов. Ничего не работает.

Хелп ми плиз.

READ ALSO
Как заменить версию php в консоли?

Как заменить версию php в консоли?

Mac OS High Siera Установил php 72 с помощью brew

141
.htaccess переадресация с папки на поддомен

.htaccess переадресация с папки на поддомен

Подскажите как сделать так, чтобы при заходе по адресу http://sitecom/sub или http://www

141
Что изучить web-программисту? [требует правки]

Что изучить web-программисту? [требует правки]

Учусь на третьем курсеЧерез год начнется взрослая жизнь и надо бы искать работу :с

145
Как убрать пункт из хлебных крошек woocommerce

Как убрать пункт из хлебных крошек woocommerce

На сайте имеются хлебные крошки такого вида:

159