当サイト、やっと完全自作のテーマに変更することが出来ました。まったくのゼロからつくったテーマでプラグインもサイトマップ用と広告用の2つしか入れていません。
01WordPressテーマをゼロから自作する
これまでは Genesis Framework という海外製の親テーマを使っていましたが、今回、完全に自作のテーマに変更しました。
WordPress のテーマは、最低 index.php と style.css の2つのファイルがあればテーマとして認識されます。仮にその2つが空ファイル(テーマ名は必要…)でもテーマとして認識します。もちろんなにも表示されず真っ白です。
当サイトはそこから自作したテーマで運用しています。以下はその経緯の記事一覧です。
- WordPressのテーマをゼロから作ってみる
- テンプレートタグを入れてみる
- メニューの登録、作成、表示
- ウィジェットエリアの作り方
- 階層化パンくずリスト、ページネーション、ページャー
- テンプレート階層がややこしすぎる
- レスポンシブデザインのブレイクポイント
- title,meta description用カスタムフィールド
- wp_robots()でrobotsメタタグを制御する
- canonicalタグを制御、出力する
- wp_head()でOGPタグを挿入する
- JSON-LD構造化データを出力する
- メニューにiconを使い、id,classを整理カスタマイズ
- 直近の期間指定ができる人気記事表示を自作する
- GoogleタグマネージャーとアナリティクスGA4
- SNSシェアボタンを設置する
- サムネイル付き次の記事/前の記事
- メール送信にGmailのSMTPを使う
- Fetch(Ajax)でお問い合わせフォーム
- 完成
02WordPress のサイトリニューアルは面倒くさい
長くサイトを立ち上げていればリニューアルという作業は必ず必要になります。当然、リニューアルは公開サイトを維持しながら同時に新しいサイトを構築していくわけですから、リニューアル終了後には瞬時にサイトを入れ替えなくてはいけません。私の知る限り、WordPress にはそのプロセスが用意されていないようです。私が知らないだけかも知れませんので、もしあればペコリです。
WordPress で瞬時にサイトを入れ替えるにはサイトをサブディレクトリで構築してそれをドメインルートのマッピングする方法が一般的かと思います。詳細は次の記事にあります。
もうひとつは裏技的ですが、リニューアルを別サイトで行い公開時に2つのサイトのディレクトリをリネームしてしまう方法があります。詳細は次の記事にあります。
私はこの方法を使い、別ドメインでリニューアルサイトを構築し、完成したときにファイルマネージャーでサイトのディレクトリをリネームしてリニューアルサイトに変更しています。
03Xserver の WordPress 簡単移行
サイトのリニューアルには、まず公開サイトと同じサイトを別につくりそこからスタートすることになりますが、その際便利なのが Xserver の「WordPress 簡単移行」という機能です。
移行元と移行先を指定すれば1〜2分でまったく同じサイトが出来上がります。他のサーバーからの移行も記載するユーザー名とパスワードでログイン出来さえすれば移行できます。
移行先は上に書きましたようにサブディレクトリや別ドメインということになりますが、この「WordPress 簡単移行」という機能は下の画像のようにその履歴が残ってしまいます。
これは当サイト IMUZA.com の履歴ですが、なぜ2つあるのかも、そもそも過去になにをしたのかも記憶にありません(笑)。まあ、自己責任ではあるのですが、この履歴が気になるからといって右にある「削除」ボタンをクリックするわけにもいかないという状態です。当然、削除すればディレクトリ内の WordPress は削除されるでしょう。データベースはすでに他のデータベースに入れ替えていますので問題ないですし、実際問題、上に記載されているデータベースはもう存在しません。
該当ディレクトリのバックアップをとって、この履歴を削除し、その後、空となったディレクトリにリストアするという方法がありますが、この履歴を気にしなければ問題はなさそうですので現在のところそのままにしています。
04今後の WordPress の移行方法
ということで、今後の WordPress の Xserver 内の移行は次のようにしようと思います。
- phpMyAdmin を使い、移行元のデータベースをまるごとエクスポートする
- Xserver の機能「WordPress 簡単インストール」を使い、移行先にインストールする
- phpMyAdmin で、移行先のデータベースのテーブルをすべて削除し、移行元のデータベースをインポートする
- ssh でサーバーにログインするか Xserver のファイルマネージャを使い、移行元の uploads ディレクトリをすべてコピーする
- サイトの再構築の際、移行元のテーマやプラグインが必要であれば同じものを導入する
これで移行先に移行元と同じサイトができます。私の場合はプラグインもサイトマップ用と広告用に2つしか入れていませんので使用中のテーマさえ入れれば完全に同じサイトが出来上がります。作業にかかる時間も5分も必要ないくらいです。「WordPress 簡単移行」と大差ありません。
さて、もうひとつの運用サイトのリニューアルにかかりましょう。