0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WordPressで別Themeを使う前に確認する、既存サイトと別インストールの境界

0
Posted at

企業サイトのWordPressへ採用サイトを追加するとき、「同じドメイン配下だから同じWordPressでよい」とは限りません。反対に、デザインが違うという理由だけで別WordPressを増やすのも早計です。

最初に見るべきなのはURLではなく、次の4つを既存サイトと共有できるかです。

  • 有効化するTheme
  • 変更を公開する時間と担当者
  • 障害時に止めてよい範囲
  • backupから復旧する単位

4つを共有でき、stagingで変更と復旧を確認できるなら、同じWordPressへ追加する候補になります。どれかを独立させる必要があるなら、別インストールを候補に戻します。

この記事では、通常の単一サイト構成のWordPressを対象に、実装前のread-only確認、stagingでの受け入れ、rollback記録までを一つの流れにします。hosting比較、WordPressのマルチサイト構築手順、SEO上の優劣は扱いません。

結論:URLではなく、変更と復旧の単位をそろえる

判断を先にまとめると、次のようになります。

確認する境界 同じWordPressの候補 別WordPressへ戻す条件
active Theme 既存サイトと同じThemeで採用ページを成立させる 採用サイトだけ別Themeを有効化する必要がある
release 同じ担当者・同じ変更時間で公開できる 変更時期、承認者、保守担当を分ける必要がある
failure 既存サイトと採用サイトを同じ障害単位として扱える 一方の変更で他方を止めてはいけない
restore 同じdatabaseとfilesを同じ時点へ戻せる 復旧時点や復旧担当を分ける必要がある

別WordPressにすると、更新、backup、監視、account管理も別に増えます。そのため「分ければ安全」とは決めません。分離の必要性と、増える運用を両方記録して選びます。

Themeの切り替えは1ページだけの変更ではない

WordPressでは、通常1サイトにつき一つのThemeがactiveになります。Themeは個別ページの見た目だけでなく、header、footer、template、style、Navigationなど、サイト全体の表示を担います。詳しくはWordPress公式のThemesの解説で確認できます。

したがって、次の前提は分けて考える必要があります。

同じURL配下に置きたい
    ≠ 同じWordPressで別Themeを同時に使える

既存データを上書きしない制作物である
    ≠ Themeを有効化しても既存サイトへ影響しない

採用サイト用Themeを既存WordPressで有効化する案では、採用ページだけでなく、既存のトップページ、投稿、固定ページ、404、検索結果、Navigationも確認対象です。

最初にread-onlyで現状を採取する

設計前に、対象環境を取り違えていないことを確認し、現在値を変更せずに採取します。WP-CLIを使える環境なら、次のようなコマンドを候補にできます。

wp core version

wp theme list \
  --status=active \
  --fields=name,status,version,auto_update \
  --format=table

wp plugin list \
  --status=active \
  --fields=name,status,version,auto_update \
  --format=table

wp option get home
wp option get siteurl
wp option get show_on_front
wp option get page_on_front
wp option get page_for_posts

ここでは更新、Theme切り替え、option変更を行いません。wp theme listwp plugin listwp option getの仕様は、それぞれWP-CLIのTheme一覧Plugin一覧option取得で確認できます。

WP-CLIを使えない場合は、WordPress管理画面の「ツール → サイトヘルス → 情報」も現状把握に使えます。Site Health画面の公式説明では、active Themeやactive Plugin、versionなどの情報を確認できます。

採取結果には、内部URL、Plugin構成、環境名など、公開範囲を限定すべき情報が含まれることがあります。コマンド出力をそのまま公開issueや記事へ貼らず、案件の管理場所へ必要項目だけ記録します。

判断記録を先に作る

口頭の「同じサイトで大丈夫」を実装条件にしないため、変更前に小さな判断記録を作ります。値は案件ごとに埋め、未確認をyesへ寄せません。

wordpress_boundary_review:
  current:
    active_theme: "確認済みのTheme名とversion"
    home_and_siteurl_checked: true
    active_plugins_recorded: true
    front_page_settings_recorded: true

  candidate:
    requires_active_theme_change: true
    release_owner_shared: false
    maintenance_window_shared: false
    failure_window_shared: false
    restore_point_shared: false

  safety:
    staging_or_clone_ready: false
    full_site_backup_ready: false
    current_theme_package_or_source_ready: false
    restore_test_passed: false

  decision: "pending"

requires_active_theme_change: trueで、既存Themeを維持する必要があるなら、同じWordPressへ無影響で追加できるとは扱いません。別インストールへ分けるか、既存Theme内で実装するか、要件へ戻します。

restore_point_sharedは重要です。同じdatabaseへ採用コンテンツと既存コンテンツを保存すると、片方だけを任意の時点へ戻せないことがあります。「復旧時に既存のお知らせや固定ページまで巻き戻してよいか」を先に確認します。

stagingまたはcloneで変更範囲を確かめる

本番で初めてThemeを切り替えず、production相当のstagingまたはcloneで確認します。空のWordPressへThemeを入れて表示できても、既存サイトへの影響確認にはなりません。

