`wp-env` を使って最小限のテーマ開発環境を構築する

(未解決) `wp-env`で設定ファイルをカスタマイズして走らせると`Error: Could not process the ‘wp-config.php’ transformation.`エラーが出力されるの続きです。

今回はテーマの開発がしたかったのですが、上述環境で試験したところテーマが読み込まれていないことが判明。そういう意味でも中途半端でした。

そのため、今回はその辺りをもう少し掘ってみることにします。なお、エラーについては結局原因不明のまま……。

改めて環境を整理すると以下のような状況。

  • Host OS: Windows 10 Pro (1909)
  • Docker: 19.03.8, build afacb8b
  • Docekr for Windows Desktop: 2.3.0.2 (45183)
  • Docker Engine: v19.03.8
  • Command line: v19.03.8

ディレクトリ階層は分かりやすく以下のように修正。

  /
  ├ wp-content/
  │  └ themes/
  │      └ minimal_wordpress/
  │            ├ index.php
  │            ├ screenshot.jpg
  │            └ style.css
  ├ package.json
  ├ .wp-env.json
  └ readme.md

index.php

<?php

echo "Hello world!";

style.css

@charset "utf-8";

/*
Theme Name: Minimal WordPress
Author: アルム=バンド
Version: 0.0.1
*/

package.json

{
    "name": "sukunabikona",
    "version": "0.0.1",
    "description": "wp-env を使用した最小限の開発環境",
    "scripts": {
        "wp-env": "wp-env"
    },
    "author": "Arm Band",
    "license": "ISC",
    "devDependencies": {
        "@wordpress/env": "*"
    },
    "engines": {
        "node": ">= 12.0.0",
        "npm": ">= 6.0.0"
    }
}

ここまで変わらず。

.wp-env.json

{
    "core": "https://ja.wordpress.org/latest-ja.zip",
    "plugins": [
        ".",
        "https://downloads.wordpress.org/plugin/wp-multibyte-patch.latest-stable.zip"
    ],
    "themes": [
        "./wp-content/themes/minimal_wordpress"
    ],
    "mappings": {
        "wp-content/themes/minimal_wordpress": "./wp-content/themes/minimal_wordpress"
    }
}

変えたのはここ。修正したのはthemesキーが増えたことと、プラグインのバージョン指定を決め打ちではなくlatest-stableにし、なるべく手作業のメンテナンスコストを抑える方向にしたことです。

これでコマンドを実行します。

> yarn
> wp-env start
- Downloading WordPress.
  - core: 100/100%
  - downloads.wordpress.org%2Fplugin%2Fwp-multibyte-patch.latest-stable: 100/100%

しばらくして以下に変わりました。

> wp-env start
× Error while running docker-compose command.
Starting XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX_mysql_1 ... done
Starting XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX_wordpress_1 ... done
Error: Could not process the 'wp-config.php' transformation.
Reason: Unable to locate placement anchor.

エラー内容は変化なしです……。

ただし。

wp-env 記事投稿テスト
wp-env 記事投稿テスト

記事の投稿が普通にできて……

wp-env プラグインテスト
wp-env プラグインテスト

プラグインもWP Multibyte Patchがインストールされた状態なのでプラグインの認識はOK。

wp-env テーマテスト
wp-env テーマテスト

テーマも認識されています。

wp-env テーマ切替テスト
wp-env テーマ切替テスト

テーマを切り替えると表示が変わり。

wp-env テーマ書き換えテスト
wp-env テーマ書き換えテスト

エディタで編集して即反映されることも確認。

……通常の開発ならば問題なくできそうな感じです。エラーは出ていますが。

いったんこれで様子見としましょうかね。

参考

この記事を書いた人

アルム=バンド

フロントエンド・バックエンド・サーバエンジニア。LAMPやNodeからWP、Gulpを使ってejs,Scss,JSのコーディングまで一通り。たまにRasPiで遊んだり、趣味で開発したり。