madvolkov 0 Posted March 4, 2019 Report Share Posted March 4, 2019 Подскажите пожалуйста ! Есть кнопка добавления в корзину. она выведена такой вот меткой. {$ADD_CART_BUTTON} Как к ней привязать код метрики, чтобы отслеживать нажатие на эту кнопку ? В includes/modules/product_info.php есть такое вот: if ($product->data['products_fsk18'] == '0') { $info->assign('ADD_QTY', vam_draw_input_field('products_qty', '1', 'size="3"').' '.vam_draw_hidden_field('products_id', $product->data['products_id'])); $info->assign('ADD_CART_BUTTON', vam_image_submit('buy.jpg', IMAGE_BUTTON_IN_CART, 'id="add_to_cart"')); } как я понимаю мне надо такой вот код прикрутить к этой кнопке onclick="ym(XXXXXX, 'reachGoal', 'TARGET_NAME'); return true;" ....в какой файле это делать ? Link to post Share on other sites
madvolkov 0 Posted March 4, 2019 Author Report Share Posted March 4, 2019 Обрамляю кнопку так вот , но в яндекс метрику ничего не приходит почему то ? <a href="#" onclick="yaCounter757516.reachGoal('najal_kupit'); return true;"> {$ADD_CART_BUTTON}</a> такой вот скрипт тоже не даёт результатов ...как сделать то ? {literal} <script> $( "#add_to_cart" ).click(function() { // alert( "Handler for .click() called." ); ym(757516, 'reachGoal', 'najal_kupit'); }); </script> {/literal} Link to post Share on other sites
support 447 Posted March 4, 2019 Report Share Posted March 4, 2019 1 час назад, madvolkov сказал: Обрамляю кнопку так вот , но в яндекс метрику ничего не приходит почему то ? <a href="#" onclick="yaCounter757516.reachGoal('najal_kupit'); return true;"> {$ADD_CART_BUTTON}</a> такой вот скрипт тоже не даёт результатов ...как сделать то ? {literal} <script> $( "#add_to_cart" ).click(function() { // alert( "Handler for .click() called." ); ym(757516, 'reachGoal', 'najal_kupit'); }); </script> {/literal} Не знаю, надо смотреть, может у Вас ошибки на странице, может код неправильный. Ищите примеры готовые и де лайте по аналогии. Я как-то делал, проблем не было. Судя по Вашему коду, у Вас кнопка всё равно не рабочая ведь и ничего не делает. Link to post Share on other sites
support 447 Posted March 4, 2019 Report Share Posted March 4, 2019 1 час назад, madvolkov сказал: Обрамляю кнопку так вот , но в яндекс метрику ничего не приходит почему то ? <a href="#" onclick="yaCounter757516.reachGoal('najal_kupit'); return true;"> {$ADD_CART_BUTTON}</a> такой вот скрипт тоже не даёт результатов ...как сделать то ? {literal} <script> $( "#add_to_cart" ).click(function() { // alert( "Handler for .click() called." ); ym(757516, 'reachGoal', 'najal_kupit'); }); </script> {/literal} Вот посмотрите рабочий пример. Например здесь - https://vamvelosiped.ru/kupit_pokryshka-kenda-26h195-k847-kross-plus_5-527625.html Ищите код по goal Link to post Share on other sites
madvolkov 0 Posted March 4, 2019 Author Report Share Posted March 4, 2019 Да, спасибо. Просто немного изменил вызов функции метрики вместо ym(757516, 'reachGoal', 'najal_kupit'); которая выдавала ошибку в консоле. сделал так вот: <script> $( document ).ready(function() { $( "#add_to_cart" ).click(function() { //alert( "Handler for .click() called." ); //ym(757516, 'reachGoal', 'najal_kupit'); yaCounter757516.reachGoal('najal_kupit'); }); }); </script> теперь всё работает. кнопка кстати тоже рабочая...она аяксом в корзину кладёт товары. Link to post Share on other sites
support 447 Posted March 4, 2019 Report Share Posted March 4, 2019 17 минут назад, madvolkov сказал: Да, спасибо. Просто немного изменил вызов функции метрики вместо ym(757516, 'reachGoal', 'najal_kupit'); которая выдавала ошибку в консоле. сделал так вот: <script> $( document ).ready(function() { $( "#add_to_cart" ).click(function() { //alert( "Handler for .click() called." ); //ym(757516, 'reachGoal', 'najal_kupit'); yaCounter757516.reachGoal('najal_kupit'); }); }); </script> теперь всё работает. кнопка кстати тоже рабочая...она аяксом в корзину кладёт товары. Не за что. Хорошо, что разобрались. Link to post Share on other sites
IVAN.Z 2 Posted June 5, 2020 Report Share Posted June 5, 2020 Подскажите, есть кнопка запрос консультации, правильно ли настроена форма для метрики? {literal}<script id="bx24_form_button" data-skip-moving="true"> (function(w,d,u,b){w['Bitrix24FormObject']=b;w[b] = w[b] || function(){arguments[0].ref=u; (w[b].forms=w[b].forms||[]).push(arguments[0])}; if(w[b]['forms']) return; var s=d.createElement('script');s.async=1;s.src=u+'?'+(1*new Date()); var h=d.getElementsByTagName('script')[0];h.parentNode.insertBefore(s,h); })(window,document,'https://****.bitrix24.ru/bitrix/js/crm/form_loader.js','b24form'); b24form({"id":"4","lang":"ru","sec":"bq1eld","type":"button","click":""}); </script>{/literal}<button class="btn btn-secondary onclick="ym(62762593, 'reachGoal', 'bx24_form_button'); data-toggle="tooltip" data-placement="top" title="Оставьте заявку и мы вам перезвоним">Запросить консультацию</button> В таком видео не срабатывает к сожалению может я не так что-то прописал кто вкурсе кто подсказать может Link to post Share on other sites
support 447 Posted June 5, 2020 Report Share Posted June 5, 2020 Так а в метрике цель "bx24_form_button" создана?! и зачем в <script> добавлен id="bx24_form_button" !? Это к метрике не имеет отношения. Либо вот так ещё, как выше писали, в зависимости от того, какой код метрике, будет работать либо тот либо тот код. onclick="yaCounter62762593.reachGoal('bx24_form_button');" 1 час назад, ZM сказал: В таком видео не срабатывает к сожалению может я не так что-то прописал кто вкурсе кто подсказать может Link to post Share on other sites
IVAN.Z 2 Posted June 5, 2020 Report Share Posted June 5, 2020 ок спс буду пробывать, щас вот на кнопку в корзину сначла попробую сделать цель. <button class="btn btn-inverse checkout btn-block" onclick="ym(62762593,'reachGoal','cart')"><i class="fas fa-shopping-cart"></i> {$smarty.const.IMAGE_BUTTON_IN_CART}</button> Так примерно? Link to post Share on other sites
support 447 Posted June 5, 2020 Report Share Posted June 5, 2020 4 минуты назад, ZM сказал: Так примерно? Да Link to post Share on other sites
IVAN.Z 2 Posted June 5, 2020 Report Share Posted June 5, 2020 Спасибо, наконец то научился делать то что не мог годами, а все так просто, но это пока только с кнопкой ) Link to post Share on other sites
support 447 Posted June 5, 2020 Report Share Posted June 5, 2020 Хорошо, что разобрались. Link to post Share on other sites
Chinyakin 0 Posted December 29, 2020 Report Share Posted December 29, 2020 <div class="col-auto mt-1"> <a class="btn btn-add-to-cart btn-block{if $IN_WISHLIST} btn-outline-danger text-danger{/if}" href="index.php?action=wishlist_now&BUYproducts_id={$PRODUCTS_ID}" onclick="doWishlistNow('{$PRODUCTS_ID}','1'); return false;" data-toggle="tooltip" title="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}" aria-label="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}"><i class="{if $IN_WISHLIST}fas{else}far{/if} fa-heart"></i></a> </div> Изменилось как то все с последнего раза, как правильно интегрировать onclick="yml.... в какое место вставить ? onclick="ym(***,'reachGoal','bay') <div class="col-auto mt-1"> <a class="btn btn-add-to-cart btn-block{if $IN_WISHLIST} btn-outline-danger text-danger{/if}" href="index.php?action=wishlist_now&BUYproducts_id={$PRODUCTS_ID}" onclick="doWishlistNow('{$PRODUCTS_ID}','1'); return false;" data-toggle="tooltip" title="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}" aria-label="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}"><i class="{if $IN_WISHLIST}fas{else}far{/if} fa-heart"></i></a> </div> Изменилось как то все с последнего раза, как правильно интегрировать onclick="yml.... в какое место вставить ? onclick="ym(55667713,'reachGoal','buy')" Link to post Share on other sites
support 447 Posted December 29, 2020 Report Share Posted December 29, 2020 24 минуты назад, Chinyakin сказал: <div class="col-auto mt-1"> <a class="btn btn-add-to-cart btn-block{if $IN_WISHLIST} btn-outline-danger text-danger{/if}" href="index.php?action=wishlist_now&BUYproducts_id={$PRODUCTS_ID}" onclick="doWishlistNow('{$PRODUCTS_ID}','1'); return false;" data-toggle="tooltip" title="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}" aria-label="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}"><i class="{if $IN_WISHLIST}fas{else}far{/if} fa-heart"></i></a> </div> Изменилось как то все с последнего раза, как правильно интегрировать onclick="yml.... в какое место вставить ? onclick="ym(***,'reachGoal','bay') <div class="col-auto mt-1"> <a class="btn btn-add-to-cart btn-block{if $IN_WISHLIST} btn-outline-danger text-danger{/if}" href="index.php?action=wishlist_now&BUYproducts_id={$PRODUCTS_ID}" onclick="doWishlistNow('{$PRODUCTS_ID}','1'); return false;" data-toggle="tooltip" title="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}" aria-label="{if $IN_WISHLIST}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_WISHLIST}{/if}"><i class="{if $IN_WISHLIST}fas{else}far{/if} fa-heart"></i></a> </div> Изменилось как то все с последнего раза, как правильно интегрировать onclick="yml.... в какое место вставить ? onclick="ym(55667713,'reachGoal','buy')" Так выше madvolkov показал пример как сделать если уже занят атрибут onclick Для карточки товара он там пример кода показал. Link to post Share on other sites
Chinyakin 0 Posted December 29, 2020 Report Share Posted December 29, 2020 А куда вставить этот скрипт? в какое место? много у одной кнопки кода стало.. Link to post Share on other sites
support 447 Posted December 29, 2020 Report Share Posted December 29, 2020 3 минуты назад, Chinyakin сказал: А куда вставить этот скрипт? в какое место? много у одной кнопки кода стало.. Например в /templates/vamshop4/javascript/local_footer.js.php Всё осталось тоже самое. Эта тема ведь про карточку товара. Link to post Share on other sites
Chinyakin 0 Posted January 3, 2021 Report Share Posted January 3, 2021 Вы могли бы привести пример полного кода кнопки с такой меткой? Link to post Share on other sites
support 447 Posted January 3, 2021 Report Share Posted January 3, 2021 1 час назад, Chinyakin сказал: Вы могли бы привести пример полного кода кнопки с такой меткой? В Админке - Настройки - Вывод товара - Показывать атрибуты товара в списке товара внутри категорий должно стоять true Откройте шаблон списка товара внутри категорий /templates/vamshop4/module/components/product-card/product-card-attributes.html и в код кнопки: <button class="cart-link-{$module_data.PRODUCTS_ID} btn btn-inverse checkout btn-block{if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1} active{/if}" data-toggle="tooltip" title="{if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1}{$smarty.const.IMAGE_BUTTON_IN_CART_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_CART}{/if}" aria-label="{if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1}{$smarty.const.IMAGE_BUTTON_IN_CART_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_CART}{/if}"><i class="cart-icon-{$module_data.PRODUCTS_ID} {if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1}text-danger fas fa-cart-plus{else}fas fa-shopping-cart{/if}"></i></button> добавляйте onlick. Примерно так: <button onclick="yaCounterXXXXXX.reachGoal('ваша-цель'); return true;" class="cart-link-{$module_data.PRODUCTS_ID} btn btn-inverse checkout btn-block{if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1} active{/if}" data-toggle="tooltip" title="{if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1}{$smarty.const.IMAGE_BUTTON_IN_CART_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_CART}{/if}" aria-label="{if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1}{$smarty.const.IMAGE_BUTTON_IN_CART_IN}{else}{$smarty.const.IMAGE_BUTTON_IN_CART}{/if}"><i class="cart-icon-{$module_data.PRODUCTS_ID} {if $smarty.session.cart->in_cart({$module_data.PRODUCTS_ID}) == 1}text-danger fas fa-cart-plus{else}fas fa-shopping-cart{/if}"></i></button> Либо через JS как выше указано. В этом же файле добавить внизу что-то вроде: <script> $(document).ready(function() { $("cart-link-{$module_data.PRODUCTS_ID}").click(function() { //alert("Handler for .click() called."); //ym(XXXXXX, 'reachGoal', 'ваша-цель'); yaCounterXXXXX.reachGoal('ваша-цель'); }); }); </script> Link to post Share on other sites
Chinyakin 0 Posted January 3, 2021 Report Share Posted January 3, 2021 Спасибо! Link to post Share on other sites
support 447 Posted January 3, 2021 Report Share Posted January 3, 2021 43 минуты назад, Chinyakin сказал: Спасибо! Надеюсь, что разберётесь. Ничего сложного, на самом деле. Нужно только основы JS понимать. Link to post Share on other sites
Recommended Posts