add_theme_support()

wordpress函数 2015年08月27日 , ,

函数add_theme_support()使主题或者插件来支持WordPress一些特性。如果在wordpress主题中使用,则应该在functions.php文件中调用。如果在wordpress插件中使用,就将其与某个hook关联,在after_setup_themeinit的hook最合适。http://furzoom.com/add_theme_support/

函数原型

add_theme_support( $feature, $arguments );

参数详解

  1. $feature,需添加支持的特性的名字。
    1. 'post-formats'
    2. 'post-thumbnails'
    3. 'custom-background'
    4. 'custom-header'
    5. 'automatic-feed-links'
    6. 'html5'
    7. 'title-tag'
    8. 'editor-style'
    9. 'widgets'
    10. 'menus'
  2. $arguments,可选参数,默认为true。

参数feature的后三种情况,'editor-style''widgets''menus',在内部注册,不在主题中直接使用。

返回值

如果失败则返回false,其他情况无返回值void

应用实例

Post Formats

该参数使主题支持特定的post-formats类型,详见这里。如添加'aside'、'gallery'两种类型。

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

Post Thumbnails

该参数使主题支持文章缩略图(Post Thumbnails),第二个参数为支持Thumbnails的文章类型。。

add_theme_support('post-thumbnails');
add_theme_support('post-thumbnails', array('post')); // 仅Posts
add_theme_support('post-thumbnails', array('page')); // 仅Pages
add_theme_support('post-thumbnails', array('post', 'movie')); // Posts和Movies

要在index.php或者single.php或者自定义模板中显示Thumbnails,则使用如下函数:

the_post_thumbnail();

在显示Thumbnail之前,可以使用如下方式检查文章是否存在Thumbnail:

if (has_post_thumbnail()) {
    the_post_thumbnail();
}

Custom Background

该参数使主题支持自定义背景。如:

$defaults = array(
        'default-color'          => '',
        'default-image'          => '',
        'wp-head-callback'       => '_custom_background_cb',
        'admin-head-callback'    => '',
        'admin-preview-callback' => '',
);
add_theme_support('custom-background', $defaults);

Custom Header

该参数使主题支持自定义头部。如:

$defaults = array(
        'default-image'          => '',
        'random-default'         => false,
        'width'                  => 0,
        'height'                 => 0,
        'flex-height'            => false,
        'flex-width'             => false,
        'default-text-color'     => '',
        'header-text'            => true,
        'uploads'                => true,
        'wp-head-callback'       => '',
        'admin-head-callback'    => '',
        'admin-preview-callback' => '',
);
add_theme_support('custom-header', $defaults);

Feed Links

该参数使主题在头部支持对文章及评论的Feed链接,如:

add_theme_support('automatic-feed-links');

HTML5

该参数使主题允许主题使用HTML5标签,针对搜索表单、评论表单、评论列表、相册和标题(caption)。如:

add_theme_support('html5', array('search-form', 'comment-form', 'comment-list', 'gallery', 'caption'));

Title Tag

该参数允许插件和主题来管理document title tag。

add_theme_support('title-tag');

总结

注意参数'editor-style''widgets''menus'都是只读的,可以使用函数current_theme_supports()进行检测。

如无特别说明,本站文章皆为原创,若要转载,务必请注明以下原文信息:
日志标题:《add_theme_support()》
日志链接:http://furzoom.com/add_theme_support/
博客名称:枫竹梦

【上一篇】
【下一篇】

发表评论

插入图片

NOTICE1:请申请gravatar头像,没有头像的评论可能不会被回复!

回到顶部