我正在使用Joomla(1.5.14)/ Virtuemart(1.1.3)网站,由于无法在Virtuemart的类别说明区域中使用PHP,我在实施某些AdWords代码段时遇到了问题。< / p>
这就是我想要实现的目标。
我在网站的主要'index.php'文件中有以下AdWords主要代码段:
<?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; ?>
在某些网页上,我添加了不同的AdWords代码以及以下PHP代码段,希望在浏览此页面时从页面中删除原始代码:
<?php
$HideAdWords = "yes";
?>
这确实做了我想要的,但是在我需要应用的大多数页面上我无法使用PHP,在Virtuemart中将PHP输入类别描述时,在保存更改时它注释掉任何PHP代码和使它无用。
我尽可能多地尝试搜索,并尝试了Joomla / Virtuemart特定的网站/论坛。我设法让JavaScript在这些类别描述区域工作,所以我想知道是否可以用JavaScript复制这种效果,或者你们可以想到更好的解决方案?
我希望我已经清楚了,任何帮助都会非常感激。
亲切的问候。
*编辑:修复非特定标题。
答案 0 :(得分: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可以有“是”或“否”。你可以将它用作js变量。 你的意思是那样吗
答案 1 :(得分:1)
如果您想在JavaScript中执行此操作,请在主页中使用此代码段:
<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调用轻松完成相同的操作):
<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>
鉴于SSL和HTTP网址之间的唯一区别是架构,您可以删除协议并使用双斜杠启动网址,以便仅使用当前页面已访问过的http或https。
答案 2 :(得分:0)
您是否看过Virtuemart的某些Google Analytics扩展程序?
BIT Virtuemart Google Analytics
Google Analytics for Virtuemart
我对他们没有经验,但他们似乎有很多选择。