Old

js获取WordPress主题目录函数

上一篇文章里我写了尝试用 jQuery 的 GET 请求功能取得 WordPress 函数的值,方法有点辗转,但可以用作它途:如 Ajax 获取博客相关内容(最新评论、读者墙等),其实我的 zSnos-private 主题侧边栏的最新评论、读者墙、唠叨栏、广告一直就是用 GET 请求获取的,所以需要折腾 Ajax 加载内容的可以参考我上篇文章(传送门:《使用jQuery的GET请求功能获取WP主题目录地址》)。

下面说说这篇的主题:js获取WordPress主题目录函数,其实就是 Qiqiboy 在上一篇评论所说的方法,只是代码不同,方法一样。

第一种:直接在页面中输出页面地址

<script>var themeurl="<?php bloginfo('template_directory') ?>"</script>

这样themeurl变量可以在页面中直接引用

第二种:检测head中的style.css文件来获取目录(直接放在需要引用主题地址的js文件内)

function themeurl(){
	var i=0,got=-1,url,len=document.getElementsByTagName('link').length;
	while(i<=len && got==-1){
		url=document.getElementsByTagName('link')[i].href;
		got=url.indexOf('/style.css');
		i++;
	}
	return url.replace('style.css','');
};

这个函数返回的就是你所用主题的目录URL了(如:http://你的域名/wp-content/themes/你的主题/)。

其实折腾来折腾去,还是willin的ajax评论提交js文件所用方法,只是换了大家主题都有的style.css来取得目录,囧~

不管蛋疼还是折腾,反正都玩了,就写写吧。

zww
or
oooo

声明: 除非注明,ZWWoOoOo文章均为原创,转载请以链接形式标明本文地址
本文地址: https://zww.me/archives/25376

55 comments

  1. 章鱼 章鱼 Google Chrome 10 Google Chrome 10 Windows 7 Windows 7

    SF

    沙发
  2. 章鱼 章鱼 Google Chrome 10 Google Chrome 10 Windows 7 Windows 7

    主题太丑 就凑合用不折腾了 :grin:

    板凳
  3. A.shun A.shun Opera 10 Opera 10 Windows XP Windows XP

    @章鱼
    好快。。。那就大腿吧~

  4. ......
  5. 万戈 万戈 Firefox 3 Firefox 3 Windows XP Windows XP

    ajax,高级货 :twisted:

    21楼
  6. 1Ludou Ludou Firefox 3 Firefox 3 Windows 7 Windows 7

    方法二不够保险,style.css未必是在当前主题目录下。

    22楼
    • zwwooooo zwwooooo Firefox 3 Firefox 3 Windows 7 Windows 7

      一般都在,主题需要这个文件,不然主题就出错了,即使你在style.css写了调用。另外没有这个文件你可以换其他的。

  7. hensy hensy Google Chrome 8 Google Chrome 8 Windows XP Windows XP

    什么时候换的主题?相当漂亮。。

    23楼
    • zwwooooo zwwooooo Firefox 3 Firefox 3 Windows 7 Windows 7

      ? :?: :shock: 我换了么?这个主题都用了差不多一年了,当然偶尔会改改细节

  8. 17 17 Internet Explorer 8 Internet Explorer 8 Windows XP Windows XP

    就是蛋疼,才去折腾,哈哈

    24楼
  9. Digitalocean优惠码 Digitalocean优惠码 Google Chrome 27 Google Chrome 27 Windows 7 Windows 7

    bloginfo('template_directory') 返回的是blog_url,怎么回事?

    25楼

Leave a Reply