株式会社シスアナコム

情報システムに関することなら、どんなことでも適切に助言いたします!

この投稿は1年以上前に公開されました。
現在では状況や内容が変わっている可能性があります。
ご注意下さい。m(_ _)m

ワードプレスの子テーマにfunctions.phpを作成する

   

シスアナコム社長の杉山です。

ワードプレスは様々なテーマに様々なカスタマイズを加えることで、様々なサイトを作ることができます。

見た目を少しカスタマイズするだけなら、子テーマを作って、修正すべきファイルを親テーマから子テーマのフォルダにコピーした後、ワードプレスの管理メニューの外観→テーマ編集で修正すれば十分です。

しかし、場合によっては、独自のプログラムを追加しないと実現できないこともあります。

このような場合に必要となるファイルが「functions.php」です。

functions.phpの特殊事情

このファイルは同じテーマ内に存在する他のファイルとは少し事情が異なります。

子テーマを作った場合、親テーマと同じ名前のファイルが存在するときは、子テーマのファイルが優先されます。

これまで修正してきた、「home.php」、「single.php」、「style.css」などがそうです。

しかし、「functions.php」の場合、子テーマにファイルが存在する場合、親テーマのファイルに「追加」されます。

そのため、親テーマのフォルダに入っている「functions.php」ファイルは子テーマのフォルダにコピーしては絶対にダメです。

このファイルを親テーマから子テーマにコピーすると、その瞬間にウェブサイトでは何も表示されなくなります。

同じプログラムが2つ存在すると判断されてエラーになってしまうからです。

もし間違えてコピーしてしまった場合は、子テーマの「functions.php」を削除すれば大丈夫です。

子テーマにfunctions.phpを作る

よって、新規に何らかのプログラムを追加したい場合、子テーマに「functinos.php」という名前のファイルを新規に作る必要があります。

さくらインターネットの場合は以下の通り。

  • サーバコントロールからファイルマネージャを起動
  • 「wp-content/themes/子テーマ」フォルダを開く
  • 表示アドレスへの操作→ファイル作成
  • 文字欄を「UTF-8」に変更して、最低限の部分だけ入力して「保存」
  • ファイル名に「functions.php」で「OK」
最低限の部分はこの2行だけ。
<?php
?>

これで、ワードプレスの管理メニューから外観→テーマ編集で「テーマのための関数(functions.php)」が表示されます。

ここにPHPのプログラムを記入すればいいのです。

追加するプログラム

日付を比較して経過日数を計算する関数を追加します。

<?php
/* Unix Epoch d1とd2の日数の差を求める関数 */
function ddiff($d1,$d2) {
  return ($d1 - $d2) / 86400;
}
?>

この関数を何に使うかは、次回のひとことで書きます。

 - ひとこと, ひとこと(ワードプレス)

↓ブログランキングに参加しています!


ネット・PC(全般) ブログランキングへ
にほんブログ村 IT技術ブログ ITコンサルティングへ
にほんブログ村

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です