WordPress:Using Javascript

来自站长百科
跳转至: 导航、​ 搜索

Javascript会在WordPress内部运行。如果Javascript用在模板文件中,大多数Javascript运行良好。但是在文章中使用Javascript就另当别论了。

你一旦输入了PHP,很难返回使用Javascript,但是Javascript仍然有用。如果你能够用PHP编码,标签,或者WordPress中的脚本来代替Javascript,就这样做。你的生活会变得更加简单。如果不能够代替,下面有一些方法,能够使Javascript在WordPress中运行。

模板文件中的Javascript[ ]

要在你的站点内部不断地使用Javascript,你可以设置Javascript的call,或者设置脚本本身,在你的header.php模板文件的标头上设置,在meta 标签和样式表链接之间,如果你在任何HTML网页中使用Javascript,你也会得到同样的结果。要将Javascript文件"载入"你的站点,你要在标头中添加以下的内容:

<script type="text/javascript" src="/scripts/emailpage.js"></script>

要确定你正确地定义了type,因为没有type,你的站点就不会生效。

在你想要使用Javascript的地方,设置Javascript的命令。例如,你使用一个Javascript,这个Javascript为用户设置一个链接,向一个朋友"发送电子邮件,内容是这个网页",你希望这个链接在文章标题的下面。链接可能看起来像:

<h3 class="storytitle">
  <a href="<?php the_permalink() ?>" rel="bookmark">
  <?php the_title(); ?></a>
</h3>
<div class="emailpage">
  <script type="text/javascript">
  <!--
  emailpage();
  //-->
  </script>
</div>

文章中的Javascript[ ]

要在WordPress中的文章内使用Javascript,你还需要采取一些措施。问题是这个用法可能只适用于一个或者几个例子,因此在标头上添加脚本可能是不必要的。

对于偶尔的或者一次性的使用Javascript,你需要将脚本放到一个Javascript文件中,然后在文章中调用脚本。要确定每个脚本都由它的函数名定义了,例如:

function updatepage(){var m="Page updated "+document.lastMo.......}

要在一篇文章包含一个Javascript,你需要将脚本文件的call和Javascript自身的call结合起来。

<script type="text/javascript" src="/scripts/updatepage.js"></script>
<script type="text/javascript">
<!--
updatepage();
//--></script>

如果你的javascript标签的src属性被去除了,你需要关闭丰富功能的编辑器(在dashboard,进入用户>个人选项)。如果你正使用多功能的编辑器,即使在HTML弹出窗口中手工编辑,Javascript的标签的src属性也会被去除。

创建一个多脚本文件[ ]

你可能收集了一些脚本,供不时地调用,例如一个脚本来计算时区或者距离,或者一个脚本在你的网页上产生一些效果或者特色。对于recurring Javascript,考虑将他们组合在一个文件中。

在这个例子中,给Javascripts文件命名为scriptfile.js(选择任何你喜欢的)并且说明,这个文件包含有updatepage, emailpage,和caltimezone 脚本。当你将每个Javascript复制到文件中的时候,要确定这个Javasript拥有一个独特的函数名,就如这个浓缩的版本一样:

function updatepage() {var m="Page updated "+document.lastMo.......}
function emailpage() {mail_str = "mailto:?subject=....}
function caltimezone() {var timerID ; function tzone(tz, os, ds, cl) {this.ct =......} 

将所有的Javascript的脚本文件放入header.php模板文件的标头,在meta标签和样式表链接的之间。这个脚本文件只会保存在那儿,载入到浏览器的内存中,等待其它的一个脚本得到调用。

<script type="text/javascript" src="/scripts/scriptfile.js"></script>

在文章中,你想要使用Javascript的地方,称这个位置为:

<script type="text/javascript">
<!--
updatepage();
//--></script>

在一篇文章或者一个网页中使用多个Javascript文件[ ]

当使用多个Javascript文件中的函数的时候,在header.php中写上所有的Javascript参考。如果你真的需要在文章或者网页的主体部分写上脚本参考,要确定javasctipt文件的URL以前斜线开始的("/"),这个前斜线是你的网络服务器的文件根 (在 Apache网络服务器中是"htdocs"目录)。这称作一个固定的 URL.。如果你没有规定以斜线("/")开始,就会变为一个相对的URL ("../../relative/path/to/javacripts/file.js") 而且在目录结构中 是相对与当前的位置来计算的 。如果你真的这样做了,你几乎需要维护这个参考的多个版本 因为显示的内容的不同的部分是从不同的locations中产生的。例如, 网页是产生于 WordPress 根目录中的 .php t模板文件 (注意这不是 网络服务器的文件根) 然而文章产生于 所选主题目录的 .php 模板文件中("/path-to-wordpress-root/wp-content/themes/yourtheme/partofpost.php").这是两个不同的路径。

发现并解决 Javascript的问题[ ]

如果将Javascript包含到一篇文章中时,你遇到了麻烦,使用文本控制插件 能够使你以全部文章或者每篇文章为基础,控制关闭WordPress的自动格式化功能,这个功能能够迅速地将代码转变为一些可读的内容而不是可执行的内容。设置文章中的选项,你就能够使用Javascript 不形成格式或者 标记 或者nl2br 或者 字符格式。你可能试验一下,以使Javascript执行以上任务。作为提醒,当使用文本控制插件的时候,你必须首先保存并继续编辑文章以便看到文本控制插件选项。

如果你选择了没有格式,你的文章的文本会混杂在一起,因此你需要添加段落标签和其它的HTML标签,以将你的网页形成一种格式,就像WordPress经常为你的网页产生的那种格式那样。

如果你的Javascript没有运行,检查三次看看你将Javascipt剪贴并且复制到一组或者某个单一的文件上时,你是否犯了一些错误。要确定你使用了一个文本编辑器而不是一个文字处理系统,创建Javascript文件。在脚本文件和你的站点上检查函数的名称。并不是所有的Javascript都能够运行,有的可能与你的PHP命令相冲突,但是这种情况很少见。

如果你使用这个的时候,真的遇到了麻烦,WordPress 支持论坛可能会帮助你。

资源[ ]