add_theme_support()
は、WordPress のテーマに特定の機能を追加するための関数です。
この関数を使うことで、テーマにカスタムロゴ、アイキャッチ画像(サムネイル)、HTML5のマークアップサポートなどを有効にできます。テーマ開発の際に重要な関数であり、functions.php
に記述することで機能を拡張できます。
機能の説明
add_theme_support()
は、テーマに特定の機能を追加するための WordPress のテンプレートタグです。この関数を使うことで、以下のような機能をテーマに追加できます。
主な用途
- アイキャッチ画像(サムネイル)を有効化
- カスタムロゴの追加
- カスタム背景やカスタムヘッダーの設定
- HTML5 マークアップのサポート
- エディターのカラーパレットやスタイルを追加
シンプルなコード例
function my_theme_setup() {
add_theme_support('post-thumbnails');
}
add_action('after_setup_theme', 'my_theme_setup');
'post-thumbnails'
:アイキャッチ画像(サムネイル)を有効化after_setup_theme
フック内で実行することで、適切なタイミングで機能を追加
このコードを追加すると、投稿やページでアイキャッチ画像を設定できるようになります。
使い方の説明
アイキャッチ画像(サムネイル)を有効化
function my_theme_setup() {
add_theme_support('post-thumbnails');
}
add_action('after_setup_theme', 'my_theme_setup');
投稿やカスタム投稿タイプでアイキャッチ画像を利用する場合、これを有効化する必要があります。
カスタムロゴを追加
function my_theme_setup() {
add_theme_support('custom-logo', array(
'height' => 100,
'width' => 400,
'flex-height' => true,
'flex-width' => true,
));
}
add_action('after_setup_theme', 'my_theme_setup');
管理画面の「外観」→「カスタマイズ」からロゴを設定できるようになります。
カスタム背景を追加
function my_theme_setup() {
add_theme_support('custom-background', array(
'default-color' => 'ffffff',
'default-image' => '',
));
}
add_action('after_setup_theme', 'my_theme_setup');
背景色や背景画像をカスタマイズ可能になります。
HTML5 マークアップのサポート
function my_theme_setup() {
add_theme_support('html5', array('search-form', 'comment-form', 'comment-list', 'gallery', 'caption'));
}
add_action('after_setup_theme', 'my_theme_setup');
フォームやコメントリストなどの HTML 出力が、よりクリーンでモダンなマークアップに変更されます。
一緒に使うことが多い関連タグ
remove_theme_support()
特定の機能を無効化する場合に使用します。
function my_theme_remove_support() {
remove_theme_support('post-thumbnails');
}
add_action('after_setup_theme', 'my_theme_remove_support');
post-thumbnails
のサポートを削除します。
set_post_thumbnail_size()
デフォルトのサムネイルサイズを設定する場合に使用します。
function my_theme_setup() {
add_theme_support('post-thumbnails');
set_post_thumbnail_size(150, 150, true);
}
add_action('after_setup_theme', 'my_theme_setup');
サムネイルのデフォルトサイズを 150x150px に設定(true
はトリミングを意味します)。
追加情報で取得したい場合
テーマのサポート情報を確認する
current_theme_supports()
を使うと、指定した機能が有効かどうかを確認できます。
if (current_theme_supports('post-thumbnails')) {
echo 'このテーマはアイキャッチ画像をサポートしています。';
}
想定されるトラブル
機能が反映されない
解決方法
add_theme_support()
をafter_setup_theme
フック内で実行しているか確認する- サポートを追加した機能が管理画面で有効になっているか確認する
サムネイルが表示されない
解決方法
the_post_thumbnail()
を適切な場所に記述しているか確認set_post_thumbnail_size()
で適切なサイズを指定しているか確認- サムネイル画像が適用されているか管理画面でチェック
Q&A
まとめ
add_theme_support()
は、WordPress テーマにアイキャッチ画像、カスタムロゴ、カスタム背景、HTML5 サポートなどの機能を追加するための重要な関数です。
after_setup_theme
フックを使って適切なタイミングで実行することが推奨されます。テーマの拡張に欠かせないため、テーマ開発者にとって必須の関数です。
コメント