サポート » 使い方全般 » ショートコード内にGoogle Analyticsのイベントトラッキングを記載したい

  • 解決済 tanukichi

    (@tanukichi)


    Google Analyticsのイベントトラッキングをショートコード内に記載したいのですが
    以下の例にもあるように「’」の記号を使うので、ショートコード内に記載することができません。
    https://developers.google.com/analytics/devguides/collection/analyticsjs/events#examples

    以下の様な感じで使用したいのですが、何か方法はないでしょうか?
    以下のコードだと「’」があるせいでエラーになってしまいます。

    【ショートコードの例】
    function linkdayo($atts) {
    extract(shortcode_atts(array(
    ‘eventCategory’ => ”,
    ‘eventAction’ => ”,
    ‘eventLabel’ => ”,
    ), $atts));

    return ‘<aのリンク href=”‘. get_permalink($post_id) . ‘” onClick=”ga(‘send’, ‘event’, ‘【ここにeventCategoryの内容】’, ‘【ここにeventActionの内容】’, ‘【ここにeventLabelの内容】’);”>リンク用のテキストです’;

    }
    add_shortcode(‘link’, ‘linkdayo’);

    【ショートコード使用例】
    [link eventCategory=Videos eventAction=play eventLabel=Fall Campaign]

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • モデレーター jim912

    (@jim912)

    エスケープ文字列であるバックスラッシュ \ を用いることによって、クォート内でもクォートした文字を記述することができるようになります。

    また、文字列のクォートは、シングルクォート ‘ とダブルクォート ” を使うことができ、シングルクォート内では、ダブルクォート、ダブルクォート内では、シングルクォートを通常の文字として記述することが可能です。
    ※ シングルクォートとダブルクォートによる文字列展開の差異は理解しておいたほうが良いです。

    また、ヒアドキュメント構文といって、改行を含んだ長い文字列を扱う場合に適した記述方法もあります。

    これらについては、PHPの文字列ドキュメントにまとめられていますので、参照いただくと良いかと思います。

    jim912さん
    ありがとうございます

    バックスラッシュ \を使うことで無事に解決できました。
    参考URLもありがとうございます。
    学ぶといろいろ応用効きそうですね。

    お陰さまで解決しました

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「ショートコード内にGoogle Analyticsのイベントトラッキングを記載したい」には新たに返信することはできません。