2012-04-10 22 views
0

私はJoomla(1.5.14)/ Virtuemart(1.1.3)のWebサイトで作業していますが、カテゴリ説明でPHPを使用できないためにいくつかのAdWordsコードスニペットを実装する際に問題が発生しました。 Virtuemartのエリア。一部のコードを隠すのに役立つ必要があります

これは私が達成したかったものです。

次のように私はメインのAdWordsは、ウェブサイトのメイン「のindex.php」ファイルにスニペットている:特定のページ

<?php if ($HideAdWords != "yes") : ?> 

<!-- Google Code for Every user Remarketing List --> 
<script type="text/javascript"> 
/* <![CDATA[ */ 
var google_conversion_id = ###; 
var google_conversion_language = "en"; 
var google_conversion_format = "3"; 
var google_conversion_color = "666666"; 
var google_conversion_label = "###"; 
var google_conversion_value = 0; 
/* ]]> */ 
</script> 
<?php if ($_SERVER['HTTPS']) { ?> 
<script type="text/javascript" src="https://www.googleadservices.com/pagead/conversion.js"> 
<?php } else { ?> 
<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js"> 
<?php }?> 

</script> 
<noscript> 
<div style="display:inline;"> 
<!--<img height="1" width="1" style="border-style:none;" alt="" src="###"/>--> 
</div> 
</noscript> 

<?php endif; ?> 

を私はしたい、以下のPHPスニペットと一緒に別のアドワーズ広告のコードが含まれてこのページを閲覧する際のページからコードの元の部分を削除します。入力する際

<?php 
$HideAdWords = "yes"; 
?> 

これは、私はPHPを使用することはできませんよ、これを適用する必要があるページのほとんどにしかしに私はそれを望んで何をしましたPHPをVirtuemartのカテゴリの説明に変更を保存するとそれは任意のPHPコードをコメントアウトし、役に立たなくします。

私は可能な限り検索しようとしており、Joomla/Virtuemart固有のウェブサイト/フォーラムを試しました。私はJavaScriptをこれらのカテゴリ記述領域で動作させることができたので、JavaScriptでこの効果を再現できるかどうか、あるいはもっと良い解決策を考えるかもしれないのかどうか疑問に思っていましたか?

私は明らかにされていることを願って、どんな助けも本当に感謝します。

親切にしてください。

*編集:固定された不特定のタイトル。

+0

javascriptで 'if(hideAdWords)'ブロックを書くことはできませんか?変数にアクセスしてjavascriptに渡すだけでよいのです。 – Basti

答えて

1

のようなものをもしかして:

<script> 
(function() { 
    if(window.hideAdWords) return; 
    var google_conversion_id = "###", 
     google_conversion_language = "en", 
     google_conversion_format = "3", 
     google_conversion_color = "666666", 
     google_conversion_label = "###", 
     google_conversion_value = 0; 

    document.write(unescape("%3Cscript%20type%3D%22text/javascript%22%20src%3D%22//www.googleadservices.com/pagead/conversion.js%22%3E%3C/script%3E")); 
}()); 
</script> 

を次に、あなたのPHPだけで書き出す必要があります:

<script> 
    hideAdWords = <?php print ($HideAdWords == "yes" ? 'true':'false'); ?>; 
</script> 

hideAdWordsラインがファンクションブロックの前に印刷されることを保証できない場合は、ファンクションブロックを変更して、ページのロードが完了したときに起動するイベントハンドラにラップされます(この例ではjQueryを使用しますが、あなたは簡単に行うことができますaddEventListenerを呼び出しと同じもの):SSLとHTTP URLの間の唯一の違いは、スキーマであることを、あなたはプロトコルをドロップすると、ちょうどHTTPまたはHTTPSを使用するように、二重スラッシュでURLを起動することができ考える

<script> 
jQuery(function() { 
    if(window.hideAdWords) return; 
    var google_conversion_id = "###", 
     google_conversion_language = "en", 
     google_conversion_format = "3", 
     google_conversion_color = "666666", 
     google_conversion_label = "###", 
     google_conversion_value = 0; 

    document.write(unescape("%3Cscript%20type%3D%22text/javascript%22%20src%3D%22//www.googleadservices.com/pagead/conversion.js%22%3E%3C/script%3E")); 
}); 
</script> 

現在のページがアクセスされたことを示します。

+0

救命救助者を助けてくれてありがとう!しかし、私はそれを動作させることができません、あなたがそれを書いている通りに正確にコピーすると、それはまだページに印刷されます。 http://img600.imageshack.us/img600/9100/16238576.jpg – iamlolz

+0

google_conversion_idとgoogle_conversion_labelの値を実際の値に変更しましたか?彼らが実際に3つのハッシュであると仮定されている場合、それらは引用符で囲まなければなりません(上記のように) – steveukx

+0

私はそれを見逃していますが、残念ながらまだ起こっています。 http://img687.imageshack.us/img687/5091/46287193.jpg – iamlolz

1

さて、あなたはJSで、あなたがjsの中で使うことができることを行うことができます:


//js part included in php file that loads as common file to all, like footer or header 
var hideAdWords = "<?php if ($HideAdWords) { echo "yes"; } else { echo "no"; } ?> 

今、あなたのjsを変数hideAdWordsは "yes" または "no" を持つことができます。そして、それをjs変数として使うことができます。 あなたはJavaScriptでこれを実行したい場合は、あなたのメインページにこのスニペットを使用すること

+0

これはうまくいくかもしれませんが、私の役に立たないことやJSの知識が不足しているため、実装する方法がわかりません。 – iamlolz

0

VirtuemartのGoogleアナリティクスの拡張機能の一部を見ましたか?

BIT Virtuemart Google Analytics

Google Analytics for Virtuemart

私は彼らとの経験がないが、彼らは多くのオプションを持っているようです。

+0

ありがとうございます。私はそれらを見ましたが、このウェブサイトは現在3DCartに移行されていますので、私は3DCartで同じ問題を抱えているとは思わないので、すぐに修正しましたが、時間は分かります。 – iamlolz

関連する問題