也想出现在这里?联系我们
也想出现在这里?联系我们
也想出现在这里?联系我们
也想出现在这里?联系我们
您好!欢迎来到模板下载吧!本站资源24小时自动发货,请放心选购,一次付费,终身下载,售后请提交工单!

wordpress主题支持内置文章形式的方法

半岛未凉 2022-11-09 Wordpress教程 - 技术文档 - 站长学院 29 已收录 本文共2634个字,预计阅读需要7分钟。
  • 文章介绍
  • 快速入门
  • 增值服务
文章形式是wordpress内置的功能,提供包括日志、图像、视频等多种文章格式,博主发布文章的时候可以根据文章的类型,在编辑页面的右侧选择对应的文章形式。这个功能让博主划分不同类型文章的同时便于博主给不同形式的文章单独设计显示形式,而且不受分类限制。

给主题添加文章形式功能:

要使用wordpress文章形式,需要让当前使用的主题支持文章形式,在主题的functions.php文件,添加以下代码:

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

参数说明

  • aside:日志,不显示标题的标准文章
  • image:图像,单张图像。文章中的首个<img />标记将会被认为是该图片。
  • video:视频,单一视频。
  • quote:引语,引用他人的一段话。
  • link:链接,链接到其它网站的链接。
  • gallery:相册,图像陈列厅。
  • status:状态,简短更新,通常最多 140 个字符。类似于微博
  • audio:音频,一个音频文件
  • chat:聊天,聊天记录
不同形式文章调用不同文章模板

默认情况下,wordpress文章统一调用single.php模板,那么怎么给不同的文章格式调用不同的文章模板?

方法一:

1、把当前主题的single.php文件命名为content.php,然后重新创建一个single.php文件,添加以下代码:

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

把各个文章形式要调用的模板命名为content-{post-format}.php格式,如

  • Standard:content.php
  • Aside:content-aside.php
  • Link:content-link.php
  • Image:content-image.php
  • Quote:content-quote.php
  • Status:content-status.php
  • Video:content-video.php
  • Audio:content-audio.php
  • Chat:content-chat.php

方法二:

1、在主题的functions.php文件添加以下代码:

add_action('template_include', 'load_single_template');
function load_single_template($template) {
$new_template = '';
if( is_single() ) {
global $post;
if ( has_post_format( 'aside' )) {
$new_template = locate_template(array('single-aside.php' ));
}elseif(has_post_format( 'link' )){
$new_template = locate_template(array('single-link.php' ));
} elseif(has_post_format( 'image' )){
$new_template = locate_template(array('single-image.php' ));
} elseif(has_post_format( 'quote' )){
$new_template = locate_template(array('single-quote.php' ));
} elseif(has_post_format( 'status' )){
$new_template = locate_template(array('single-status.php' ));
} elseif(has_post_format( 'video' )){
$new_template = locate_template(array('single-video.php' ));
} elseif(has_post_format( 'audio' )){
$new_template = locate_template(array('single-audio.php' ));
} elseif(has_post_format( 'chat' )){
$new_template = locate_template(array('single-chat.php' ));
} else{
$new_template = locate_template(array('single.php' ));
}
}
return ('' != $new_template) ? $new_template : $template;
}

2、创建以下php文件:

  • Standard:single.php
  • Aside:single-aside.php
  • Link:single-link.php
  • Image:single-image.php
  • Quote:single-quote.php
  • Status:single-status.php
  • Video:single-video.php
  • Audio:single-audio.php
  • Chat:single-chat.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文件添加以下代码,把my_custom_post_type改为自定义文章类型名称:

add_post_type_support( 'page', 'post-formats' );
add_post_type_support( 'my_custom_post_type', 'post-formats' );

最后可以根据自己的需要设计不同的模板了!

上一篇:

下一篇:

wordpress主题支持内置文章形式的方法:等您坐沙发呢!
大牛,别默默的看了,快来点评一下吧!:)。

您必须登录后才能发表评论哦!:)

站内登录 QQ登录 微博登录
wordpress自适应高级图片shejigh主题

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系作者

模板下载吧,累计帮助1000+用户成功建站,为草根创业提供助力!

立刻开启你的建站之旅
现在加入模板下载吧,注册一个账号
  • 模板下载吧拥有海量网站模板及源码,站长亲测干净无后门。

  • 注册即能下载免费模板栏目资源,帮您更快的完成网站建设。

  • 每日更新模板资源,每日精品推荐,及时获取最新模板资源流行去向。

  • 完美的售后服务,帮助草根站长、企业等成功建站。

  • 将您最爱的资源收藏,建立自己的资源库,并与朋友分享。