个人工具
名字空间
变换
操作

WordPress:Linking Posts Pages and Categories

来自站长百科
跳转到: 导航, 搜索

有两种方法可以链接到WordPress的内容网页。一种使用permalinks,另一种没有使用。另一种不使用permalinks的方法,不管你的网站上有没有嵌入permalinks,都可以使用这种方法。

目录

没有使用Permalinks的链接

如果你没有使用Permalinks, 你怎样链接到你的网页,文章,和类别中呢? 使用ID专栏的文章,类别,和网页管理的数值,你可以创建以下的链接。

文章

要链接到一篇文章,在文章管理面板上找到所要链接文章的ID,并将它插入到这个链接的'123'的位置:

<a href="index.php?p=123">Post Title</a>

类别

链接到一个类别,找到类别管理面板上所要找的类别的ID,并将它插入到这个链接'7'的位置,取代'7':

<a href="index.php?cat=7">Category Title</a>

网页

链接到一个网页,找到管理面板上所要找的网页的ID,将它插入到这个链接的'42',取代'42': <a href="index.php?page_id=42">Page title</a>

以日期为基础的归档

  • 年: <a href="index.php?m=2006">2006</a>
  • 月: <a href="index.php?m=200601">Jan 2006</a>
  • 日: <a href="index.php?m=20060101">Jan 1, 2006</a>

外部站点的链接

如果你给你的站点提供一个外部链接,确保指定一个完整的URL到一个正确的地址:

<a href="http://example.com/index.php?p=123">post title</a>

如果你在一个子文件夹中安装了WordPress, 例如wordpress, 别忘了将文件夹添加到链接URL上:

<a href="http://example.com/wordpress/index.php?p=123">post title</a>

链接使用 Permalinks

如果你正使用permalinks, 你可以使用以上所有的非permalinks方法,这些方法会对激活的或者没有激活的permalinks起作用。如果你激活了permalinks,通过链接时,你就拥有了一些额外的选择,你站点的用户会觉得,比含义模糊的数字,显得更加友好。

URL的复杂性取决于你的permalinks配置的复杂性。如果你的permalinks配置(在选项 > Permalinks设置的)包含了许多的结构标签, 那么要创建URL就会变得更难。

文章

对于文章,将你的permalink结构中每个结构标签替换为合乎文章的数据,来为那篇文章建立一个URL。例如,如果permalink结构是:

/index.php/archives/%year%/%monthnum%/%day%/%postname%/

将结构标签替换为合适的值,可能会产生一个URL, 看起来像: <a href="/index.php/archives/2005/04/22/my-sample-post/">我的样本文章</a> 要为文章获得一个精确的URL, 导航到WordPress博客内部的文章,然后复制WordPress产生的其中的一个博客链接,会更加地简单。

回顾使用Permalinks中的信息,得到更多的关于为单个文章建立URLs的信息。

类别

为使用permalinks的类别产生一个链接,从选项 > Permalinks管理面板中获取类别基本值,在最后附加上类别名。

例如,当类别基数是"/index.php/categories"的时候,链接到类别"测试",使用以下的链接:

<a href="/index.php/categories/testing/">category link</a>

通过直接地使用子目录(如上),或者通过经所有的母类别指定在URL中的类别前面,像以下的,你就可以指定一个链接到子类别中:

<a href="/index.php/categories/parent_category/sub_category/">subcategory link</a>

网页

网页就像类别一样,可以有层级,可以有父母(上一级网页)。如果一个网页在一个在一个层级的根级别上,你只要指定网页的"page slug"到你的permalink结构的后面: <a href="/index.php/a-test-page">a test page</a>

再一次地,查证这是一个正确的URL的最好的方法是,导航到博客中的目标网页,并且将URL与你在链接中使用的URL进行比较。

以日期为基础的归档

  • 年: <a href="/index.php/archives/2006">2006</a>
  • 月: <a href="/index.php/archives/2006/01/">Jan 2006</a>
  • 日: <a href="/index.php/archives/2006/01/01/">Jan 1, 2006</a>

