在博友处看到这样的首页文章输出形式,就萌发了陌小雨折腾文章形式的冲动,首先我们来认识一下WordPress的文章形式。
简单点说:文章形式这个功能就是定义某一篇文章在列表中展现的形式,样式可以自己随便的DIY,以后发表文章时,可以选择发表的形式,可以只写一句话像微博一样,可以单独分享一个图片、视频或者音乐,而且因为展现形式区别于其他文章的形式,往往关注量也会高些。
wordpress目前支持的文章形式:
日志(aside) - 典型样式就是没有标题。类似于 Facebook 或人人网中更新的一条日志。
相册(gallery) - 图像陈列厅。文章中通常会有“gallery”代码和相应的图像附件。
链接(link) - 链接到其它网站的链接。主题可能会使用文章中的第一个标签作为文章的外部链接。有可能有的文章至包含一个 URL,那么这个 URL 将会被使用;同时,文章标题(post_title)将会是附加到它的锚的名称。
图像(image) - 单张图像。文章中的首个 标记将会被认为是该图片。另外,如果文章只包含一个 URL 链接,则被认为是该图片的 URL 地址,而文章标题(post_title)将会作为图片的标题属性。
引语(quote) - 引用他人的一段话。通常使用 blockquote 来包裹引用内容。或者,可能直接将引语写入文章,并将其出处写在标题栏。
状态(status) - 简短更新,通常最多 140 个字符。类似于微博 Twitter 状态消息。
视频(video) - 单一视频。
注意:当编辑文章时,若没有指定文章样式,则默认使用“标准”。同样,若指定了一个无效的文章形式,那么也将默认使用标准样式。
//文章格式 add_theme_support( 'post-formats', array( 'status', 'aside', 'gallery', 'video', 'audio' ) );
标注颜色的依次的顺序是:状态、日志、相册、视频、音频,你可以上面的支持格式添加或删减。把上面的代码copy到主题的functions.php(模板函数)里,怎么正确的粘贴我就不废话了。
然后修改你主题的index.php(有的主题可能是loop.php或者其他,具体参见自己的主题)把循环的部分替换成下面代码:
<?php if( has_post_format( 'status' )) { //状态 > 状态样式 <?php } else if ( has_post_format( 'aside' )) { //日志 > 日志样式 <?php } else if ( has_post_format( 'gallery' )) { //相册 > 相册样式 <?php } else if ( has_post_format( 'video' )) { //视频 > 视频样式 <?php } else if ( has_post_format( 'audio' )) { //音乐 > 音乐样式 <?php } else{ //标准 > 常规样式 <?php } ?>
具体样式需要你自己慢慢调试了,我贴我的代码没什么意义。
陌小雨再给大家分享一个逻辑更清晰的写法:
第一:比如我添加视频 音频文章形式 先在functions.php加载
add_theme_support( 'post-formats', array( 'video','audio', ) );
第二:在index.php
中找到
<?php while ( have_posts() ) : the_post(); ?> 内容君 <?php endwhile; ?>
替换成以下:
<?php while ( have_posts() ) : the_post(); ?> <?php get_template_part( 'content', get_post_format() ); ?> <?php endwhile; ?>
第三:在主题目录创建
content.php
(默认文章形式)
content-audio.php
(音频形式)
content-video.php
(视频形式)
如果添加了别的文章形式 就要创建 content-xxx(形式名称).php
喜欢折腾的朋友应该跃跃欲试了吧!