在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. 向着DJANGO奔跑!

    这个项目明天上半年要弄好,就牛X了哈哈. 平台化运维.PYTHON,SVN,SALTSTACK,.....一锅端~~:) from django.contrib import admin # Regi ...

  2. Codeforces 366C Dima and Salad

    http://codeforces.com/problemset/problem/366/C 题意:在一个冰箱里有n种水果,并且这些水果每一种都有一个美味度和一个卡路里的属性, 小明要从这些水果中选出 ...

  3. Source Insight设置总结

    在网上搜索了一些关于Source Insight的设置技巧,把这些结果给总结下来: 1. 背景色选择 要改变背景色Options->preference->windows backgrou ...

  4. java设计模式--结构型模式--组合模式

    什么是组合模式,这个有待研究,个人觉得是各类组合而形成的一种结构吧. 组合模式: 组合模式 概述 将对象组合成树形结构以表示"部分-整体"的层次结构."Composite ...

  5. ctrl+alt+l:linux 锁屏 win+l:windows锁屏

    ctrl+alt+l:linux 锁屏, system->preferences->screensaver设置锁屏时间 win+l:windows锁屏

  6. 【实用技术】DreamWeaver常用快捷键

    文件菜单 新建文档 Ctrl+N 打开一个HTML文件 Ctrl+O 或者将文件从[文件管理器]或[站点]窗口拖动到[文档]窗口中 在框架中打开 Ctrl+Shift+O 关闭 Ctrl+W 保存 C ...

  7. 我的Android进阶之旅------>Android拍照小例子

    今天简单的学习了一下android拍照的简单实现. 当然该程序是个小例子,非常简单,没有什么复杂的操作,但是可以学习到Android 拍照API流程. 1.在布局文件中添加一个 surfaceView ...

  8. Linux如何生成列表

    如何生成列表: 方法一:{1..100} 方法二:`seq [起始数 [步进长度]] 结束数` 1,...,100 declare -i SUM=0    integer    -x

  9. 一个sql很多个not like的简化语句

    如: select * from table where `zongbu` not like '%北京%' and `zongbu` not like '%上海%' and `zongbu` not ...

  10. Gradle Tips#1-tasks

    原文链接 以这篇博客開始,我将写一系列关于Gradle的文章,用来记录接触Gradle构建脚本以来我所理解的Gradle. 今天要讲的就是Gradle tasks以及task的配置和运行.可能有的读者 ...