ジユウメモメモ

当サイトは通販サイト・外部Webサービスへのリンクの一部にアフィリエイト広告を使用しています

Local by FlywheelのWindows環境での高速化手法を既存のローカルサイトに適用する方法

Windows上でLocalのパフォーマンスが落ちるのを回避できる(かもしれない)方法

※「かもしれない」としたのはPCのスペックのせいか劇的に早くなったとも言えないから

Localが重いのWindows版だけ!?

 WordPressのテーマ開発や、既存WordPressサイトのアップデートテストに便利なローカル開発環境ツールのLocal(旧Local by Flywheel)。最近になってWordPress公式から似たような「STUDIO(by WordPress.com)」というアプリがリリースされたけれど、動作させるPHPのバージョンを変更するような機能は今のところ実装されていない様子。純正アプリが出たからLocalから移行できるというわけでもなさそうだ。

Studio by WordPress.com – WordPress.com Developer Resources

Localの使用頻度はそう多くないのだが、ブロックテーマの作り方を参考書を見ながら勉強しようと久しぶりに触ったところ、「こんなに重かったっけ?」という印象。読み込みに時間がかかりすぎてコードの変更が反映されなかったりすることも。そもそもスペックが低めのPC(Celeron N4100)ではあるのだが、以前はもう少しキビキビ動いていたような…。

作って学ぶ WordPress ブロックテーマ (Compass Web Development)

作って学ぶ WordPress ブロックテーマ (Compass Web Development)

エビスコム
3,509円(10/07 12:09時点)
Amazonの情報を掲載しています

そこでGoogleで検索してみると、重くなるのはWindows環境だけらしく、開発元のトラブルシューティングページにWindows上でLocalを実行した際のパフォーマンスについての記述があった。これはもともとフォーラムでユーザーと開発者のやりとりされていた内容がピックアップされたもので、「以下の2つの手段を試してみて」とのこと。

  • ドメインサフィックスをデフォルトの「.local」から変更する(例えば「.abc」)
  • サイトの保存フォルダをデフォルトから変更する(ユーザーフォルダの「Local Sites」以外)

LOCAL:Troubleshoot: Performance Issues

実際に試した後に、「既存のLocal上で作成したサイトはどうしたら…?」となったので解決策と合わせてスクリーンショットを掲載しておく。

Windows版Localの低速化回避Tipsを適用する

 最初に、Localのドメインサフィックスとサイトの保存先のデフォルトの設定を変更する。

まず、画面左上のメニューボタン(三本線のアイコン)をクリック(またはユーザーアイコンをクリック)し「Preferences」を選択する。

Localのメニュー
Localのメニューから「Preferences」を選択

右メニューにある「New site defaults」をクリックし、Domain suffixを「.local」から変更(ここでは「.abc」とした)、Sites pathにある「Browse」をクリックし、任意のフォルダを指定する(ここではユーザーフォルダ直下に作成した「testSites」フォルダを指定した)。変更内容を確認したら「Apply」ボタンをクリックして適用する。

Localの「New site defaults」画面
Domain suffixとSites pathを変更する
Localの「New site defaults」画面
Domain suffixとSites pathがデフォルトから変更された

これで新規作成のサイトが低速化回避Tips適用済みで作成されるようになる(サイトを新規作成するとデフォルトの「Local Sites」フォルダではなく、先ほど指定したフォルダ「testSites」にファイルが保存される)。

既存のサイトは「Clone Site」で保存フォルダを移動させる

 先程の設定で新規作成サイトのドメインサフィックス、保存フォルダはデフォルトから変更されるが、既存サイトのファイルの保存先は「Local Sites」から移動しない。

既存サイトのドメインサフィックスはサイトを選択した画面の「Site Domain」にある「Change」をクリックすることで変更できる。ドメインサフィックスを変更するだけでパフォーマンスが改善することもあるかもしれないので、試してみてもいいかもしれない。

Localのサイト設定画面
Site domainの「Change」をクリックする
Localの「Change site domain」画面
サイトドメインを「.local」から変更する(ここでは「.abc」)
Localのドメイン変更中の画面
変更が反映されるのを待つ
Localのドメイン変更後の画面
ドメインが「.local」から「.abc」に変更された

既存サイトのファイルの保存先を簡単・安全に変更する場合、サイトの複製(クローン)を実行することで複製されたファイルが先程変更したフォルダに作成される。

既存サイトの複製を行うには、サイト名の右にあるメニューボタン(3つの丸)をクリック(またはサイト一覧画面上のサイト名を右クリック)し、「Clone Site」をクリックする(この時点で複製版のサイトと見分けがつくようサイト名を変更しておいてもよい)。

Localの既存サイトのサイト名を変更する
サイト一覧画面の重複を避けるため、オリジナルのサイト名を変更する
Localの「Rename site」画面
変更したいサイト名を入力して「Rename site」をクリックして反映させる
Localのサイトの複製
サイト名横のメニューから「Clone site」をクリック

複製されるサイトの名前を入力し、「Clone Site」をクリックすると、サイトの複製が実行される(ファイルは「testSites」フォルダに保存される)。このとき、画面上に警告表示がされるが複製が完了すると消えるので気にせずに待つ(サイトの規模によってはそれなりに時間がかかる)。

Localの「Clone site」画面
複製後のサイト名を入力し「Clone site」をクリック
Localのサイト複製中の画面
サイトの複製中に画面上に警告が表示されるがこのまま待つ
Localのサイト複製実行後の画面
サイトの複製が完了したところ
サイトの保存先フォルダ
「Go to site folder」をクリックしてファイルの保存先を確認すると、ユーザーフォルダの「testSites」フォルダに既存サイトのコピーが保存されている

複製が完了し、動作に問題が無いようなら元のサイトを削除できる。

少しは早くなった…かもしれない

 上記の作業を経て公式な低速化回避Tipsを実行してみたところ、正直、体感できるほど劇的に早くなったとは言い切れない。しかしブラウザが読み込みを諦めるまでには画面が遷移するようになったので直前の操作をやり直すことはなくなった。

動作が重くなるのがWindows版だけらしい※というのはちょっと悔しいが、公式のTipsは難しくないので試してみる価値はありそう。「…いくらなんでも重すぎない?」と感じたときはお試しあれ。

おまけ:備忘録「All-in-One WP Migration」でエクスポート/インポートする際はPHPバージョンを合わせる

 以前にクラシックテーマでできているWordPress4.xのサイトを、WordPress6.xにアップデートしても問題が起きないか動作チェックをするため、プラグインのAll-in-One WP Migrationを使ってLocalにインポートしようとしたのだが、何度試してもインポートが完了しなくて困ったことがあった。

原因はエクスポート時のサイトのPHPバージョンと、インポート先の環境のPHPのバージョンが異なっていたことで、これは実際のレンタルサーバーでもLocalでも同様。そのときは元のサイトがPHP7.4で動いていて、LocalはPHP8だったためにインポートが途中で止まってしまった。

If your website’s PHP version Because PHP is not the same as the PHP version in your backup, it may cause issues with the proper operation of your website and with some applications. 

ServMask Helpdesk:Migrate WordPress from PHP 5 to PHP 7

幸い、LocalがPHP7.4に変更できたのでインポートが完了したが、元のサイトがPHP5.6だったらLocalは利用できずXAMPPを使う必要があった。

WordPress (& Local) Ends PHP 5.6 Support

XAMPPで複数のPHPを切り替えて利用する(for Windows)

Windows版XAMPP Control Panelの終了時にxampp-controll.iniのアクセスが拒否されるエラーの回避方法

タグ: