creatersnest19

【WrordPress】function.phpに書いておきたいおすすめコードまとめ


既存テーマをカスタマイズしたり、
オリジナルのテーマを作る際にfunctions.php内に毎回書くのに毎回ググってしまう。。。
そんな頻出コードをまとめました。
それでは見ていきましょう。

 

RSSを自動生成する

 

このコードをfunctions.php内に書いておくと、各ページで以下の様に
記事のRSSとコメントのRSSのURLが出力されるようになります。

 

 

RSSにカスタム投稿タイプの更新情報も含める

カスタム投稿タイプの更新情報もRSSに表示したい場合は
以下のコードをfunctions.php内に書きましょう。

この場合「blog」「news」投稿タイプの更新情報がRSSに表示することができます。

 

titleタグを自動生成する

従来は各ページに合わせたtitleを動的に出力するには、header.php内に

と書く必要がありましたが、WordPress4.1から
以下のコードをfunctions.php内に書くことで同じことができるようになりました。

 

アイキャッチ画像の機能を使用する

アイキャッチ画像の機能は何もしなくても使えると思っていませんか?
実は以下のコードをfunctions.phpに書かないと使うことができません。

 

カスタムメニュー機能の追加

以下のコードをfunctions.php内に挿入することで、
管理画面 > 外観 > メニュー
のカスタムメニューの機能を使うことができます。

カスタムメニューはグローバルナビゲーションを作る際など大変便利ですよね。

 

HTML5でのマークアップで出力する

以下のコードのfunctions.php内に書くと、配列で引数として渡した機能をHTML5のマークアップで出力します。

具体的な例を挙げてみましょう。
先程のコードをfunctions.php内に書いていない場合に

をテンプレート内に書くと以下のようなマークアップで検索フォームが出力されます。

 

しかし、add_theme_support( ‘html5’ ) をfunctions.php内に書いた場合は以下のように

HTML5のマークアップで、検索フォームが出力されます。

 

使用する投稿フォーマットの指定

アイキャッチ画像機能と同じく、投稿フォーマット機能も
functions.php内に以下のコードを書かなければ使うことはできません。

 

カスタムの画像サイズを追加

add_image_size関数をfunctions.php内に書くことで画像をアップロード時に
生成したい画像サイズを登録することができます。
例えば以下のコードでは200px 200pxにクロップされた画像サイズを
w200-h200という画像サイズの名前で登録します。

add_image_sizeについて詳しくはこちら

 

タイムゾーンを東京に設定

記事がpublishされた時間を表示する時など、日本の時間と9時間ずれてしまう場合があります。
このコードをfunctions.php内に書いておけば、そのようなことは起こらないので、僕はいつも必ず書いています。

 

本文から抜粋の文字数を変更

で本文からの抜粋を表示することができますが、
抜粋する文字数を変更したい場合は以下のように書くことで
変更することができます。
この場合だと30文字抜粋に変更されます。

 

抜粋の後ろに続く文字列を変更

続いてもまた

についてです。
通常、抜粋の文字の最後には […] という文字列が続きます。
この文字列を変更したい場合はfunctions.phpに以下のように書きましょう。

この場合、[…] は … に変更されます。

 

プロフィールページにオリジナルのフィールドを追加

 

以下のコードをfunctions.phpに書くことで、

 

 

管理画面メニューの削除

例えば「投稿」というメニューが不必要な場合は下記のコードで管理画面上から削除することができます。

$menuの中身をvar_dumpなどで見てみると、管理画面のメニューの情報が
配列で入っていますので、削除したいものをunsetすれば削除することができます。

 

ビジュアルエディタ用のCSSファイルを指定

以下のようにfunctions.php内に書くことで、
ビジュアルエディタ用のCSSファイルを指定することができます。

この場合、現在使用しているテーマ内のassets/css/editor.cssがビジュアルエディタ用のCSSとして読み込まれます。

 

検索結果に任意の投稿タイプのみ表示したい

WordPressサイト内検索時に「blog」というカスタム投稿タイプの
記事のみをヒットさせたい場合は下記のように書くことができます。

固定ページは検索結果に表示したくない、ということなど結構ありませんか?そういった場合は、このコードで解決できます。

 

まとめ

いかがでしたでしょうか?
数行のコードをfunctions.php内に加えることで、
気の効いたカスタムができることがお分りいただけたのではないでしょうか。
使えそうなコードがありましたら、是非使ってみてくださいね。

本サイトが運営するWebデザインのオンラインスクールが公開中!
以下のリンクからお申込みで、特別料金の70%OFF!

未経験からプロのWebデザイナーになる! 400レッスン以上の完全マスターコース
こちらのコースは全くの未経験の方が、プロのWebデザイナーとして働けるレベルになることを目的としたコースです。
・全422レッスン & 42時間! 通学スクール80万円相当の内容
・授業×チャレンジ課題で実践的なスキルが身につく!
・過去1100名以上のスクール卒業生を輩出した、 Webサービス運営企業・デザイナー輩出企業だからこそ作れるプログラム

Webやアプリの最新デザインツール Sketch3 |100レッスンの完全マスターコース
Sketch3未経験からプロレベルを目指す、充実したコースです。
Sketch3の単なる機能説明をするような、つまらないコースではなく、アイコン制作、ボタン作成、メインビジュアル制作、Webページの制作など、実際の制作をしながら実践力を身につけます。
1000名以上の卒業生がいる実績ある日本のWebデザインスクールが提供しています。


Next Articleインパクトのある日本語の極太フォント50選