1. HOME
  2. »
  3. プログラミング・Web
  4. »
  5. WordPress
  6. »
  7. 【 WordPress 】functions.php で色んな機能を使ってみよう!【基本】

【 WordPress 】functions.php で色んな機能を使ってみよう!【基本】

馬鹿は風邪を引かないといいますが、どうやら引いたようです。@It_is_Rです。
ちなみに、「馬鹿は風邪を引かない」ということわざは、「馬鹿は風邪を引いても気がつかない」という例えだって知ってましたか? そんなの常識って? やかましいわ。

関係ない話はさておき、 WordPress テーマ自作シリーズ、第8回目となりました。
今回は functions.php を使って、様々な機能を使ってみようと思います。

このシリーズの前回の記事はこちらです。
WordPress テーマ自作!投稿ページ、固定ページの作り方。

functions.php について

functions.php を使うことによって、様々な機能を追加することができます。
例えば、管理画面にメニューを追加したり、サイドバー、ナビゲーションなどのテーマ機能を有効にしたりということができます。

サイドバー、メニュー項目を有効にする

以前こちらの記事でも紹介しましたが、もう一度ソースコードだけ。

functions.php

<?php
function mytheme_widgets_init() {
	register_sidebar( array(
		'name' => 'ウィジェット',
		'id' => 'sidebar',
		'before_widget' => '<div>',
		'after_widget' => '</div>',
		'before_title' => '<h2 class="title">',
		'after_title' => '</h2>',
	) );
}
add_action( 'widgets_init', 'mytheme_widgets_init' );

サイドバー、メニュー項目が有効になります。

サムネイルを有効にする

サムネイルを有効にしていない場合は、記事投稿ページにサムネイルの項目が表示されません。
サムネイルを有効にするには、以下を functions.php に入力します。

functions.php

add_theme_support( 'post-thumbnails' );

記事投稿ページを見ると、アイキャッチ画像の項目が増えていることが分かります。
wordpress

もし表示されていない場合は、表示オプションのアイキャッチ画像にチェックが入っているか確認してください。
wordpress

タイトルタグを自動で出力する

テンプレートにtitleタグを直接入力しなくても、 functions.php に以下を入力すれば、自動的にtitleタグを出力してくれます。

functions.php

add_theme_support( 'title-tag' );

キャプション、コメントフォームなどを HTML5 にする

以下の functions.php に入力することで、コメントリスト、コメントフォーム、検索フォーム、ギャラリー、キャプションが、 HTML5 で出力されます。

functions.php

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

投稿フォーマット

以下を追加することによって、投稿フォーマットを選択できるようになります。
functions.php

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

wordpress

また、自作テンプレートで投稿フォーマットを使うことを想定していなかった場合、それ専用にテンプレートを直す必要があります。

抜粋の文字数を変更

以下の例は、抜粋文の文字数を100文字に変更するものです。

functions.php

function custom_excerpt_length( $length ) { return 100; }
add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );

まとめ

今回は functions.php で使えるいくつかの設定を紹介しました。
また次回もお楽しみに。

この企画の一覧はこちら

  1. WordPress テーマ自作 | 本格的に作りたい人が揃えるべきツールや知識。
  2. WordPress のテーマ開発に絶対必須な gulp プラグイン9選!
  3. これから作る WordPress のテーマをローカルサイトに適用させる。
  4. WordPress テーマの基本構成と読み込まれるファイルの優先順位。
  5. WordPress テーマ自作 | Pug ( Jade ) で記事一覧ページを作る方法!
  6. WordPress にウィジェット(サイドバー)を追加する方法。
  7. WordPress テーマ自作!投稿ページ、固定ページの作り方。
  8. 【 WordPress 】functions.php で色んな機能を使ってみよう!【基本】
  9. カスタムロゴの使い方。 WordPress サイトのタイトルを画像に変更!
  10. WordPress テーマ自作 | functions.php から CSS を読み込む方法。
  11. WordPress テーマ自作 | サイト全体のレイアウトを整える。

スポンサードリンク

関連コンテンツ

オススメ記事

【Android Studio】アプリ開発の基本とそれぞれのファイルの役割を覚える。

iPhone持ってないみなさん、一緒にAndroidアプリ開発しましょう。@It_is_Rです。 Androidアプリ開発、5回目となりました。 今回は Android Studio でアプリ

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。ブログ全体の幅を変更。

現実社会では殆ど言葉を発しない@It_is_Rです。だって、厄介なことになりたくないじゃん。 今回も前回に引き続き、FC2ブログカスタマイズの記事です。前回、ヘッダーのサイズを変更しましたが、ブ

キーボードで画像を動かすよ!

小学生からのJavaScript入門。キー入力でキャラを動かしてみよう!

小学生からのJavaScript入門講座(にゅうもんこうざ)、第4弾です。 前回はHTMLでりこちゃんの画像を表示し、クリックすると前に一歩動くというのをJavaScriptで作りました。 J

java

Eclipseによる、Javaでじゃんけんゲームプログラムの作り方

※追記(2018/8/29) より分かりやすい記事になるよう修正しました。 今回はJavaを使って、じゃんけんゲームを作る方法を紹介します。 eclipseがインストールされ

【Android Studio】 GridLayout の使い方。複雑なレイアウトを表現する方法

スマホの充電がいつの間にか無くなっている@It_is_Rです。 Androidアプリ開発、10回目となりました。 前回、様々なレイアウトの使い方を紹介しましたが、今回はその中でもちょっと難しい

WordPress | ツイート数やシェア数付きのSNSシェアボタンを自作しよう!

最近SNSシェアボタンを作り直した@It_is_Rです。 せっかく作ったんだから、シェアするのだよ、みんな。 そこで今回は、Twitter や Facebook、GooglePlus、はてな

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。【準備編】

いつもどうもです。@It_is_Rです。 少し前まで、私は FC2ブログ を使っていました。 やはり個性を大切にしたい私にとって、用意されたテンプレートを使うことに抵抗がありました。 「

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。背景を変更する。

三度の飯よりも好きなものが多すぎて比較にならない@It_is_Rです。 FC2ブログ"最強"カスタマイズ入門講座の続きですね。最強にカスタマイズしていきましょう。 今回は背景色の変更をメインに

Ameba customize

アメーバのOwndで、無料で超簡単にホームページ作ってやろうぜ!!

どうも、@It_is_Rです。 ホームページを作成するには、まずHTMLを使う能力、若しくはソフトが必要になります。 さらにサーバーを借りなくてはなりません。するとお金がかかったりします。 では

java

Javaのクラスとメソッドの違いとは?ゲーム風に解説。

この頃小説を読んでいなく、何か読みたいなと思っている@It_is_Rです。 Javaを勉強し始めたばかりの人は、何やら難しい単語に混乱する人も多いでしょう。その中で、クラスとメソッドって一体何が

コメントをどうぞ!

メールアドレスが公開されることはありません。