在wordpress插件和主题开发中经常需要获取各种URL路径,wordpress提供了以下集中方法获得URL路径:

plugins_url() — 插件目录的 URL (例如:http://www.hujuntao.com/wp-content/plugins)
includes_url() — includes 目录的 URL (例如:http://www.hujuntao.com/wp-includes)
content_url() — content 目录的 URL (例如:http://www.hujuntao.com/wp-content)
admin_url() — admin 目录的 URL (例如:http://www.hujuntao.com/wp-admin/)
site_url() — 当前网站的 URL (例如:http://www.hujuntao.com)
home_url() — 当前网站首页的 URL (例如:http://www.hujuntao.com)

要获得首页地址有很多方法:site_url()、home_url()、bloginfo(‘url’)、get_bloginfo(‘url’)、get_site_url()、get_home_url()。它们之间有什么区别呢?
首先来认识下site_url()和home_url()这两个函数.

site_url() 和 home_url() 很相似,容易混淆。site_url() 返回的是数据库中 wp_options 表里面的 siteurl 字段值。这是指向 WordPress 核心文件的 URL,也就是你的wordpress安装路径。如果你的 WordPress 核心文件在你的服务器的子目录中,比如 /wordpress,那么 site_url() 的值就会是 http://www.hujuntao.com/wordpress 。在控制面板==>> 设置 ==>> WordPress 地址(URL)修改。(在非不得已的情况下不要修改,一般在安装成功后这个值是自动生成。修改错误的地址会导致页面打不开,后台管理也进不去,出现这种情况只能通过修改数据库来修复。)

home_url() 则从 wp_option 表中取得 home 字段的值。这个地址是你希望访问你的 WordPress 网站的 URL 地址。例如,你的 WordPres 核心文件放在 /wordpress 目录下,但是你希望你的 URL是 http://www.hujuntao.com,那么就要把 home 的值设置成 http://www.hujuntao.com。在控制面板==>> 设置 ==>> 站点地址(URL)。

如果你的博客安装在跟目录这个两个函数获得的值就是一样的,在插件和主题开发中为了使用中得到兼容,所以在选择的时候需要慎重。

总的来讲home_url()就是首页地址,主要用在需要返回首页的时候。比如logo的链接,“面包屑”的“首页”链接等等。
site_url() wordpress安装路径,主要用在获得本地文件路径。

弄清楚这两个函数了,再来看看bloginfo()。
bloginfo用于获得博客的相关信息,包括主页,安装路径地址。
下面是bloginfo()的可用参数:

  1. name = Testpilot
  2. description = Just another WordPress blog
  3. admin_email = admin@example
  4. url = http://example/home
  5. wpurl = http://example/home/wp
  6. stylesheet_directory = http://example/home/wp/wp-content/themes/child-theme
  7. stylesheet_url = http://example/home/wp/wp-content/themes/child-theme/style.css
  8. template_directory = http://example/home/wp/wp-content/themes/parent-theme
  9. template_url = http://example/home/wp/wp-content/themes/parent-theme
  10. atom_url = http://example/home/feed/atom
  11. rss2_url = http://example/home/feed
  12. rss_url = http://example/home/feed/rss
  13. pingback_url = http://example/home/wp/xmlrpc.php
  14. rdf_url = http://example/home/feed/rdf
  15. comments_atom_url = http://example/home/comments/feed/atom
  16. comments_rss2_url = http://example/home/comments/feed
  17. charset = UTF-8
  18. html_type = text/html
  19. language = en-US
  20. text_direction = ltr
  21. version = 3.1

其中bloginfo(‘url’) = 首页地址; bloginfo(‘wpurl’) = wordpress安装路径;

弄懂这个函数剩下的就简单了。
wordpress的bloginfo()和get_bloginfo()功能差不多,都是显示用户博客的相关信息,这些信息通常来自用户在WordPress网站后台“我的配置”和“设置>常规”菜单中填写的内容。 区别就是bloginfo()把结果直接输出,可以用在页面模板的任何区域内;而get_bloginfo()则是返回一个数据!
当你需要返回值的时候则用 get_site_url()、get_bloginfo(‘url’)、get_home_url();
例如:

 

如果你想直接输出值则用 site_url()、bloginfo(‘url’)、home_url();
例如:

 

下面我们来总结一下:
获得首页地址 ==> home_url()、bloginfo(‘url’)、get_bloginfo(‘url’)、get_home_url()。home_url() 3.0加入的函数,为了兼容老版本推荐使用bloginfo();
获得安装路径 ==> site_url()、bloginfo(‘wpurl’)、get_bloginfo(‘wpurl’)、get_site_url()。

如果你需要返回值 ==> get_bloginfo(‘url’)、get_home_url()/get_bloginfo(‘wpurl’)、get_site_url()
如果你想直接输出值 ==>

wordpress教程之函数site_url()、home_url()、bloginfo(‘url’)的区别的更多相关文章

  1. wordpress教程之函数讲解

    wordpress函数收集 is_home() : 是否为主页is_single() : 是否为内容页(Post),   是否是单篇文章  is_page() : 是否为内容页(Page),   是否 ...

  2. WordPress模板常用函数

    基本条件判断Tag is_home() : 是否为主页 is_single() : 是否为内容页(Post) is_page() : 是否为内容页(Page) is_category() : 是否为C ...

  3. WordPress主题制作函数

    WordPress基本模板文件 一套完整的WordPress模板应至少具有如下文件: style.css: CSS(样式表)文件 index.php: 主页模板 archive.php: Archiv ...

  4. WordPress 模板常用函数

    WordPress 基本模板文件 一套完整的 WordPress 模板应至少具有如下文件: style.css : CSS(样式表)文件 index.php : 主页模板 archive.php : ...

  5. (转)WordPress常用模板函数 修改或自制WordPress主题必备

    对于很多WordPress新手来说,不懂任何代码的情况下去瞎改WordPress主题,得出的效果往往会出现语法错误之类的东西或效果不尽人意.想要修改 WordPress主题模板文件最基本的当然要懂得H ...

  6. WordPress教程之如何入门WordPress

    这篇文章将介绍如何设置 WordPress,并自定义其基本功能.WordPress 的安装包相对较小(低于 10 MB),非常易于安装和管理.为了托管自己的网站,你可以获得几个不同的选项. 你可以通过 ...

  7. WordPress教程之如何创建博客内容

    上两篇教程的链接: Wordpress教程之初识WordPress Wordpress教程之如何入门WordPress Hostwinds共享主机vps限时五折优惠链接 现在,你的 WordPress ...

  8. WordPress教程之页面、菜单、媒体库、高级定制

    本系列教程链接: 怎么快速搭建一个WordPress网站 Wordpress教程之初识WordPress Wordpress教程之如何入门WordPress Wordpress教程之如何创建博客内容 ...

  9. WordPress的body_class()函数详解

    wordpress的body_class()函数,顾名思义,这个函数根据不同的页面类型为body标签生成class选择器,从而让设计人员可以各方便灵活的控制不同页面中的各个元素.本文对这一函数进行了详 ...

随机推荐

  1. include .h 以及.cpp的记录

    VC include 路径解析要了解vc中使用#include命令包含头文件所搜寻的路径,必须先了解vc中的几种路径:1. 系统路径 系统路径在vc中是"Tools->Options- ...

  2. 【转】android cts测试方法及步骤

    原文网址:http://blog.csdn.net/shi_xin/article/details/42262675 1.CTS下载 打开下面网址, http://source.android.com ...

  3. yum 配置详解(转发)

    一.yum 简介 yum,是Yellow dog Updater, Modified 的简称,是杜克大学为了提高RPM 软件包安装性而开发的一种软件包管理器.起初是由yellow dog 这一发行版的 ...

  4. Java 安装配置

    1.下载 进入官方网站,点击下载链接进入下载页面,选择合适的版本(如,jdk-6u31-windows-i586.exe)下载. 2.安装 双击jdk-6u31-windows-i586.exe文件, ...

  5. JUnit三分钟教程 ---- 实际应用

    JUnit三分钟教程 ---- 实际应用 摘自http://lavasoft.blog.51cto.com/62575/65775   接上文"JUnit三分钟教程 ---- 快速起步&qu ...

  6. Linux上夏时令的应对

    问题 今天,有游戏客户找来说,2016.11.6号洛杉矶将会进入冬时令,他们在洛杉矶机房的ECS在使用的是洛杉矶的当地时间,问我,进入冬时令,对他们的linux有啥影响?是否需要做好,批量修改linu ...

  7. EditText 文本内容输入限制

    实现InputFilter过滤器,需要覆盖一个叫filter的方法. public abstract CharSequence filter ( CharSequence source, int st ...

  8. poj 2385 Apple Catching(dp)

    Description It and ) in his field, each full of apples. Bessie cannot reach the apples when they are ...

  9. php5.3 appache phpstudy win7win8win10下 运行速度慢

    php5.3 appache phpstudy win7win8win10下 运行速度慢 最近在部署服务器以及本地测试的时候发现了一个奇怪的现象,运行PHP程序的时候非常慢,起先以为是网速的原因,后经 ...

  10. TCP和UDP的区别(转)

    TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! ...