浅析WordPress文章形式

Author: 陌小雨Date: 2015-06-15View: 129

在博友处看到这样的首页文章输出形式,就萌发了陌小雨折腾文章形式的冲动,首先我们来认识一下WordPress的文章形式。
20150615111150

简单点说:文章形式这个功能就是定义某一篇文章在列表中展现的形式,样式可以自己随便的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

喜欢折腾的朋友应该跃跃欲试了吧!