Чтобы настроить тестирование A / B (через GG Analytics), я планировал дублировать текущую тему (для организаций), чтобы использовать дублируемую тему для выполнения альтернативных версий теста. Я использую Prestashop 1.4.9.2
.
То, что я уже сделал, и работает:
Добавлено это в /classes/FrontController.php
, в функции displayHeader()
(я знаю, что я должен переопределить, но не точку;)) :
if(isset($_GET['alternate'])) { $cookie->alternate = "1"; $cookie->write(); }
-if(isset($_GET['alternate'])) { $cookie->alternate = "1"; $cookie->write(); }
Заменено в /config/settings.inc.php
:
define('_THEME_NAME_', 'my_usual_theme');
от
if(isset($_GET['alternate']) || $cookie->alternate == "1") { define('_THEME_NAME_', 'my_alternate_theme'); } else { define('_THEME_NAME_', 'my_usual_theme'); }
Таким образом, когда я загружаю свой Prestahop url с « ?alternate
» в конце, он загружает альтернативную тему. Хорошо.
ПРОБЛЕМА : я не могу проверить значение cookie в settings.inc.php
, поэтому, когда я нажимаю ссылку, он загружает тему по умолчанию.
ВОПРОС : Любая подсказка для проверки файла cookie в этом файле? Или config.inc.php
? Или «переопределить» название темы в другом файле, переопределив settings.inc.php
?
Обратите внимание, что я проверяю файл cookie в другом файле для проверки процесса, и он работает хорошо. Я также пытался использовать классический метод setcookie
, но если я могу читать / проверять, я не могу писать таким образом … И по какой-то причине я не получаю, PHP-активация в Smarty просто не работает (пыталась setcookie
непосредственно в шаблоне, но ошибка 500 даже с простым эхом).
Благодарю.