我帮助我的一些客户通过让他们在页眉或页脚页面中插入一些JavaScript代码来跟踪他们的网站使用情况。我最近有一位客户告诉我他正在使用Wordpress和#34;他们不允许使用脚本"。我对Wordpress一无所知,因为我从未使用它。以下是我希望安装的代码(为了简洁和安全而进行了一些修改):
<div>
<script>
var wandTopSitesUserId = 28;
document.cookie = 'SiteMetrics=' + wandTopSitesUserId + '; expires=Tue, 1 Jan 2030 00:00:00 UTC; path=/';
document.write('<div><a href="http://www.xyxyxyx.com/"><img src="http://www.xyxyxyx.com/Log/LogVisit/?siteId=28&userId=' + wandTopSitesUserId + '&pageName=' + location.pathname + '&userAgent=' + navigator.userAgent + '" alt="Site Metrics" /></a></div>');
</script>
</div>
上面的实际代码并不重要。我只需要知道是否有任何特殊的Wordpress用户需要安装此代码?
此外,用户使用的是Wordpress.com而不是Wordpress.org
答案 0 :(得分:2)
使用挂钩,您可以将脚本插入页眉或页脚。它相当容易。不要以复杂的方式想到它。
要使脚本位于标题中,只需使用以下钩子
add_action('wp_head', 'some_function_name');
函数名称是在functions.php中定义的函数,例如。
function.php文件
function some_function_name() {
?>
<script>//Your Normal JS Code</script>
<?php
}
同样,要在页脚中添加脚本,您只需要执行以下操作。
add_action('wp_footer', 'some_function_name');
您的函数在functions.php文件中定义
有关详细信息,请参阅codex: https://codex.wordpress.org/Plugin_API/Action_Reference/wp_head https://codex.wordpress.org/Function_Reference/wp_footer
有关挂钩的更多信息: http://wpcandy.com/teaches/how-to-use-wordpress-hooks/
答案 1 :(得分:0)
作为一名Wordpress开发人员,我还很年轻,但就我的知识和经验而言,只要将这些代码放在当前主题的header.php
文件中,短期内应该没有问题。
当然,如果主题是由将要更新它的第三方开发的,那么您将丢失代码,避免此问题的快速(但不是最优雅)方法是从当前创建子主题主题并添加该代码。如果你愿意花更多的时间在那个客户端上(或者你怀疑你会有更多的客户使用Wordpress),最好的解决方案是开发一个插件,它可以与主题分开安装,并且可以在任何主题更新后继续存在。 / p>
答案 2 :(得分:0)
对于这么小的脚本,我不推荐使用主题钩子。
您正在为一小段代码发出额外的HTTP请求,如果他们的服务器不是很好,可能会让浏览器等待托管文件的服务器将文件发送回浏览器,因此导致脚本触发延迟。
为此,我将其直接放在活动主题(footer.php
)内的wp_content/themes/<theme_name>
文件中。将代码放在</body>
标记的正上方,以确保主网站加载没有延迟(而不是您发送的脚本会延迟页面加载,据我所知)。
答案 3 :(得分:0)
最简单的方法是使用一个简单的插件,允许您和客户端轻松地将脚本添加到任何WordPress安装。这意味着您可以将脚本剪切并粘贴到文本框中,保存,该脚本将处于活动状态。
根据给出的其他答案:您不需要在functions.php
中排队脚本,因为这样做太过分了。而且您不需要(也不应该)通过将脚本添加到header.php
或footer.php
来修改主题;如果您执行其中任何一项或添加到functions.php
,您需要创建一个子主题 - 请参阅Child Themes « WordPress Codex - 不要覆盖这些更改(并删除脚本和您添加到主题中的任何代码)当主题更新时。
尝试https://wordpress.org/plugins/header-and-footer-scripts/轻松地将脚本添加到网站页眉和页脚。您可能需要在Javascript周围保留<script>
标记;阅读插件的文档。像这样的简单插件不会减慢网站的速度。
<div>
标签没有意义,除非您想要为显示设置样式,这意味着您需要为它们提供一个类,即<div class="myclass">
并将该样式添加到主题中的style.css。再次,如果您向主题文件添加任何内容,请创建一个子主题。