【问题标题】:Set up Google Analytics onclick tracking breaks site设置 Google Analytics onclick 跟踪中断站点
【发布时间】:2015-03-01 13:27:48
【问题描述】:

我正在我的网站上设置 GA o'clock 跟踪,它适用于我插入它的地方。当我尝试将其放入以下代码时,它会破坏网站 - 如何在此处正确集成代码以跟踪 onclick 事件?

我使用下面的代码 sn-p 来集成到我想要跟踪的标签中:

onClick="ga('send', 'event', 'AmzClickout', 'PDPCta', '<?php echo esc_attr( $product->get_sku() ); ?>');"

但是,如果我尝试将其放入下面的代码中,它会中断。

<?php
    /**
     * Loop Add to Cart
     *
     * @author      WooThemes
     * @package     WooCommerce/Templates
     * @version     2.1.0
     */

    if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

    global $product;

    echo apply_filters( 'woocommerce_loop_add_to_cart_link',
        sprintf( '<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" data-quantity="%s" class="button %s product_type_%s">%s</a>',
            esc_url( $product->add_to_cart_url() ),
            esc_attr( $product->id ),
            esc_attr( $product->get_sku() ),
            esc_attr( isset( $quantity ) ? $quantity : 1 ),
            $product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '',
            esc_attr( $product->product_type ),
            esc_html( $product->add_to_cart_text() )
        ),
    $product );

非常感谢!

【问题讨论】:

  • “破坏站点”是指您收到 PHP 错误还是 javascript 错误?我建议调查您的日志/打开错误报告(在您的 dev 环境中:))。
  • 好吧,我表达的方式不对。我不会破坏网站,但通常这个循环会在概览网站上显示 20 多篇文章,当我添加 onclick 参数时,它只显示第一篇文章(没有上面生成的我想要跟踪的链接),破坏了其余的循环...

标签: javascript google-analytics woocommerce


【解决方案1】:

if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

global $product;

echo apply_filters( 'woocommerce_loop_add_to_cart_link',
    sprintf( '<a href="%s" onClick="ga(\'send\', \'event\', \'AmzClickout\', \'PDPCta\', \'' . esc_attr( $product->get_sku() ) . '\')" rel="nofollow" data-product_id="%s" data-product_sku="%s" data-quantity="%s" class="button %s product_type_%s">%s</a>',
        esc_url( $product->add_to_cart_url() ),
        esc_attr( $product->id ),
        esc_attr( $product->get_sku() ),
        esc_attr( isset( $quantity ) ? $quantity : 1 ),
        $product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '',
        esc_attr( $product->product_type ),
        esc_html( $product->add_to_cart_text() )
    ),
$product );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-22
    相关资源
    最近更新 更多