Передать переменную из init.php(hw_subscribe_popup) в .tpl шаблона

stasok

Мастер
Регистрация
25 Фев 2013
Сообщения
217
Реакции
31
В файл /templates/addons/hw_subscribe_popup/hooks/index/footer.post.tpl

В двух словах в init.php у меня формируется переменная - регион посетителя по ip.
Мне нужно на её основании в шаблоне вывести тот или иной код.
Буду очень благодарен.

Код:
$ip;
    if (!empty($_SERVER['HTTP_CLIENT_IP']))
     { $ip=$_SERVER['HTTP_CLIENT_IP']; }
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
     {$ip=$_SERVER['HTTP_X_FORWARDED_FOR']; }
    else {$ip=$_SERVER['REMOTE_ADDR']; }
 
    include("SxGeo/SxGeo.php");
    $SxGeo = new SxGeo('SxGeo/SxGeoCity.dat', SXGEO_BATCH | SXGEO_MEMORY);
 
    $SxGeo->getCityFull($ip);
    $gorod  = $SxGeo->getCityFull($ip);
 
    //echo $gorod[city][name_en]; - выводится.
    //$this->assign('pop_country', $gorod[city][name_en]); - даёт ошибку.
 
Самое простое решение - это записать в массив $_SESSION['auth] - нужное значение при вызове данного скрипта. И уже обращаться к нему через переменную $auth. К сожалению передать перменную через смарти можно лишь в том контроллере, который вызовет нужный шаблон.
 
//$this->assign('pop_country', $gorod[city][name_en]); - даёт ошибку.
Какая версия CS-Cart? В 4.3.3 нужно передавать переменную так:
Tygh::$app['view']->assign('pop_country', $gorod[city][name_en]);
 
Назад
Сверху