Luxeritas PHP8.3 対応まとめ(2026-05)
最終到達点
PHP8.3 + production DB + production-active plugins
で、
browser / REST / WP-CLI / Customizer / optimization layer
が正常動作する production-like PHP8.3 state を構築完了。
git tag:
php83-production-like
commit:
0a61b8d
構築した環境
stable
役割:
本番 mirror
用途:
- Apache/MariaDB/PHP 運用確認
- rollback rehearsal
- 本番近似確認
構成:
Apache2
MariaDB
PHP8.2
sandbox-php83
役割:
PHP8.3 compatibility baseline
用途:
- PHP8.3 compatibility
- WP-CLI compatibility
- plugin compatibility
- future PHP8.4 comparison baseline
構成:
WordPress 6.9.4
PHP8.3
wp-env
Luxeritas fork
production DB import
実施フェーズ
Phase A
clean install + Luxeritas compatibility
確認:
- TOP
- post
- page
- wp-admin
- REST
- Customizer
- optimization layer
KI-04
内容
WP-CLI bootstrap 時、
global state が local scope 化され Warning。
症状
Trying to access array offset on null
修正
global $luxe, $_is, $fchk, $default_set, $widget_concat, $awesome;
追加。
結果
WP-CLI clean。
KI-05
内容
rawurlencode( null )
Deprecated。
修正
rawurlencode( thk_convert( $value ) ?? '' )
結果
SNS path clean。
KI-06
内容
WP-CLI で:
$_SERVER['QUERY_STRING']
未定義。
修正
$_SERVER['QUERY_STRING'] ?? ''
結果
WP-CLI clean。
Phase B
production DB import
実施:
production DB → sandbox
URL search-replace
実行結果
https://blog2020.iwadjp.com
→ http://localhost:8888
80 replacements
http://13.193.215.66
→ http://localhost:8888
6285 replacements
重要発見
旧IP:
13.193.215.66
が大量残存。
sandbox により潜在負債を発見。
optimization layer 確認
確認済み:
- async CSS
- AMP
- preload
- defer
- font preload
- cache layer
結果:
clean
Phase C
plugin compatibility scan
方針
1 pluginずつ activate
→ test
→ deactivate
scan結果
対象
20 plugins
結果
browser debug.log clean
Luxeritas干渉
なし
cache/optimization conflict
なし
production-like PHP8.3 state
active plugins
13 plugins
active
- all-in-one-wp-migration
- blog2social
- broken-link-checker
- google-site-kit
- google-sitemap-generator
- ip-location-block
- jetpack
- pubsubhubbub
- simple-page-ordering
- taxonomy-terms-order
- wp-mail-smtp
- wp-multibyte-patch
- wp-optimize
inactive plugins
8 plugins
- akismet
- all-in-one-seo-pack
- amp
- ewww-image-optimizer
- google-analytics-for-wordpress
- simple-tags
- w3-total-cache
- wordpress-ping-optimizer
must-use
luxe-amp-mu
production-like validation
curl
| path | result |
|---|---|
| / | 200 |
| /wp-json/ | 200 |
| /?amp=1 | 200 |
| /wp-admin/ | 302 |
| /sitemap.xml | 200 |
browser
確認済み:
- TOP
- post
- wp-admin
- Customizer
- AMP
- optimization layer
結果:
test ok
debug.log
最終結果
clean
browser / REST / WP-CLI 全て clean。
known issues
修正済み
- KI-04
- KI-05
- KI-06
known-issues.md 管理へ移行
KI-09
wordpress-ping-optimizer dynamic property Deprecated
分類:
plugin-side
WP-CLI only
KI-10
amp plugin _load_textdomain_just_in_time
分類:
plugin-side
WP-CLI only
KI-11
amp + ip-location-block interaction
内容:
amp_has_paired_endpoint early call
分類:
plugin interaction
WP-CLI only
production では amp inactive のため実害なし。
現在の評価
Luxeritas は:
PHP8.3で致命的には壊れていない
。
必要だったのは:
browser-only assumptions
の hardening。
今回の修正は:
- WP-CLI compatibility
- future PHP strictness
- CLI-safe hardening
として有効。
現在完成したもの
PHP8.3 production-like baseline
。
これにより今後:
PHP8.4固有問題
を高精度で切り分け可能になった。
次フェーズ
予定:
wp-sandbox-php84
作成。
目的:
- PHP8.4 compatibility
- strictness確認
- plugin interaction確認
- future hardening
です。