wp-cliを使ってWordPressをインストールした手順のメモ。
パッケージのダウンロード
まずパッケージをダウンロードする。
wp core download --locale=ja --path=/usr/local/www
ダウンロードして展開するところまでコマンドでやってくれる。
ダウンロードしたら、サイトのトップディレクトリに移動しておく。
cd /usr/local/www
コンフィグ情報の定義
wp-config.phpの内容の編集もコマンドから。ここでは引数から次の値を渡すことにする。
- データベース名: mysitedb
- MySQLのユーザ名: myname
- パスワード: somepassword
- DBのプレフィクス: mysite
引数の説明では「データベース名のプレフィクス」とと書かれているが、実際にはデータベース上に作成されるテーブル名のプレフィクス。
wp core config create --dbname=mysitedb --dbprefix=mysite --dbuser=myname --dbpass=somepassword
コマンド実行によりwp-config.phpが作成される。
実際にデータベースを作成するのは次の手順のため、ここでは存在しないデータベースを指定しておけば良い。逆に、既存のデータベース名を指定すると、次の手順でエラーとなる。
ユーザ名とパスワードには、MySQLに作成済みのユーザ情報を指定する。指定するユーザにはMySQLの管理者権限が必要。create userで作成しただけのユーザを指定すると、wp-cliでのデータベース作成時にエラーとなる。
管理者権限を持ったユーザーを作成するには、次のようにする。(セキュリティ的には好ましい設定ではないが、現状のwp-cliでは管理者権限必須。)
mysql -u root -p Enter Password: mysql> create user myname identified by 'somepassword'; mysql> grant all privileges on *.* to myname@localhost identified by 'somepassword' with grant option;
上記設定を終わった後、データベースが作成できるようになる。
データベースの作成
wp-config.phpに記述した内容に沿ったDBを作成する。
wp db create
しかし前述のとおり、WordPress用のMySQLユーザに管理者権限を持たせるのはセキュリティ的には好ましくない。これを避けるためには、データベースの作成部分のみwp-cliを使わずに直接mysqlにrootでログインして起動し、データベースを作成すれば良い。
WordPressのインストール
必要な情報を引数で指定してインストールする。ここでは、次の値を指定する。
- サイトURL: http://my.site.org/
- サイト名: My Private Site
- 管理者ユーザ名: wpadmin
- 管理者パスワード: anotherpassword
- 管理者メール: contact@my.site.org
管理者パスワードはデータベースのパスワードとは別のものを使うのが望ましい。
wp core install --url="http://my.site.org/" --title="My Private Site" --admin_user=wpadmin --admin_password=anotherpassword --admin_email="contact@my.site.org"
プラグインの追加
wp-cliを使ってwordpress.orgのリポジトリからプラグインを追加するには、プラグイン名を知る必要がある。たとえば “Google XML Sitemaps” なら google-sitemap-generator。つまり、必ずしも単純にプラグインのタイトルのスペースをハイフンに変換したものではない。
プラグイン名は、次の方法で確認可能。
- wordpress.orgプラグインページのアドレスから、「https://wordpress.org/plugins/」に続く文字列がプラグイン名。
- インストール済みであれば、pluginsディレクトリの下の該当プラグインのディレクトリ名。
- 管理画面の「インストール済みプラグイン」のページで「停止」や「設定」のリンク先アドレスの「plugin=」の後ろに続く文字列。
- 管理画面のプラグイン新規追加で検索した結果から、「説明」や「いますぐインストール」のリンク先アドレスの「plugin=」に後ろに続く文字列。
次のようにコマンド実行。
wp plugin install all-in-one-seo-pack count-per-day crayon-syntax-highlighter enable-media-replace google-sitemap-generator shutter-reloaded si-captcha-for-wordpress tinymce-advanced wp-total-hacks contact-form-7 really-simple-captcha visual-website-editor --activate
よく使うプラグインの名前を挙げておく。
プラグインタイトル | プラグイン名 |
---|---|
All in One SEO Pack | all-in-one-seo-pack |
Count per Day | count-per-day |
Crayon Syntax Highlighter | crayon-syntax-highlighter |
Enable Media Replace | enable-media-replace |
Google XML Sitemap | google-sitemap-generator |
Shutter Reloaded | shutter-reloaded |
SI CAPTCHA Anti-Spam | si-captcha-for-wordpres |
TinyMCE Advanced | tinymce-advanced |
WP-Total-Hacks | wp-total-hacks |
Contact Form 7 | contact-form-7 |
Really Simple CAPTCHA | really-simple-captcha |
プラグインの有効化
デフォルトで無効になっているプラグインを有効化しておく。
wp plugin activate akismet wp-multibyte-patch