Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 685 Просмотров
*

Atlantis114

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Добрый день. На сайте подключено несколько форм обратной связи (Super simple contact form). Для Яндекс Метрики необходимо, что бы каждая кнопка отправки, в теге input содержала свой - onclick="yaCounterXXXXXX.reachGoal('TARGET_NAME'); return true;".

Я пошел по адресу modules\mod_super_simple_contact_form\tmpl.php там дополнил код
<input class='rf_submit' type="submit" value="<?php echo $params->get('message_button'); ?>" id="send<?php echo $idmodule ?>" name="submitcontactform<?php echo $idmodule ?>" onclick="yaCounterXXXXXX.reachGoal('TARGET_NAME'); return true;" />

Все работает, НО мне необходимо, что бы у каждой формы был свой индивидуальный метод reachGoal, а не общий на все.
Спойлер
[свернуть]

Подскажите пожалуйста, как можно внести изменения для каждого модуля в отдельности ?


*

lexxbry

  • Живу я здесь
  • 2387
  • 67 / 8
как минимум переопределить в шаблоне
и сделать копии с изменениями для tmpl.php
а потом в модуле как шаблон выбрать их(если это возможно не работал просто с этим модулем)
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
в коде, приведенном вами, есть $idmodule
вот к нему и привязывайтесь
Например:

Код
if ($idmodule == 123) {
$TARGET_NAME = "xxx";
} elseif (....) {}

А в onclick подставляете уже переменную $TARGET_NAME
*

draff

  • Гуру
  • 5803
  • 434 / 7
  • ищу работу
Для Яндекс Метрики необходимо, что бы каждая кнопка отправки, в теге input содержала свой - onclick="yaCounterXXXXXX.reachGoal('TARGET_NAME'); return true;".
Не верьте всему сказанному .Назначьте каждому создаваемому модулю суффикс класса модуля, который будет служит селектором. И потом аналогично моему способу, для каждого селектора свой таргет.
*

Atlantis114

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
в коде, приведенном вами, есть $idmodule
вот к нему и привязывайтесь
Например:

Код
if ($idmodule == 123) {
$TARGET_NAME = "xxx";
} elseif (....) {}

А в onclick подставляете уже переменную $TARGET_NAME

Благодарю за подсказку, не могли бы подсказать, что я сделал не верно ? на JS такая конструкция бы работала.

<input class='rf_submit' type="submit" value="<?php echo $params->get('message_button'); ?>" id="send<?php echo $idmodule ?>" name="submitcontactform<?php echo $idmodule ?>" onclick="yaCounter123456.reachGoal('<?php echo $target_name ?>'); return true;"/>


        <?php if($idmodule == 'send89') : ?>
            $target_name = 123;
        <?php endif; ?>

Ничего не подставляет, ID кнопки прописан верно.
*

Atlantis114

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Не верьте всему сказанному .Назначьте каждому создаваемому модулю суффикс класса модуля, который будет служит селектором. И потом аналогично моему способу, для каждого селектора свой таргет.

Благодарю за помощь, подскажите только в каком виде должна быть запись в php, что бы шла подстановка в JS, по вашей конструкции.
*

draff

  • Гуру
  • 5803
  • 434 / 7
  • ищу работу
подскажите только в каком виде должна быть запись в php
Только через параметры модуля и вставкой JavaScript в шаблон, иначе при обновлении модуля изменения в файле затрутся.
*

Atlantis114

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Только через параметры модуля и вставкой JavaScript в шаблон, иначе при обновлении модуля изменения в файле затрутся.
Блин не догоняю малость)))

Значить в default.php я ничего не дописываю, не изменяю.
Вот код моей выводимой кнопки: <input class='rf_submit' type="submit" value="Позвоните мне" id="send89" name="submitcontactform89" />

Если я в JS (jQuery) пропишу

jQuery('#send89').on('click', function() {
    yaCounterXXXXXXX.reachGoal('имя_цели');
});

У меня ничего не будет происходить. 

*

draff

  • Гуру
  • 5803
  • 434 / 7
  • ищу работу
У меня ничего не будет происходить.
На сайте не будет, а цель будет в списке целей Яндекс активной. НО если правильно настроен JavaScript, т.е нет конфликта яваскриптов и правильно выбран селектор.-
*

Atlantis114

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
На сайте не будет, а цель будет в списке целей Яндекс активной. НО если правильно настроен JavaScript, т.е нет конфликта яваскриптов и правильно выбран селектор.-
Спасибо буду пробовать.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться