WooCommerceサイトを運営している、あるいは対応テーマを開発している場合、テンプレートをカスタマイズするケースがある。WooCommerceはほぼすべてのテンプレートを上書きすることが可能で、テーマフォルダ内に woocommerce/file.php
と配置すればよい。しかし、WooCommerce自体がアップデートされていくと、このコピーしたファイルがだんだん時代遅れになっていく。そうすると、WooCommerceは警告を表示する。
この警告はかなりユーザーを怯えさせるので、その解消法をご紹介しよう。まず、警告が出ているファイルを突き止める。
今回の場合は、 templates/checkout/form-checkout.php
が古くなってしまったようだ。それでは一体なにが変わったのかを調べるため、Githubのファイルヒストリーを確認しよう。WooCommerceのGithubリポジトリで該当するファイルを開き、historyタブをクリックすると、そのファイルが関連するコミットの一覧が表示される。
Gitにはコミット間の差分を調べる機能があり、コミットのIDのようなものとして、コミットハッシュが用意されている。調べたい差分のコミットハッシュを控えておき、Gitリポジトリを落とした上で差分を確認しよう。
# Gitリポジトリをクローン
git clone https://github.com/woocommerce/woocommerce.git
# リポジトリ内部に移動。
cd woocommerce
# 差分を表示。
# git diff [ハッシュ]..[ハッシュ] -- ファイル名
git diff 43d362d10792711bd34ea490c714a540cb763b1d..e92256309e6fa5116efd2b4938b63043db92197c -- templates/checkout/form-checkout.php
こうすると、次のような差分が得られる。
あとは変更箇所を自分のテーマのテンプレートに適用すればよいというわけだ。最終的にはファイルのバージョン番号さえ変更すれば警告は消える。