WP2Static:静的HTMLに変換しFTPを使ってアップロードできる
WordPress サイトを静的 HTML 変換してくれるプラグインの紹介です。
それは「WP2Static」です。
その導入手順から日本語化・使い方と設定などを解説していきます。
WP2Static
WP2Static は、WordPress サイトを静的 HTML に変換し ZIP 圧縮してから、
FTP を使ってアップロードできます。
アップロード先として Amazon S3/ GitHub/ GitLab に自動展開も可能。
WP Crontrol プラグインの使用またはカスタムフックを利用して、
スケジュールでの自動エクスポートも可能です。
記事を作成もしくは更新時点でのバージョン:6.6.7
マルチサイトでの利用:可
Gutenberg エディターでの動作
Gutenberg エディターに追加される機能は無いので、気にする必要は無いです。
インストール手順
下記の URL から ZIP ファイルを入手して、管理画面からアップロードして有効化するか
WP2Static – WordPress.org
もしくは、WordPress.org の公式プラグインディレクトリにリリースされているので、
管理画面から入手できます。
ダッシュボードから「プラグイン」メニューの「新規追加」を選択し、
プラグイン追加画面右上の検索窓に「WP2Static」と入力します。
検索結果の一番左上に表示されると思うので、「今すぐインストール」をクリックします。
※一番左上に表示されない場合は、上記の画像から探して下さい。
インストールが完了したら、プラグインを「有効化」します。
プラグインのインストールに慣れていない方は、
下記の記事にて詳しく解説していますので、御覧ください。
WordPressプラグインのインストール手順を解説 – WordPress活用術
日本語化
WP2Static を有効化した際に日本語化されない場合には、
日本語化用の言語パックを translate.wordpress.org から入手できる場合があります。
WordPress と関連プロジェクト(テーマ・プラグイン)用の翻訳プラットフォームとして、
translate.wordpress.org (GlotPress) が導入されています。
※ボランティアで翻訳されている場合が多いので、
全てのプラグインで、必ずしも日本語化用の言語パックが用意されているわけでは無いです。
また、用意されていても 100% 翻訳されている保証もありません。
日本語化用の翻訳ファイルの探し方は、下記の記事を参照してください。
WordPress公式での日本語化用の翻訳ファイルの探し方 – WordPress活用術
専用メニュー
ダッシュボードの「ダッシュボード」メニューの下に追加されています。
使い方
設定画面で必要な設定を行った後で「Start static site export」ボタンをクリックします。
設定
静的サイト展開設定(Deploy Static Website)
Subdirectory on current server
Where will you host the optimized version of your site? で、
展開先に自サーバーのサブディレクトリを選択時
- Destination URL
訪問者がサイトへのアクセスに使用する URL を設定します。 - Target Directory
ファイルの展開先を指定します。新しいディレクトリ・空のディレクトリ・ディレクトリ名に .wp2static_safety をディレクトリにのみエクスポートできます。
ZIP Archive
展開先に ZIP アーカイブを選択時
- Allow offline usage
オフラインでの使用を許可するかどうか。チェックを付けると、全てのリンクは相対リンクになります。 - Destination URL
訪問者がサイトへのアクセスに使用する URL を設定します。
FTP
展開先に FTP を選択時
- Base URL
ホスト先の URL を設定します。現在使用している WordPress サイトと同じ URL を設定しないでください。エクスポートされた静的 HTML 内の全ての URL を設定したもので書き換えます。 http 及び https プロトコルと相対 URL をサポートします。
- FTP Server
FTP Server の IP を入力します。 - FTP Port
ポート番号を入力します。 - FTP Username
ユーザ名を入力します。 - FTP Password
パスワードを入力します。 - FTP Remote Path
リモートパスを入力します。
- Use FTPS(TLS)
TLS で暗号化して FTPS 接続を使用するかどうか。 - Use active FTP
FTP のアクティブモードを使用するかどうか。デフォルトではパッシブモードを使用します。 - Test FTP Credentials
入力した情報で FTP 接続のテストを行えます。
Amazon S3
展開先に Amazon S3 を選択時
- Destination URL
訪問者がサイトへのアクセスに使用する URL を設定します。 - Access Key ID
Access Key ID を入力します。
- Secret Access Key
Secret Access Key を入力します。 - Region
作成したバケットがある AWS の地域を選択します。 - Bucket
AWS S3のコンソールに表示されるバケット名を入力します。
- Subdirectory
静的 Web サイトのファイルをバケットのサブディレクトリに配置する場合、そのフォルダー名を入力します。 - CloudFront Cache Invalidation
CloudFront を使用している場合、CloudFront ディストリビューション ID を入力します。 - Test S3 Settings
入力した情報で接続テスト行えます。
GitHub Pages
展開先に GitHub Pages を選択時
- Destination URL
訪問者がサイトへのアクセスに使用する URL を設定します。
- Personl Access Token
GitHub の Personl Access Token を入力します。 - Account & Repository Name
GitHub の Account & Repository Name を入力します。
- Branch
Branch を入力します。 - Subdirectory
サブディレクトリを入力します。 - Commit message
コミット時のメッセージをカスタマイズできます。 - Test GitHub Settings
入力した情報で接続テスト行えます。
GitLab
展開先に GitLab を選択時
- Destination URL
訪問者がサイトへのアクセスに使用する URL を設定します。
- Personl Access Token
GitHub の Personl Access Token を入力します。 - Project ID
GitHub の Project ID を入力します。
- Branch
Branch を入力します。 - Subdirectory
サブディレクトリを入力します。 - Test GitHub Settings
入力した情報で接続テスト行えます。
クロール(Crawling)
- Use basic authentication
Basic 認証を使用するかどうか。 - Basic auth user
Basic 認証のユーザーを入力します。 - Basic auth password
Basic 認証のパスワードを入力します。 - Custom crawling port
クロール用のカスタムポート番号を入力します。
- Initial crawl list
エクスポート時のクロールリストをプレビューで確認できます。 - Detection level
クロールの検出レベル(可能な限り全て・投稿とページ・ホームのみ)を選択します。変更時には「Save and reload」ボタンをクリックします。
- Exclude certain URLs
特定の URL をクロール対象から除外したい場合に URL を指定します。
完全パスもしくは部分文字列を入力できます。
- Include additional URLs
プラグインが特定の URL の検出に失敗した場合等に追加したい URL を追加できます。
ディレクトリ全体を除外し、その中のファイルを 1 つだけ含める場合場合などに便利です。サポートされている形式は相対 URL です。
- Crawl Delay
エクスポートに失敗し、デバッグログを有効にしてもエラーが表示されない、もしくはサーバーログに「Too many files open」等のようなエラーが表示される場合、ログを取得できるまで値を増やしてください。
処理(Processing)
- Use relative URLs
相対 URL を使用するかどうか。 - Base HREF
ベースにする URL を入力します。
「/」を入力し「Use relative URLs」にチェックを付けると相対リンクは / some_dir / some_file.jpg のようになります。
- Rewrite Links in source code
ソースコード内のデフォルトの WordPress パスを置換したい場合などに使用します。
wp-content/themes/twentyseventeen/,contents/ui/mytheme/
wp-includes/,inc/
のように置換したいパスと置換後のパスをカンマ区切ります。
上記の URL 書き換えを行う場合に必要になる場合があります。
- Rename Exported Directories
エクスポートするディレクトリをリネームしたい場合に使用します。
ソースディレクトリを指定し、カンマで区切ってターゲットディレクトリを指定します。
例)
wp-content/themes/twentyseventeen を contents/ui/mytheme に移動するには、
次の設定が必要となります。
wp-content,contents
contents/themes,contents/ui
contents/ui/twentyseventeen,contents/ui/mytheme
wp-includes/,inc/
- Remove conditional comments within HEAD
HEAD セクション内の条件付きコメントを削除するかどうか。 - Remove WP Meta tags
WordPress のジェネレータータグを削除するかどうか。 - Remove WP link tags
WordPress のリンクタグを削除するかどうか。 - Remove HTML comments
HTML コメントを削除するかどうか。
高度なオプション(Advanced Options)
- Crawl Increment
共有サーバーなどの環境でもエクスポートできるようにデフォルトでは「1」を設定しています。
値を増やすとブラウザが送信するリクエストごとにサーバーが処理するファイルの量が増加します。その結果、エクスポート処理が高速化します。
初期値:1 - Deployment Batch Size
共有サーバーなどの環境で実行タイムアウトを回避するためにデフォルトでは「1」を指定しています。値を増やすとサーバーが各リクエストで展開するファイルの量が増加します。その結果、エクスポートが高速化します。
初期値:1 - API Request Delay
デプロイが GitLab の API にあまりにも速くリクエストしている場合、値を増やすと 各 API リクエスト間に遅延を追加できます。
初期値:0
- WP-CLI
WP-CLI を使用してエクスポート処理の自動化を行えます。GitHub プロジェクトページで詳細な情報を入手可能です。 - Redirect this domain to your static site?
このドメインを静的サイトにリダイレクトするかどうかについての事が簡単に記載されています。
- Email upon completion
展開プロセスが完了したときにメール通知を受け取るかどうか。送信先は管理者のメールアドレスになります。 - Delete deploy cache
展開する度に WP2Static は各ファイルをチェックします。
最後の展開以降に変更されたかどうかを確認し、変更されていないファイルをスキップします。
スキップさせたくない場合には、ボタンをクリックするとキャッシュが空になり、次回の実行時に完全展開されます。 - Enable Debug Mode
デバッグモードを有効にするかどうか。
ヘルプ(Help)
ログ(Logs)
各種ログを確認できます。