最低限、次の順序を固定します。

  1. production相当のdatabaseとfilesからstagingまたはcloneを用意する。
  2. 外部メール、応募送信、決済、計測など、stagingから実行してはいけない送信を止める。
  3. 変更前のactive Theme、active Plugin、WordPress version、front page設定、主要routeを記録する。
  4. site全体backupと復旧手順を用意する。
  5. 候補Themeをstagingだけで有効化する。
  6. 採用ページと既存ページの両方をPC・mobileで確認する。
  7. 元の状態へ戻し、復旧後の主要routeと管理画面を再確認する。

確認対象は採用ページだけでは足りません。

  • トップページ
  • 既存の固定ページと投稿
  • header、footer、Navigation
  • 404、検索結果、archive
  • formの表示と送信停止状態
  • canonical、robots、sitemapなどの公開面
  • 管理画面での編集、preview、公開権限
  • cacheを消した後の表示

ここで発見した差分は、Themeの不具合と決めつけません。既存Theme固有のtemplate、Plugin依存、Navigation設定、front page設定、cacheのいずれかを切り分けます。

backupはdatabaseとfilesを一組で考える

WordPress公式のBackupの解説では、databaseとfilesを別の対象として説明しています。Themeを戻すだけでは、次の変更は戻らないことがあります。

  • databaseへ保存されたTheme設定やカスタマイザーの値
  • Site Editorで変更したtemplateやstyle
  • Navigationやwidgetの割り当て
  • Pluginが追加・更新したoptionやtable
  • 新規・更新した投稿、固定ページ、media

そのため、rollback記録には少なくとも次を含めます。

項目 記録する内容
backup databaseとwp-contentを含むsite全体backupの取得時刻・保管先・担当
baseline WordPress、active Theme、active Pluginのversionとfront page設定
trigger 既存route欠落、重大な表示崩れ、管理不能、form誤送信などの停止条件
restore 誰が、どの手順で、どの時点へ戻すか
verification 復旧後に確認する主要route、管理画面、form、public metadata

backupが存在するだけでは、復旧できるとは限りません。少なくともstagingでrestore手順を通し、戻した後の状態まで確認します。

同じWordPressにする場合の受け入れ条件

同じWordPressを選ぶなら、「作れた」ではなく次を完了条件にします。

  • 既存Themeのまま実装するか、Theme変更のsite全体影響を関係者が受け入れている
  • 採用ページと既存ページを同じrelease windowで変更できる
  • 既存サイトと採用サイトを同じ障害・復旧単位として扱える
  • stagingまたはcloneで既存routeを含む確認に合格している
  • databaseとfilesを含むsite全体backupがある
  • 現行Themeとversion、元へ戻す手順、rollback担当が確定している
  • 引き渡し後のWordPress、Theme、Pluginの更新担当が一つの運用表に載っている

この条件を満たさないまま「まず同じWordPressで試す」と進めると、試す行為自体が既存サイトの変更になります。

別WordPressにする場合の受け入れ条件

別インストールを選ぶ場合も、URLだけ決めて終わりではありません。

  • WordPress core、Theme、Pluginの更新担当
  • backup、監視、障害連絡、復旧担当
  • account発行、退職・契約終了時の無効化
  • form送信先と個人情報の管理範囲
  • domain、TLS、redirect、canonical、sitemapの責任
  • 既存サイトと採用サイトをまたぐNavigationの変更担当
  • 引き渡し時の環境一覧と保守期限

運用を二つへ分ける必要がないなら、別WordPressは管理対象を増やすだけになる場合があります。分離によって守りたい障害単位・担当・変更時期を明記できることが採用条件です。

2GU Themeを既存WordPressで使う場合の境界

2GU Themeを既存WordPressで有効化すると、採用ページだけでなく、既存site全体のheader、footer、style、template、Navigationへ影響し得ます。既存データを意図せず上書きしない制作キットであっても、Theme有効化の影響がなくなるわけではありません。

既存Themeを維持したまま同じWordPressへ無影響で追加できる、とは扱わないでください。既存WordPressで確認する場合は、production相当のstagingまたはclone、databaseとwp-contentを含むsite全体backup、現行Themeとversion、rollback手順を先にそろえます。

この条件をそろえられない場合は、本番で有効化せず、別WordPressまたは既存Theme内での実装へ判断を戻します。

公開前に残す最終チェック

[ ] 対象のWordPress環境を取り違えていない
[ ] active Themeとversionを記録した
[ ] active Pluginとversionを記録した
[ ] home / siteurl / front page設定を記録した
[ ] 同じrelease・failure・restore単位でよいと確認した
[ ] production相当のstagingまたはcloneで試した
[ ] 採用ページ以外の主要routeも確認した
[ ] databaseとfilesを含むsite全体backupがある
[ ] 現行Themeへ戻すだけでは不足する変更を列挙した
[ ] restore後の確認まで通した
[ ] 更新・障害・引き渡しの担当を記録した

同じWordPressか別WordPressかは、どちらが常に優れているかでは決まりません。active Theme、変更、障害、復旧の単位をそろえ、実際に戻せる構成を選ぶことが判断の中心です。

判断条件を制作・運用の8項目で整理した一般向け版は、採用サイトは既存WordPressか別WordPressかにまとめています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?