弊社でのWordPress実装開発環境はXAMPPを使っています。XAMPPは10年以上の実績がある開発環境です。
WordPress開発を行う際の重要ポイントを、実務目線で整理します。環境のセットアップ方法ではなく、「後で詰まらないための要点」に絞っています。
1.PHPバージョン管理(最重要)
なぜ重要か
本番サーバーとのPHP差異が、開発でのトラブル原因の大半です。PHPはバージョンが上がるたびに厳格になっており、本番環境のPHPがアップバージョンの場合、トラブルが発生します。WordPress本体、テーマ、プラグインはPHP依存が強いためPHPのバージョンを揃えることは重要なポイントなります。
対策
- 本番サーバーのPHPバージョンを事前に確認
- XAMPPで同じPHPバージョンを使用(ただしアップグレードについては後述しています)
- phpinfo()で動作確認
php
<?php phpinfo(); ?>
XAMPPのPHPバージョンアップするには、XAMPPアプリを新しいバージョンにアップグレードする方法を推奨します。大切なのは本番サーバーとPHP環境を同様にすることです。
2.文字コードとデータベース設定
DB作成時の必須設定
- 照合順序:utf8mb4_unicode_ci
- 文字セット:utf8mb4
なぜutf8なのか
- 絵文字・多言語対応
- 本番移行時の文字化け防止
phpMyAdminにてDB作成時に必ず文字コードを指定する。
3.WordPress設置ディレクトリ設計
NG例
htdocs/
└── wordpress/
推奨例
htdocs/
└── project-name/
├── wp-admin
├── wp-content
└── wp-includes
いくつもの案件を同時進行する場合、案件ごとに管理しやすい。また、rootにwordpressとして開発をしてしまうと複数サイト開発時に混乱してしまう。
ユニークなプロジェクト名とすることで混乱を避けましょう。
4.wp-config.phpの初期調整
最低限やるべき設定
php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', true);
開発中にPHPのロジックエラー、構文エラー、変数の値など、デバックできるように必ず有効化します。
開発時間の短縮にもつながります。本番サーバーに移植の際にはそれぞれをfalseに設定してデバックモードをOFFにします。
5.パーミッションとファイル権限
注意点
Mac/XAMPPは権限エラーが起きやすいです。特に画像アップロード時にパーミッションエラーで失敗することが多いので対策しましょう。
対策
- wp-content/uploadsの書き込み権限確認します。
- Finderでの権限操作ではなく、必要に応じてターミナルで調整することも必要です。
bash
chmod -R 755 wp-content
無権限になるため、777への設定はしない方が無難です。
6.プラグイン・テーマのパス依存問題
ローカルURL直書き(http://localhost/… 固定)にすると本番サーバーへの移植の際に多大な労力が必要になります。
対策
- home_url() / site_url() を使用してURLが変更になった場合でも対処する。
- CSS/JSは相対パス or WordPress関数で管理する。
7.本番サーバーへの移行を前提にした制作
最初から意識すべき点
- 絶対パスによるURLは使わない
- ローカル開発用の専用の設定は使わない
- .htaccessの依存を最小限に収める
移行時チェック
- DB内URL置換します。ローカル開発環境のURLを本番サーバーのURLに変更します。(http://→https://も忘れずに)
- シリアライズデータ化します。WordPressのコアファイルは数Byteのファイルが4000を超えます。zipなどでデータ圧縮をしてsshでサーバーに転送したほうが効率的です。
- メディアパスを確認します。zipで固めてサーバー上でunzipした際に2Byteのファイル名がエスケープされてリンク切れを起こします。移行前にメディアファイルのファイル名を確認しましょう。
8.MacでのXAMPP開発における特有の注意点(Mac)
- Apacheポート競合(80 / 443)がありますので、XAMPPのポートを変更する必要があります。使用ポートはhttpd.confで変更できます。
- macOSアップデート後に起動しなくなることあります。OSをバージョンアップする際にはXAMPPのhtdocsの案件ファイルとDBを必ずバックアップしてください。
- XAMPPをアップデートする場合も、XAMPPのhtdocsの案件ファイルとDBを必ずバックアップしてください。
まとめ
1.PHPバージョンを本番と揃える
2.DB文字コードをutf8mb4に
3.ディレクトリ設計を案件単位に
4.WP_DEBUGを有効化
5.権限・パス問題に注意
6.本番移行を常に意識
