説明
パラメータ
- $feature機能名。主な機能名と対応バージョンは次の通り。
機能名 対応バージョン 'post-thumbnails' 2.9.0 'automatic-feed-links' 2.9.0 'post-formats' 2.9.0 'custom-header' 3.4.0 'custom-background' 3.4.0 'html5' 3.6.0 'title-tag' 4.1.0 'custom-logo' 4.5.0 'customize-selective-refresh-widgets' 4.5.0 'starter-content' 4.7.0 'responsive-embeds' 5.0.0 'align-wide' 5.0.0 'dark-editor-style' 5.0.0 'disable-custom-colors' 5.0.0 'disable-custom-font-sizes' 5.0.0 'editor-color-palette' 5.0.0 'editor-font-sizes' 5.0.0 'editor-styles' 5.0.0 'wp-block-styles' 5.0.0 'core-block-patterns' 5.5.0 'editor-gradient-presets' 5.6.0 'experimental-link-color' 5.6.0 'custom-spacing' 5.7.0 'widgets-block-editor' 5.8.0 'block-template-parts' 6.1.0 'link-color' 6.3.0 'border' 6.3.0 'appearance-tools' 6.3.0 'editor-spacing-sizes' 6.6.0 - $args機能のパラメータを指定(省略時は、true)。
返り値
テーマ機能を登録できなかった場合はfalseを返す。
注意
自テーマのfunctions.phpにてadd_action関数を利用し、各種設定を行う関数内(Twenty Tenテーマではtwentyten_setup関数)で使用する。
なお3.0で追加されたナビゲーションメニューを追加する場合は、この関数ではなく、register_nav_menus関数を使用する。
パラメータ$featureによって$argsに指定する値が変わる。主なテーマ機能とその内容は次の通り。
| $feature | $argsの内容 |
|---|---|
| 'post-thumbnails' | true(省略可) |
| 'automatic-feed-links' | true(省略可) |
| 'post-formats' | サポートする投稿フォーマット('aside'、'image'、'video'、'quote'、'link'、'gallery'、'status'、'audio'、'chat')を格納した配列 |
| 'custom-header' | 以下の連想配列 |
| 'custom-header-uploads' | true(省略可) |
| 'custom-logo' | 以下の連想配列 |
| 'html5' | HTML5向けのマークアップ('search-form'、'comment-form'、'comment-list'、'gallery'、'caption')を格納した配列 [5.3.0]'script'と'style'が追加された。 |
| 'title-tag' | true(省略可) |
| 'custom-background' | キー('default-color'(文字列)、'default-attachment'(文字列))の値を格納した連想配列 |
| 'customize-selective-refresh-widgets' | true(省略可) |
| 'starter-content' | キー('widgets'(連想配列)、'posts'(連想配列)、'attachments'(連想配列)など)の値を格納した連想配列 |
| 'featured-content' | キー('featured_content_filter'(文字列)、'max_posts'(数値))の値を格納した連想配列 |
| 'responsive-embeds' | true(省略可) |
| 'align-wide' | true(省略可) |
| 'dark-editor-style' | true(省略可、'editor-styles'も必要) |
| 'disable-custom-colors' | true(省略可) |
| 'disable-custom-font-sizes' | true(省略可) |
| 'editor-color-pallete' | 連想配列を含む配列(連想配列のキーは'name'、'slug'、'color') |
| 'editor-font-sizes' | 連想配列を含む配列(連想配列のキーは'name'、'shortName'、'size'、'slug') |
| 'editor-gradient-presets' | 連想配列を含む配列(連想配列のキーは'name'、'gradient'、'slug') |
| 'editor-styles' | true(省略可) |
| 'wp-block-styles' | true(省略可) |
| 'core-block-patterns' | 標準でtrue |
| 'experimental-link-color' | true(省略可) |
| 'custom-spacing' | true(省略可) |
| 'widgets-block-editor' | true(省略可) |
| 'block-template-parts' | true(省略可) |
| 'link-color' | true(省略可) |
| 'border' | true(省略可) |
| 'appearance-tools' | true(省略可) |
| 'editor-spacing-sizes' | 連想配列を含む配列(連想配列のキーは'name'、'slug'、'size') |
本関数のパラメータは可変数で、第2パラメータの内容が配列のインデックス0の値として、第3パラメータの内容がインデックス1の値として、第4パラメータの内容がインデックス2の値としてシステム内に保存される。
[5.6.0]パラメータ$featureが'post-formats'で値が配列以外の場合、警告メッセージ('You need to pass an array of post formats.'の翻訳テキスト)が表示される。
[5.7.0]パラメータ$featureに追加された'custom-spacing'を指定しないと、ブロックエディターの各ブロックにて「サイズ(Dimensions)」に「パディング(Padding)」が表示されない。
使用例
- 投稿編集ページに「アイキャッチ画像」を追加する。<?php add_theme_support( 'post-thumbnails' ); ?>
- 投稿ページに「フォーマット」を追加する。<?php add_theme_support( 'post-formats', array( 'aside', 'link', 'gallery', 'status', 'quote', 'image' ) ); ?>
フィルター
実行するフィルターはありません。アクション
実行するアクションはありません。ソースファイル
/wp-includes/theme.php最終更新 : 2024年07月22日 14:50
関連
お勧め
初期状態で「抜粋」ウィジェットを表示する(2014年1月7日 更新)
投稿編集ページのウィジェットは標準で表示されるものとされないものがある。フォーラムに『投稿の編集画面にデフォルトで抜粋を表示させたい』という投稿があったので、ちょっと調べてみた。
query_posts(WP_Queryクラス)で投稿タグを絞り込む(2011年9月14日 更新)
投稿タグの絞り込みは、カテゴリーに似ているけど微妙に違っている。今日は、昨日投稿した「query_posts(WP_Queryクラス)でカテゴリーを絞り込む」の続きとして、投稿タグの絞り込みついてまとめてみる。カスタムフィールド関連関数のおさらい(2012年6月22日 更新)
カスタムフィールドは、投稿記事の拡張情報としてよく利用されている。投稿ページで登録した情報をアーカイブや投稿ページで表示しているが、投稿ページを表示する際にカスタムフィールドの値を更新して、サイドバーのようなページ内要素に利用したりしている。Align widgets horizontally:プラグイン作ってみました(2024年5月6日 更新)
ほぼ毎日何度も見ているダッシュボードページ。自分好みに各ウィジェットの場所を配置しているものの、何かすっきりしない。そこでふと思ったのが、ウィジェットを横並びにできれば隣り合うウィジェットの並びがガタガタしなくなるのでは!?
Contact Form 7に確認フェーズを(2012年12月16日 更新)
Contact Form 7はWordPressによるサイト製作でお世話になることが多いプラグインの1つ。ただ、クライアント様によっては、入力、確認、送信の3フェーズにしたいという要望があり、そんな時は別の方法を採用していたのですが、JavaScript(jQuery)を使ってページ遷移しなくてもいいなら確認フェーズは用意できるかなと思い、作り込んでみた。