发现很多“古老”的WordPress主题使用量非常大,虽然部分也在随着WordPress版本的升级而“升级”,只不过是修复了bug而已,wordpress的新特性并没有使用。而且多数国内的wordpress主题制作者,也都是在这些主题的基础上进行创作,不免有点过时。今天枫竹梦就介绍下不算新、很好用但较少主题支持的post format的内容。

post format简介

post format(文章格式)是wordpress 3.1引入的一个新的特征。主题可以根据post format的不同以不同的方式来展示文章。wordpress提供了一些标准的post format,作为wordpress主题的开发者不必去支持每一种post format,当然也可不支持任何一种。post format的类型不能通过主题或者插件进行添加。

简单的说,如果一个wordpress主题支持post format,当文章发布时可以选择post format类型来以不同的方式来展示这个篇文章。

以前可能通过文章的不同分类、或者根据post_class()来定制文章的展示形式。使用post format可以更加专注地使用CSS来进行美化文章展示。

post format类型

下面是wordpress支持的9种post format类型,如果主题支持这些类型,发布文章时就可以选择它们。

注意:不需要改变文章的内容,只改变文章的post format就可以以不同的方式来展示文章。具体如何展示取决于正在使用的主题的支持情况。

  • aside
  • audio
  • chat
  • gallery
  • image
  • link
  • quote
  • status
  • video

如果没有指定任何的post format类型,那么会默认选择Standard类型。Standard类型不属于post format类型。

下面是主题Twenty Thirteen支持的post format的类型。

添加主题支持

如果想让主题支持post format,只需将add_theme_support()函数添加在functions.php中即可,如:

