八月 21, 2005

How can I list my archives by title?

为了强迫自己仔细看完这篇官方的faq,于是随手翻译了一下,不过也总算终于弄明白怎么设置了 How can I list my archives by title?

通常的,archive会链接到一个页面,其中包含一天,一星期或者一个月发表的全部帖子。但是,如果你在发表的数量很多的话,在 archive页面里进行浏览或者要寻找其中的一篇都会变得很麻烦。因此有些人喜欢在archive界面只显示帖子的标题,然后由标题链接到全文的页面,这也是接下来我们要做的。在我们开始之前,你应该在你的blog上发表过东西,而且每篇都有一个标题。另外我建议你采用按月archive,这样可以在 archive页面显示更多的帖子标题,当然你也可以随自己喜欢来设定。

你可能已经注意到,模板里在<blogger>和</blogger>这两个标签之间有很大一部分东西,这就是模板中关于输出帖子的部分。我们将要拷贝这一大堆代码到其他地方,不过不需要改变原有的内容。为了说的简单一点,我们下面用<blogger>....</blogger>来代替你模板里< blogger>标签里的内容

我们设置主要是基于conditional tags。我们可以利用这些标签来使不同的页面显示不同的内容。你的blog的main page将会按通常的方式显示帖子,这样可以让人们容易看到最近的改动。item page应该也不需要改变,因为是通过静态链接指向的item page。所以接下来就很简单了,用下面这些代替模板里<blogger>...< /blogger>之间的内容:

<MainPage> <Blogger>...</Blogger> </MainPage> <ItemPage> <Blogger>...</Blogger> </ItemPage>

请注意这些同样的代码要出现两次,一次是main page,另一次是item page。这看起来似乎有点效率低下,不过在没有“mai or item page"这个标签的情况下是必要的。

archive page页面是个有趣的地方。我们只要显示标题,而不需要时间,作者和内容等其他所有的东西。每个标题都有一个静态链接指向包含全部内容的item page,下面是具体的代码:

<ArchivePage> <Blogger> <BlogItemTitle> <a href="<$BlogItemPermalinkURL$>"><$BlogItemTitle$></a> <br /> </BlogItemTitle> </Blogger> </ArchivePage>

你可以直接复制,当然如果愿意的话也可以做一点修改,或者增加一些格式。

现在你进入一个archive页面会看到一串的标题,就像这样

点击其中一个,会带你到帖子的页面

注意

  • 你可以按需要增加另外的blogger标签,比如你要按时间显示的话可以增加<BlogDateHeader> <$BlogDateHeaderDate$> </BlogDateHeader> 标签
  • 进行任何模板修改之前,请确保进行了备份。只需要拷贝到一个文本文件里放在硬盘上就可以,然后万一出错也可以随时还原。
发表评论