Задать вопрос
@KoystrubVS

Сохранение города как на Авито?

Как можно реализовать сохранение города выбранным пользователем? На Авито или sbagry.com при выборе города, сайт запоминает выбор и далее пока не выберешь другой, будешь попадать на главную страницу этого города.
Интересует любой способ, вообще интересно есть ли решение для wordpress.
  • Вопрос задан
  • 558 просмотров
Подписаться 1 Средний Комментировать
Ответ пользователя Иван Козлов К ответам на вопрос (3)
trampick
@trampick
Веб-разработчик
Так можно определить текущий город по ip
$server = $_SERVER['REMOTE_ADDR'];
$rrs = file_get_contents("http://api.sypexgeo.net/json/" . $server);
$obj = json_decode($rrs);
print_r($obj);//Здесь хранятся необходимые данные. Выбирай что нужно - страна, регион, город.

Сохранять данные нужно с помощью session
Так нужно инициализировать сессии в functions.php
add_action('init', 'myStartSession', 1);
add_action('wp_logout', 'myEndSession');
add_action('wp_login', 'myEndSession');

function myStartSession() {
    if(!session_id()) {
        session_start();
    }
}

function myEndSession() {
    session_destroy ();
}

Так сохранить и получить данные
//сохраняем
$_SESSION['city'] = 'Город'; 
//Получаем
if(isset($_SESSION['city'])) {
    $city = $_SESSION['city'];
} else {
    $city= '';
}
Ответ написан