2016年2月16日星期二

通过自定义模板,为你的WORDPRESS主题添加文章格式

什么是WordPress文章格式?

  在WordPress发布文章按钮侧栏发布文章的时候可以选择视频格式,图片格式,文字格式等等,当然,前提是要你的WordPress主题支持该功能,一般收费主题中,或者比较优秀的WordPress主题中就有此功能,多种文章格式供大家选择。之所以有这些文章格式,只是为了美观,或者使文章看起来更得体一点。本次的WordPress教程就是教大家如何使用自定义模板文件格式在你的WordPress主题中。我们将展示两种不同的方法,来使你的WordPress主题支持自定义文章格式。

WordPress-Post-Formats-798x350

 

为你的WordPress主题添加支持文章格式

如果你的主题不支持文章格式,首先你需要在functions.php中添加如下类似代码让你的主题支持该功能,WordPress支持以下十个文章格式:

  • Standard:只是一个普通的文章没有什么特别的东西。
  • Aside:类似于一个facebook的更新。
  • Link:链接到外部网站。
  • Image:只是一个简单的图像,没有什么巨大的。
  • Quote:引用。
  • Status:一个简短的状态更新,类似于微博。
  • Video:一个视频。
  • Audio:音频文件。
  • Chat:全文聊天。

1
add_theme_support( 'post-formats', array( 'aside', 'chat','gallery','image','link', 'quote', 'status', 'video', 'audio' ) );  

您还可以添加文章格式支持页面和自定义文章类型:

1
2
3
4
5
// 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' );  

 

在文章主循环中使用

  如果你只是想改变文章格式中的循环,这一招将是你想要的,我们将使用single.php这个文件,多种循环的文章格式,添加下面的代码到你的single.php中:

1
<?php get_template_part( 'content', get_post_format() ); ?>

现在,创建并且上传你的自定义格式循环文件到你正在使用的主题下,文件的命名应该为content-{post-format}.php,例如:content-video.php and content-audio.php

最后不要忘记添加一个content.php文件,因为这将作为刚才的自定义格式循环文件的默认文件,如果自定义文件不存在!

 

使用自定义single.php文件

如果你是一个新手,一个小白,并且不想去折腾那些烦人的循环,那么你就下面的这些吧,这些技巧将是对你有用的。我们将创建一个自定义音频文章格式,我们将给他命名为:single-video.php.

提示:你也可以直接复制你的single.php文件,并在上面做一些改变,然后作为你的自定义文章格式文件。

接下来,上传single-video.php到你的主题的根目录下面,并且添加如下代码片段到functions.php中:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
add_action('template_include', 'load_single_template');  
function load_single_template($template) {  
  $new_template = '';  
  
  // single post template  
  if( is_single() ) {  
    global $post;  
  
    // template for post with video format  
    if ( has_post_format( 'video' )) {  
      // use template file single-video.php for video format  
      $new_template = locate_template(array('single-video.php' ));  
    }  
  
  }  
  return ('' != $new_template) ? $new_template : $template;  
}  

现在,你就可以使用single-video.php 这个文件作为你的文章格式了,在发布文章的时候选择它就OK了。总的来说,最后这方法比较简单,也比较容易懂。





没有评论:

发表评论