外部站点的链接

Permalink 结构应该以一个斜线为基础,意思是它们被锚定在站点的URL的根上。你应该能够perpent协议和服务器名到任何以一个斜线为开始的链接的,来创建一个成功的完整的URL。 例如,这个类别链接:

<a href="/index.php/categories/parent_category/sub_category/">subcategory link</a>

变成了这个类别链接,使用一个完整的URL:

<a href="http://example.com/index.php/categories/parent_category/sub_category/">subcategory link</a>

将链接与模板标签联合

你可以在页眉,页脚或者边框条中将你的链接自定义为链接的结合体。这个例子的特点是链接到两个类别,主要的索引页,一篇文章,一个静态的页面,并且使用了网页模板标签。


仔细注意,wp_list_pages()模板标签产生了它自己的列表条目(LI),这样它就不需要被包在一个LI标签中。这个模板标签也被设置为只列出母网页(上级网页),而不列出他们的子网页或者叫"孩子"。

<ul id="linklist">
 <li>
  <?php _e('Check It Out'); ?>
  <ul id="pageslist">
   <li>
    <a title="Home Page" href="index.php">Home</a>
   </li>
   <li>
    <a title="Blog" href="index.php?cat=7">Blog</a>
   </li>
   <li>
    <a title="Life Story" href="index.php?p=12">My Life Story</a>
   </li>
   <?php wp_list_pages('exclude=4&depth=1&sort_column=menu_order&title_li='); ?>
   <li>
    <a title="Links and Resources" href="index.php?cat=33">Links</a>
   </li>
   <li>
    <a title="Site Map" href="sitemap.php">Site Map</a>
   </li>
  </ul>
 </li>
</ul>

使用这个自定义的列表,你也可以添加CSS类别来改变每个链接的外观,或者设计这个部分。这都取决于你自己。

绝对的与相对的链接

绝对链接定义了absolutely在哪儿可以找到目标链接。
相对链接定义了与当前文件有关的另一个文件的位置。

绝对链接的例子

形式http://example.com/wordpress/index.php的绝对URLs是绝对链接。

绝对的链接可以指向你自己的服务器。当你这样做时,你可能安全地省略了http://domain.com前缀,并且使用一个绝对的路径链接到目标上:

/wordpress/index.php 第一个斜线的意思是"在这个域的最顶上方是一个目录,目录名是wordpress,在这个目录的里面,是一个文件,这个文件名是index.php".

http://example.com/wordpress/index.php 中的一个文件 包含一个形式的链接 /wordpress/index.php 当你点击上面的这个链接的时候,这个链接会带你来到 http://example.com/wordpress/index.php

相对链接例子

相对链接不是以一个斜线开始的: wordpress/index.php 缺少了一个引导的斜线,意思是"在目前的目录中是一个子目录,子目录名是wordpress, 在目录中是一个文件,文件名是index.php". http://example.com/wordpress/index.php 中的一个文件 包含一个这个形式的链接

wordpress/index.php

当你点击以上的链接的时候,这个链接会带你到 http://example.com/wordpress/wordpress/index.php


关于绝对的和相对的链接的更多的信息,请看绝对的和相对的链接的万维网参考指南

模板中的动态链接

不管你是否使用permalinks,你可以在模板中动态地链接到网页或者文章,只要通过用<a href="<?php echo get_permalink(ID); ?>">提及到文章或者网页的数字的ID(在管理界面的多个网页上可以看到)。这是一个链接</a>. (如[[WordPress:Template_Tags/得到_permalink]所显示的]) 。

这是创建网页菜单的一个方便的方法,因为你不久可以在不破坏链接的情况下,更改page slugs,因为ID都是保持相同的。然而,这可能会增加数据库查询。

也可以使用WordPress:Template_Tags/wp_列表_网页参数的孩子(子参数)或者一些可以得到的插件来创建动态网页菜单。


资源

留言