Post formats template

时间:2013-09-01 作者:vlad

我想知道wordpress使用什么模板来显示post格式的归档页面?没有指定模板文件时使用的父模板文件是什么?覆盖所有post格式模板的指定模板文件是什么?还有没有办法知道加载的页面是否是post格式存档页面?

2 个回复
SO网友:iEmanuele

Post formats 用于根据其“元”内容自定义帖子,但它们始终是帖子,作为帖子,它们将列在归档和分类页面上。

没有指定模板文件时使用的父模板文件是什么?覆盖所有post格式模板的指定模板文件是什么?

请看一下WordPress Codex-Template Hierarchy 部分

我想知道wordpress使用什么模板来显示post格式的归档页面?

归档(按年、月、日发布)页面通常会覆盖archive.php 样板类别存档页在category.php 样板

还有没有办法知道加载的页面是否是post格式存档页面?

是的,有。您可以使用is_archive(); Conditional Tag.

UPDATE

有没有一种方法可以显示一种帖子格式的所有帖子?例如,使用存档。php模板是否显示所有具有“image”或“quote”帖子类型的帖子?

是的,有。您可以在存档中显示特定格式的帖子。php与pre_get_posts 行动挂钩。如果你看看WP_Query 您将找到的参数tax_query. 它是一个分类参数数组。

Example usage:

//in functions.php
add_action( \'pre_get_posts\', \'wpse_show_posts_by_format\' );
function wpse_show_posts_by_format($query){
  //We are not in admin panel and this is the main query
  if( !$query->is_admin && $query->is_main_query() ){
    //We are in an archive page
    if( $query->is_archive() ){
      $taxquery = array(
        array(
          \'taxonomy\' => \'post_format\',
          \'field\'    => \'slug\',
          \'terms\'    => array( \'post-format-quote\', \'post-format-image\' )
        )
      );
    //Now adding | updating only to main query \'tax_query\' var
    $query->set( \'tax_query\', $taxquery );
    }
  }
}
希望有帮助!

SO网友:gmazzap

Post格式是taxonomy.

不是post类型,也不是meta。

与类别、标记、自定义分类法和post格式的区别在于,post格式术语(此时)可以是一组9 terms.

请注意,帖子格式“Standard”不存在,将帖子设置为Standard post format意味着不设置帖子格式。

因此,任意的post格式不可能存在,但存在的是taxonomy terms.

还要注意,这种分类法的slug类似于post-format-{$format}, e、 g。post-format-quote.

没有指定模板文件时使用的父模板文件是什么?覆盖所有post格式模板的指定模板文件是什么?

一旦它们成为分类术语,您必须看到Template Hierarchy 关于分类:

所以taxonomy-post_format-{$slug}.php (例如。taxonomy-post_format-post-format-quote.php) 是thet wp查找的第一个模板。

在那之后taxonomy-post_format.php (这包括在第二十三个主题中),比taxonomy.php, archive.phpindex.php.

还有没有办法知道加载的页面是否是post格式存档页面?

这也是一种分类法。所以is_tax()is_tax(\'post_format\')is_tax(\'post_format\', \'post-format-quote\') 一切都会好起来的。

我打赌现在你在问what is the url that request post format archives?

我不得不说,当没有漂亮的永久链接被激活时,链接就像http://example.com/?post_format=quote (http://example.com/?post_format=post-format-quote 也将起作用)。

默认情况下,如果激活了pretty permalinks,则类似于:http://example.com/type/quote. (http://example.com/type/post-format-quote/ 也将起作用)

请注意,urlhttp://example.com/type/ (没有给定类型)将导致404错误。

我之所以说“默认”,是因为可以通过post_format_rewrite_base 滤器

但是,要获得指向post format archive的正确链接,可以使用get_post_format_link 作用

结束

相关推荐

permalinks issue and archives

我对运行在WP 3.3上的一个站点有一个问题,当我们通过“/%post\\u id%/%postname%/”使永久链接成为任何内容时,归档页面会断开并变成404。经过一些研究,我明白了为什么从性能的角度来看,这不是一个好的做法,所以我尝试了建议的备选方案:“/%year%/%postname%/”和“/%post\\u id%/%postname%/”这两个建议都有效,只是只有使用post\\u id的建议,归档URL才会变成“/date/2012/11/”,并被找到。根据permalink的任何其他建