FTPソフトなしでfunctions.phpを永久に編集する方法→Code Snippets(備忘録)

WordPressを使ったWebサイト編集についての備忘録。

概要としては、functions.phpを永久的に編集したい場合、「Code Snippets」というプラグインを使えば、FTPソフトを使うことなくそれが可能になる、という内容です。

WordPressについてはそこまで詳しくないので、もしかすると技術的に必ずしも正しくはないこともあるかもしれません。参考にする際はバックアップ必須かつ自己責任でお願いします。

 

WordPressで多少凝ったカスタマイズをする場合、使っているテーマの「functions.php」というファイルを編集したくなることがたまにあります。

ここで面倒なのは、WordPressのテーマファイルエディターから直接編集しても、親テーマがアップデートされるとその編集まで上書きされてまたやり直しになることです。

そのため、FTPソフトを使ってアレコレ(この記事では省略)することで、親テーマのアップデートに関係なく永久的にfunctions.phpを編集した状態にする、というのが一般的な方法ではあります。

 

ただ個人的には前々から「簡単なphpをちょっと付け足したいだけなのに、なぜ未だにそんな面倒なことをしなければならないのか、他の簡単な方法はないのか」と思っていました。

最近、とあるカスタマイズのためにまたこの作業が必要になって改めて調べてみたところ、「Code Snippets」というプラグインを使うことで、僕がやろうとしていることが出来ると分かりました。

(僕の理解が正しければ)Code Snippetsを使うと、functions.phpに追加したいphpコードを、スニペット(断片)という1つの項目として簡単に編集・管理できます。

【参考】Code Snippets – WordPress.org

どういった内容のどういった項目がfunctions.phpに追加されているのか一目で分かるので本当に便利です。製作者に感謝!

実は、僕は以前からこのプラグイン自体は使っていました(ただその存在を忘れていた)。かつて独自の簡単なショートコードを作りたくなったのですが、それにもfunctions.phpの編集・追記が必要になります。結局やりたいことはfunctions.phpの恒久的な編集なので、このプラグインが同じように使えました。

 

今回改めてCode Snippetsを使ってカスタマイズ用の新しいphpコードを追加したのですが、以前と同じように問題なく機能しました。テーマが更新されてもこの編集内容はそのまま残ります。

FTPソフトを使わずにWordPress内でこういった作業が完結するのは本当に便利です。もうこのプラグインは手放せません。

僕の理解する限りではこの方法でも問題ないとは思うのですが、単純なfunctions.phpの編集だとしても、もしかするとFTPソフトでないといけない場面というのもあるのかもしれません。ただそれについては、そうしないといけない状況になってから学べばいいかなという認識でいます。

「プラグインの数はなるべく少ない方がいい」という価値観のもとでは、従来どおり直接functions.phpをFTP経由で編集する方が好ましいと言えます。確かにサイトの反応速度やエラー対策を考えるとプラグインは少ない方がいいですが、個人的にはcode snippetsはメリットの方が上回ると感じました。

それから、どんなに簡単なphpの追加だとしても、サイト崩壊の可能性がないわけではないので事前にバックアップを取るのは必須と思います。