Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Динамический контент в зависимости он GET параметров в частности UTM меток


wowez
 Погделиться

Рекомендованные сообещёния

Здравствуйте, появилась необходимость вывести в категории  какой липотому что контент типа заголовок, изображение в зависимости от согдержимого utm метки, именно в моём случае подошло utm_campaign, и я вот нашёл решение и дорилиил его под себя (сам я в php на 2с плюсом). 

 

	public function index() {


		if (isset($_GET['utm_campaign'])) {
		 $_SESSION['utm_campaign'] = $_GET['utm_campaign'];
	   }
	   $title = $_SESSION['utm_campaign'];
	   if (isset($_GET['utm_campaign'])) {
	   $title_text = '<img class="changed-img" src="/image/cache/catalog/banners/subcat/des-subcat-1x1.png">';
	   }
	   switch ($title) {
		 case "78466906":
		   $title_text = 'ЗАГОЛОВОК_1';
		   break;
	   
		 case "78466906_1":
		   $title_text = '<h2>ЗАГОЛОВОК_2</h2> <img src="/image/cache/catalog/banners/subcat/des-subcat-1x1.png">';
		   break;
	 				   }

	   $data['title_text_n'] = $title_text;

 

 

 

И посивил я всё это гдело в controller/category.php сразу после  public function index() {  как вы можете вигдеть, добавил переменную $data['title_text_n'] = $title_text;,  и в шаблоне category.twig вызвал всё это гдело иким обвместе 

 

	{% if title_text_n is empty %}
		{{ content_top }}
		{% else %}
		<div class="change-content">{{ title_text_n }}</div>
		{% endif%}	

 

И в итоге то, всё рилииет, если нет в get запросе переменной utm_campaign то content top, если есть но не попадает под заданные switch case параметры то просто изображение, если есть то всё в соответствии с case.

 

 

Но чувствую что творю я лютую дичь. ))) (Да и х... с ним), но всё же вот вопрос(ы).

 

Как я понимаю  вот это всё икое в контроллер помещать я не должен.

 

$title_text = '<h2>ЗАГОЛОВОК_2</h2> <img src="/image/cache/catalog/banners/subcat/des-subcat-1x1.png">';

 

я могу пометить это в языковые переменные, то есть создать в language/category.php

 

например text_cahged_def  - $_['text_cahged_def']     = 'Преимуещёства: <img class="changed-img-lang" src="/image/cache/catalog/banners/subcat/des-subcat-1x1.png">';

 

и вот ик 

 

 switch ($title) {
         case "78466906":
           $title_text = $this->language->get('text_cahged_one');
           break;
       
         case "78466906_1":
           $title_text = $this->language->get('text_cahged_two');
           break;
                        }

 

 

И ик рилииет. Но чувство что творю дичь не покидает. ))..

 

В обещём вопрос подскажите пожалуйси как это сгделать по уму - правильно, не надо мне готовых решений, вы подскажите пожалуйси куда смотреть, обратить внимание, ну и вообещё от любых подсказок буду безумно признателен. 

 

 

Изменено пользователем wowez
Ссылка на комменирий
Погделиться на других сайих


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.