add_theme_support( 'post-formats', array( 'aside', 'gallery');
 

添加上面的代码后,发布文章时就可以选择asidegallery类型了。要添加其他类型只需将post format添加到上述数组中即可。

 

添加页面支持

上面代码默认只是添加了post类文章可选post format。如果想让页面(Page)或者自定义post类型支持post format,需要使用add_post_type_support()函数,同样将其放在functions.php中。如:

// add post-formats to post_type 'page'
add_post_type_support( 'page', 'post-formats' ); // add post-formats to post_type 'my_custom_post_type'
add_post_type_support( 'my_custom_post_type', 'post-formats' );

使用post format

在主题中使用get_post_format()来检测文章类型。如果文章类型为standard类型,则返回false。也可以使用has_post_format()来测试。

if( has_post_format( 'video')) {
echo 'this is the video format';
}

通过在文章的wrapper结构中调用post_class()函数,将添加额外的样式类,然后通过样式表进行布局或美化。如:

.format-video .post-title {
display: none;
}

总结

虽然可以使用个性化的样式对上面的几种类型的post format进行处理,但是为了不给使用者造成困惑,还是建议根据post format的本身含义进行样式处理。

黄聪:wordpress如何开启文章格式post format的更多相关文章

  1. 黄聪:如何开启IIS7以上的“IIS6管理兼容性”

    护卫神PHP套件的安装,需要开启“IIS6管理兼容性”, 那么,如何开启IIS7.IIS7.5.IIS8.0的IIS6兼容模式呢? 设置的时候,请参照如下截图:

  2. 黄聪:Mysql开启InnoDB引擎出现1067错误的解决办法

    在my.ini文件添加下面这行: innodb_force_recovery = 1 可以解决:InnoDB: Attempted to open a previously opened tables ...

  3. 黄聪:《跟黄聪学WordPress插件开发》

    续<跟黄聪学WordPress主题开发>之后,又一个作品完成!<跟黄聪学Wordpress插件开发>,国内最好的Wordpress插件开发视频教程!! 目录预览: WordPr ...

  4. 黄聪:《跟黄聪学WordPress主题开发》

    又一个作品完成!<跟黄聪学Wordpress主题开发>,国内最好的Wordpress主题模版开发视频教程!! 目录预览: WordPress官方源文件层式结构讲解 WordPress数据库 ...

  5. 黄聪:wordpress教程

    又一个作品完成!<跟黄聪学Wordpress主题开发>,国内最好的Wordpress主题模版开发视频教程!! 目录预览: WordPress官方源文件层式结构讲解 WordPress数据库 ...

  6. WordPress 博客文章时间格式the_time()设置

    国外设计的WordPress 主题里的文章的时间格式是类似“十一月 21, 2010”这种格式的,而中国人习惯的是年在前,月紧跟其后,日在末尾,所以看国外的就显得很别扭,但是我们可以通过修改WP时间代 ...

  7. WordPress实现长篇文章/日志/单页面分页功能效果

    在WordPress里写文章,如果内容很多,你可能想要把文章分成几页来让访客浏览,这样既保持了网页的美观,也提高了网页的打开速度.但是在WordPress默认提供的按钮里,你可能找不到文章分页功能所对 ...

  8. 黄聪:如何使用CodeSmith批量生成代码(转:http://www.cnblogs.com/huangcong/archive/2010/06/14/1758201.html)

    先看看CodeSmith的工作原理: 简单的说:CodeSmith首先会去数据库获取数据库的结构,如各个表的名称,表的字段,表间的关系等等,之后再根据用户自定义好的模板文件,用数据库结构中的关键字替代 ...

  9. WordPress批量修改文章内容、URL链接、文章摘要

    通过SQL语句来批量修改wordpress博客内容,文章中所有语句都使用默认的wp_表前缀,如果您的数据表前缀不是wp_则需要在语句中作相应更改. 方法/步骤   批量修改文章内容 如果您想替换之前写 ...

随机推荐

  1. hdu1712 ACboy needs your help 分组背包

    最基础的分组背包~ #include <iostream> #include <cstdio> #include <cstdlib> #include <cs ...

  2. Docker仓库管理

    1.# docker pull registry //下载registry镜像,registry为docker官方提供的一个镜像,我们可以用它来创建本地的docker私有仓库. 2.# docker ...

  3. svn 安装 、使用(1)

    写在开头: 虽然网络极大的方便了我们查找答案,而且有很多人写各样的博客.但每个人在实际中的情况不一样,遇到的问题也不一样,大牛们会把步骤写的很简单,可能真的是怕麻烦,但显然就有一些东西已经不适合一部分 ...

  4. 了解CentOS及周边

    CentOS相关介绍 CentOS是Community ENTerprise Operating System的简称RHEL的全称则是Red Hat Enterprise LinuxFedoro Co ...

  5. JS 的线程、事件循环、任务队列简介

    JS 是单线程的,但是却能执行异步任务,这主要是因为 JS 中存在事件循环(Event Loop)和任务队列(Task Queue). 事件循环:JS 会创建一个类似于 while (true) 的循 ...

  6. 嵌入式Linux开发——内容介绍与开发环境的搭建

    嵌入式Linux开发步骤 设计自己的硬件系统 编写Bootloader 裁剪自己的Linux内核 开发移植设备驱动 构建根文件系统 开发应用程序 嵌入式Linux学习要点 熟练使用开发工具和相关指令集 ...

  7. Java Web学习(1): 客户端请求、服务器响应及其HTTP状态码

    一JSP客户端请求 当浏览器请求一个网页时,它会向网络服务器发送一系列不能被直接读取的信息,因为这些信息是作为HTTP信 息头的一部分来传送的.我们可以查阅HTTP协议来获得更多的信息. 下表列出了浏 ...

  8. win7下安装配置tomcat,java运行环境

    转 http://www.cnblogs.com/pannysp/archive/2012/03/07/2383364.html 1.下载JDK,安装 官网下载地址:http://java.sun.c ...

  9. EDIUS设置采集磁带的方法

    EDIUS作为一款应用广泛的非线性视频编辑软件,将磁带记录的视频信号采集为可以编辑的数字视频信号的使用还是十分广泛的,毕竟磁带不同于数字存储单元,它在批量化的视频录制中表现出很大的优势.下面,小编跟大 ...

  10. ABBYY是怎么自定义主窗口的

    启动 ABBYY FineReader OCR文字设别软件时,将打开其主窗口.同时将显示任务窗口,可以启动内置或自定义自动化任务. 主窗口显示目前打开的 ABBYY FineReader 文档. ● ...