填写您的邮件地址,订阅我们的精彩内容:

WordPress中不同URL地址函数详解

556

在wordpress中有多个和URL地址相关的函数,我们所指的相关是获取和打印,而非对URL进行处理,因此我们所指的这些函数包括site_url(),home_url()在内,而不包括query_arg相关的函数。接下来,我们对这些相关的函数一一做个统计和讲解。

Plugins 和插件相关的

plugins_url()
plugin_dir_url()
plugin_dir_path()
plugin_basename()

上面的函数中,我们可以根据函数的英文名很容易理解函数的意思。例如

plugins_url( 'myscript.js', __FILE__ );

在php程序文档中使用它,就相当于产生一个字符串:“example.com/wp-content/plugins/myplugin/myscript.js”,如果你在插件的主文件中使用它,相当于要创建一个字符串,用来打印或调用(指HTML结构中)当前插件目录下的myscript.js文件。其他的函数,包括下面的函数其实是一个道理,你可以点击进入官方文档去查看它的使用方法。

Themes

get_template_directory_uri()
get_stylesheet_uri()
get_theme_root_uri()
get_theme_root()
get_theme_roots()

Site Home

home_url()

WordPress

admin_url()
site_url()
content_url()
includes_url()
wp_upload_dir()

Multisite

get_admin_url()
get_home_url()
get_site_url()
network_admin_url()
network_site_url()
network_home_url()

Constants

WordPress makes use of the following constants when determining the path to the content and plugin directories. These should not be used directly by plugins or themes, but are listed here for completeness.

URL地址和PATH路径不同,URL地址是作为用户访问的时候所使用的,而PATH路径是服务程序在调用或访问时使用的,因此,URL的形式都是形如”http://xxx.com/xxoa/foag/df/”或”/fadso/feg/”这种形式,而PATH就只有”/fsxig/fs/”这种形式,这在LINUX中就非常好理解,/ 就是计算机的根目录,只有超级管理最高权限才能访问,而我们的网站往往都放在比较深的……/www/hotcs/目录中。

WP_CONTENT_DIR  // no trailing slash, full paths only
WP_CONTENT_URL  // full url
WP_PLUGIN_DIR  // full path, no trailing slash
WP_PLUGIN_URL  // full url, no trailing slash
// Available per default in MS, not set in single site install
// Can be used in single site installs (as usual: at your own risk)
UPLOADS // uploads folder, relative to ABSPATH (for e.g.: /wp-content/uploads)

除了上述的这些函数,还有一个bloginfo()(打印出来,如果要获取,使用get_bloginfo())函数,这个函数中也可以传入几个URL相关的参数以获取对应的URL值。它们分别是:

wpurl :使用get_bloginfo(‘wpurl’)等效于site_url(),在数据库中反映为options表中的siteurl值。

siteurl 或?home(现在已经不用,早期版本的WP在使用) 或?url :使用get_bloginfo(‘url’)等效于home_url(),对应options表中的home值。

区别site_url和home_url,在后台设置页面,我们要填写两个博客地址值,上面一个对应site_url,即wordpress程序的地址,下一个对应的是当前博客的首页访问地址。有人可能不能理解,但如果你使用过wordpress多站点的话就好理解了。对于多站点来说,wordpress系统只有一套,对应的是site_url,而不同的用户所开的博客分站都有自己的home_url,如果你绑定了其他域名,home_url还可以是这个绑定的域名。

stylesheet_url : 使用<link href=”<?php bloginfo(‘stylesheet_ur’); ?>” rel=”stylesheet”>直接打印主题目录下的style.css路径和样式文件调用。

template_url 或?template_directory :这个不用说,很多人都知道了,打印当前主题的URL地址。

  • ‘pingback_url’?- Displays the Pingback XML-RPC file URL (xmlrpc.php).
  • ‘atom_url’?- Displays the Atom feed URL (/feed/atom).
  • ‘rdf_url’?- Displays the RDF/RSS 1.0 feed URL (/feed/rfd).
  • ‘rss_url’?- Displays the RSS 0.92 feed URL (/feed/rss).
  • ‘rss2_url’?- Displays the RSS 2.0 feed URL (/feed).
  • ‘comments_atom_url’?- Displays the comments Atom feed URL (/comments/feed).
  • ‘comments_rss2_url’?- Displays the comments RSS 2.0 feed URL (/comments/feed).

请看:http://codex.wordpress.org/Function_Reference/bloginfo

这样一来,相信您已经对wordpress中如何调用和打印这些URL地址已经很清楚了吧。

下面我简单说几句