Shifter Static にあまり向かないサイト (Shifter のアンチパターン)

一日にデプロイする回数が多いサイト

Shifter はコンテンツを公開するために WordPress を停止し、その後サイトの静的化を行います。静的化の際には、対象の URL をすべて取得し順次処理する仕組み上、コンテンツが大量に場合、処理の開始と完了/実際の公開までには時間がかかる傾向にあります。また、デプロイが完了しない限り WordPress の起動もできないので、更新の回数が多いサイト — たとえば記事が30分や1時間ごとに追加をする必要があるサイトなど— などは Shifter には向かないでしょう。静的化などはせず、Amimoto マネージドホスティングなどの WordPress をそのまま用いたほうがよいでしょう。

複数人で記事の投稿/編集を行うサイト

Aさん、Bさんが同じタイミングで記事を編集するときはよいのですが、お互いにバラバラのタイミングで WordPress の起動とデプロイを行う場合、片方が WordPress を起動している最中だったりデプロイ中だったりすると、もう片方がデプロイやWordPressを起動しようとしても、お互いの処理を待たなくてはならならず時間もかかるだけとなるので、あまりお勧めはできません。編集が二人ですらこの複雑さなので編集する人数がさらに増えたらさらに複雑化します。

ただ、この複雑さも記事の投稿/編集時間を固定化する、デプロイするタイミングを前もって共通化しておくなどである程度予防は可能です。それでも難しい場合は動的な WordPressをご利用いただいたほうが良いでしょう

クエリーや動的処理を用いているサイト構成

Shifter は、静的サイトジェネレータです。 Web サーバのないこの環境では、クエリやコンテンツの動的処理は行えません。Amimoto マネージドホスティングなどをご利用いただいたほうがよいです。

WordPress のプラグインを用いた問い合わせフォームを利用するサイト

具体的には、Contact Form 7、MW WP Forms、Gravity Forms など、サイト側で動的な処理が必要なフォームは、Sihfter 上で動作をしないため、外部の SaaS のフォームを利用するか、問い合わせフォームプラグインが必須であれば Amimoto マネージドホスティングなどのご利用を検討いただいたほうがよいと思います。

WordPressの標準機能やプラグインによるサイト内検索の実装が必要なサイト

サイト内検索も問い合わせフォームの時と同様で、動的な処理が必要なサイトを Shifter で運用することはあまりお勧めできません。
Algolia とそのプラグインを用いて静的サイトでもサイト内検索を動かすことは可能です。

Shifter Algolia Search によるサイト内検索の設定方法 – Shifter (getshifter.io)

テーマやプラグインに同梱されているファイル、特に写真や動画、音声が多い場合

Shifter での静的化の処理の際、テーマフォルダ内にメディアなどが多くなると、静的化時のファイルのアーカイビングやアップロードに時間がかかり、これに伴う処理のタイムアウトが懸念されます。

テーマファイルが直接参照するメディアファイルはメディアライブラリに置いておき Media CDN を有効化した上で利用するか、前もって外部のストレージに置いておき、それを参照するようにテーマを改修し、 Shifter の静的化処理の時間を短くすることも対処法としては考えられます。