本記事では、wpstaging cli ツールを使用してコマンドラインで WP STAGING の Backup を展開する方法を説明します。コマンドラインで作業するのに問題がある場合、グラフィカルユーザーインターフェイスで同じ作業を行う WP Staging restore tool という別のツールを使用できます。
wpstaging cli は、各主要オペレーティングシステムでコマンドラインから WP STAGING の Backup ファイルを処理するために設計された強力で高性能なコマンドラインツールです。
このツールを使うと、WP STAGING Plugin で作成された .wpstg Backup ファイルの内容を展開、正規化、検査できます。このスタンドアロンの抽出ツールは Go で書かれており、卓越した速度と効率を保証し、WordPress とは独立して動作します。
コマンドラインツール `wp-staging-cli` は WP STAGING Developer と Agency プランの一部であり、GitHub からダウンロードできます。
主な機能
- Backup ファイルとデータベースの展開:
.wpstgBackup ファイルのすべてのコンテンツにアクセス。 - データベース正規化: Backup 内のデータベースファイルを正規化。
- メタデータダンプ: Backup ファイルからメタデータを展開して表示。
- インデックスとヘッダーのダンプ: Backup ファイルからインデックスとヘッダー情報を取得。
パフォーマンスベンチマーク
wp-staging-cli は非常に高速です。たとえば、Ubuntu 22.04 を実行する AMD Ryzen™ 7 PRO 7840U と高速 SSD では、20GB の Backup を 36 秒未満で展開できます。
インストール
ステップ 1: 実行ファイルをダウンロード
- こちらから Windows、Linux、Mac OS の実行ファイルをダウンロードしてください。
- zip ファイルを展開し、
buildフォルダからお使いの OS に適したバイナリを選択してください。 - (任意) 簡単にアクセスできるよう、
wp-staging-cliバイナリをPATH内のディレクトリに移動してください。たとえば Linux では:
mv wp-staging-cli /usr/local/bin/使用方法
wp-staging-cli を実行するには、以下のコマンドを使用してください:
wp-staging-cli [options] <backupfile.wpstg>引数
<backupfile.wpstg>: 処理する WP STAGING の Backup ファイルへのパス。この引数は必須です。
コマンドのオプションと引数は任意の順序で使用できます。
- オプションには「-」(1 つ) または「–」(2 つ) のハイフン接頭辞を付けられます。
- 値を持つオプションは「=」あり・なしの両方で設定できます。
オプション
Commands:
extract - Extract items from the backup. Default if no command is specified.
restore - Restore the backup file.
help - Display all help message.
Arguments:
backupfile.wpstg - Path to the WP Staging backup file that will be processed. This argument is mandatory.
General Options:
-l, --license=<licensekey> - WP Staging Pro License Key. Required to access the backup file.
Alternatively, use the `WPSTGPRO_LICENSE` environment variable.
-o, --outputdir=<path> - Specify the extraction directory path where processed files will be stored. Default: "./wp-staging-cli-output".
-n, --normalizedb - Normalize database files during the `extract` process.
This will replace all WP Staging specific placeholders and allows the sql file to be imported by
any regular db admin tool.
--workingdir=<path> - Specify the working directory path where config-related files will be stored. Default: "~/.wp-staging-cli".
--skip-config - Don't reads command options from the configuration file located at "~/.wp-staging-cli/wp-staging-cli.conf".
--siteurl=<siteurl> - Specify a new Site URL.
--db-prefix=<prefix> - Specify a new database table prefix.
--overwrite=<yes|no> - Overwrite the target directory during `extract` and `restore` operations. Default: "yes".
--verify - Verify the integrity of the extracted file.
--yes - Automatically answers "yes" to confirmation prompts.
--confirm-timeout=<num> - Timeout duration (in seconds) for awaiting a "yes" response at confirmation prompts. Default: 30 seconds.
--skip-extract - Don't extract files and use previously extracted and existing files for `restore` process.
For use case, when restore failed, the process can be continued without first extracting all files again.
-or, --only-wproot - Process only the 'wp root' item in the backup.
-ow, --only-wpcontent - Process only the 'wp-content' item in the backup.
-op, --only-plugins - Process only the 'plugins' item in the backup.
-ot, --only-themes - Process only the 'themes' item in the backup.
-om, --only-muplugins - Process only the 'mu-plugins' item in the backup.
-ou, --only-uploads - Process only the 'uploads' item in the backup.
-ol, --only-languages - Process only the 'languages' item in the backup.
-od, --only-dbfile - Process only the database file in the backup.
-oe, --only-dropins - Process only the dropins file in the backup.
-of, --only-file=<string> - Process only items that match the specified string.
-sr, --skip-wproot - Skip processing the 'wp root' item in the backup.
-sw, --skip-wpcontent - Skip processing the 'wp-content' item in the backup.
-sp, --skip-plugins - Skip processing the 'plugins' item in the backup.
-st, --skip-themes - Skip processing the 'themes' item in the backup.
-sm, --skip-muplugins - Skip processing the 'mu-plugins' item in the backup.
-su, --skip-uploads - Skip processing the 'uploads' item in the backup.
-sl, --skip-languages - Skip processing the 'languages' item in the backup.
-sd, --skip-dbfile - Skip processing the database file in the backup.
-se, --skip-dropins - Skip processing the dropins file in the backup.
-sf, --skip-file=<string> - Skip processing items that match the specified string.
-dm, --dump-metadata - Display backup metadata from the backup file.
-di, --dump-index=<data> - Display backup index from the backup file. Use 'data' to show additional information.
-dh, --dump-header - Display backup header from the backup file.
-do, --dump-options - Display the command options that have been parsed.
-d, --debug - Display debug message.
-q, --quiet - Suppress output of processed backup items.
-v, --version - Display version information.
-h, --help - Display all help message.
Restore Options:
-p, --path=<path> - Specify the WordPress root path for restoration. Default: "./".
-wd, --overwrite-db=<yes|no> - Remove database tables not present in the backup. Default: "yes".
-wr, --overwrite-wproot=<yes|no> - Remove files in the WordPress root path that are not in the backup or part of WordPress core. Default: "no".
--db-innodb-strict-mode - Enable InnoDB strict mode if needed. By default, it is turned off during database restoration.
--db-file=<file> - Use the extracted backup SQL file to resume database restoration in case of failure.
--db-insert-batch-size=<num> - Number of queries to batch in a single insert operation. Default: 1000.
--db-insert-multi=<yes|no> - Use multi-row INSERT statements per query to improve performance. Default "yes".
Restore DB Options:
This option overrides the DB-related configuration parsed from the wp-config.php file.
--db-host=<string> - Database Host.
--db-name=<string> - Database Name.
--db-user=<string> - Database User.
--db-pass=<string> - Database Password.
--db-socket=<file> - MySQL socket file path.
--db-charset=<string> - Database charset.
--db-collate=<string> - Database collate.
--db-ssl-ca-cert=<file> - SSL CA file path.
--db-ssl-cert=<file> - SSL certificate file path.
--db-ssl-key=<file> - SSL key file path.
--db-ssl-mode=<mode> - Connects to the database with SSL mode "skip-verify" or "preferred". Default: "skip-verify".例:
wp-staging-cli --license=WPSTGPRO_LICENSE --outputdir=./wpstgbackup backup.wpstg
wp-staging-cli --license=WPSTGPRO_LICENSE --normalizedb --dbprefix=newprefix --siteurl=https://example.com backup.wpstg短いオプションを使用する場合:
wp-staging-cli -l WPSTGPRO_LICENSE -o ./wpstgbackup backup.wpstg
wp-staging-cli -l WPSTGPRO_LICENSE -n -dp newprefix -su https://example.com backup.wpstg環境変数経由でライセンスキーを設定する
スタンドアロン抽出ツールには有効な WP STAGING | PRO ライセンス (Agency または Developer プラン) が必要です。
便宜上、環境変数を使用してライセンスキーを設定できます:
Unix ベースのシステムでは:
export WPSTGPRO_LICENSE=WPSTGPRO_LICENSE_KEYWindows のコマンドプロンプトでは:
set WPSTGPRO_LICENSE=WPSTGPRO_LICENSE_KEYwp-staging-cli への貢献
wp-staging-cli への貢献を歓迎します! 提案、バグレポート、コードの貢献がある場合は、GitHub リポジトリで Issue を開いてください。