了解邮政格式/自定义邮政类型等

时间:2012-11-29 作者:benlevywebdesign

我不明白当我们有“添加主题支持”时,“添加帖子类型支持”是什么意思?

对于不同的帖子格式,这是我之前展示的方式。这就是我为我所从事的项目所做的,这是一种正确/好的方式吗?

这是我的functions.php 文件:

<?php add_theme_support( \'post-formats\', array(\'image\', \'video\', \'gallery\')); ?>
这是我的index.php 文件:

<?php get_template_part(\'content\', get_post_format()); ?>
我还想知道我是否应该为下面描述的内容“定制帖子类型”:

假设我有一个名为“giftshop”的页面,上面有帖子(现在也在尝试找出这一部分),我想使用image 每个帖子的格式,但我有一个页面,我只想显示一个名为“新闻稿”的帖子,我还想使用image 格式,但样式有点不同,可能吗?

1 个回复
SO网友:Chip Bennett

请参阅Post Formats Codex entry.

帖子格式是一种分类法,请记住,在幕后,帖子格式只是一种分类法,具有奇特的UI和包装函数。

add_theme_support()

Theadd_theme_support( \'post-formats\' ) call告诉WordPress当前主题支持核心帖子格式功能。基本上,它告诉WordPress在Post edit屏幕上显示Post Formats元框。

支持的post格式列表

支持的格式只能包括有限的post格式集(即post_format core定义的分类法术语:

旁白画廊链接图像状态视频聊天室get_template_part()/get_post_format()The<?php get_template_part(\'content\', get_post_format()); ?> 调用用于在模板中包括名为content-$format.php, 并将回退以包括content.php 如果当前帖子没有指定帖子格式。

add_post_type_support()

当我们有“添加主题支持”时,我不明白“添加帖子类型支持”是什么意思?

默认情况下,post格式仅适用于post (即博客帖子)帖子类型。您可以使用add_post_type_support( $posttype, $feature ) 向指定的帖子类型添加对该功能的支持。例如,要将post格式支持添加到page (即静态页面)帖子类型:

add_theme_support( \'page\', \'post-formats\' );
假设我有一个名为“giftshop”的页面,上面有帖子(现在也在尝试找出这一部分),我想为每个帖子使用图像格式,但是我有一个页面,我只想显示一个名为“newsletter”的帖子,我也想使用图像格式,但样式有点不同,这可能吗?

这完全可以通过CSS实现。

首先,确保主题同时使用body_class() 还有post_class() 模板标记。

然后,假设您使用的是带有文件名的自定义页面模板template-giftshop.php, 您可以通过body.page-template-template-giftshop-php CSS类。

那么,假设你的目标是image post格式,循环标记包括以下内容:

<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
。。。这个post_class() 模板标记将添加.format-$format CSS类。因此,您可以针对image post格式通过.format-image.

因此,您可以使用image 在具有template-giftshop.php 按如下方式分配的自定义页面模板:

body.page-template-template-giftshop-php .format-image {}
同样,您可以使用image 在具有template-newsletter.php 按如下方式分配的自定义页面模板:

body.page-template-template-newsletter-php .format-image {}

结束