質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

2335閲覧

WPにタグマネージャーを挿入したい

nunuco

総合スコア15

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2017/07/26 01:04

編集2017/07/26 01:33

###前提・実現したいこと
Wordpressにお客様からお預かりしたタグマネージャーのタグを挿入したい。

###発生している問題・エラーメッセージ

<head>直下、<body>直下に2種類のタグを挿入してもソースで確認すると場所が変わってしまい、タグマネージャーを認識していない。 冒頭に //<![CDATA[ のような文字列がついてしまい、現在入っているアナリティクスのタグと一緒に記述されてしまい、タグマネージャーを認識しない。 (アナリティクスタグを試しに外してみましたがやはり冒頭部分に上のタグが付いてしまいタグアシスタントで確認してみても認識されない) 冒頭に入れたはずのタグも<body>の直前に勝手に移動されてしまう。コメントアウトも勝手に消えている。

###該当のソースコード

//<![CDATA[ (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id="+i+dl;f.parentNode.insertBefore(j,f); })(window,document,"script','dataLayer','xxxxxxx'); (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'xxxxxx', 'auto'); ga('send', 'pageview');

###試したこと
アナリティクスを外す。
WPの方で自動整形を無効にする。
WPプラグインのアナリティクスのツールを止めてみる。

###補足情報(言語/FW/ツール等のバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2017/07/26 01:31

プログラムコードは```で囲ってください。(わからなければ質問編集画面でコード部分を選択し<code>ボタンを押してください)
guest

回答1

0

ベストアンサー

いっそのことjsファイルに記述して外部リンクにされては?

コメントを受けての追記

コード自身をデバッグかけてみたのですが、1箇所記述がおかしいところがあります(構文的に)
下記修正してご確認ください。

javascript

1修正前: 2j.src= 'https://www.googletagmanager.com/gtm.js?id="+i+dl;f.parentNode.insertBefore(j,f); 34修正後: 5j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 6 ↑シングルクォーテーションに

文字列に対する開始括弧と閉じ括弧が合っていないために、正しくコードが解釈されていないのではと思います。

投稿2017/07/26 01:34

編集2017/07/26 02:12
m.ts10806

総合スコア80765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nunuco

2017/07/26 01:56

回答ありがとうございます。 タグマネージャーの外部ファイル化はGoogleが推奨していないらしく不具合が出る可能性もあるようなのでできれば直接記述できる方法があればと考えています。 ただ、私では思いつかなかった方法なので参考になります。ありがとうございます。
m.ts10806

2017/07/26 01:59

あーー・・ですよね・・。概念的にはGoogleAnalyticsと同じですよね。 ちなみにどのファイルのどの箇所に記述していますか?
nunuco

2017/07/26 02:04

WPテーマ内のheader.phpの<head>直下にタグマネージャーのタグは記述しています。 それでサイトを確認すると勝手に</head>の直前に移動されている感じです。 記述も一部変わっておりコメントアウトや<script>が<script type="text/javascript">に変わっていたりします。
m.ts10806

2017/07/26 02:09

結構色々置換されてしまうのは仕方ないかもしれませんね。 1つもしかしたらこれかもというところがあったので回答追記します。
m.ts10806

2017/07/26 02:15

ちなみに、ですが、 //<![CDATA[ は エスケープを忘れないため( https://www.ajaxtower.jp/js/before/index3.html ) で問題はありません。今ではあまり見られませんけど。 head直前に移動されてしまうのもjsやcssなどの外部コードは<head>~</head>内に記述すべきという考え方があるからです。 (今では速度の関係でjavascriptは</body>前に記述する方式が増えています)
nunuco

2017/07/26 02:19

長々とお付き合いいただきありがとうございます。 今記述を確認してみたのですが、ソースを貼り付ける際にはシングルクォーテーションなのですが、貼り付けて元のサイトを確認するとダブルクォーテーションに置き換わってしまうようです・・・。
m.ts10806

2017/07/26 02:21

開始・閉じを両方ダブルクォーテーションにするとどうですか?
m.ts10806

2017/07/26 02:22

あ、もう1箇所ありますね。
m.ts10806

2017/07/26 02:28

})(window,document,"script','dataLayer','xxxxxxx'); も })(window,document,"script",'dataLayer','xxxxxxx'); または })(window,document,'script','dataLayer','xxxxxxx'); で調整してみてください。
nunuco

2017/07/26 02:37

お返事が遅くなり申し訳ありません。 今、教えて頂いたコードで入れてみたらしっかり認識されました! 本当にありがとうございます。
m.ts10806

2017/07/26 02:40

解決したようでよかったです。 cmsは色々と機能があって便利な分、自身の管理下で制御するために色々と置換しまくってたりするので、 そのまま入れたいのになんか変換されてるってよくあるんですよね・・。 その辺りの特性も踏まえて上手に付き合っていく必要がありそうですね。 私も主に作る側として勉強になりました。
nunuco

2017/07/26 02:48

今まで何度も繰り返してきた作業なのにこのような事に出くわしたのは初めてで、社内のプログラマーの方も手一杯で助けも呼べず・・・。 初めてこちらで相談させていただいたのですが回答頂けて、解決までしていただき、本当に感謝しています。 まだまだ勉強不足ですが私も頑張ります!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問