joppot

コピペで絶対動く。説明を妥協しない

サーバ プログラミング

wordpress skeletonを使った開発環境の構築

投稿日:

Pocket

wordpress_skeleton_top_thumb

はじめに

みなさんこんにちはcandleです。wordpressは大変便利なのですが、いまいちgitで管理するのが難しいものです。

というのも、wordpress全体をgit管理対象にしてしまうと、wordpressのバージョンアップによって無駄な差分がうまれてしまいます。だからといって、自作したテーマだけをgitの管理対象にすると、プラグインとの関係などが面倒になります。wp-config.phpに記載した設定もうまく反映しづらくなります。
既存の方法ではgitignoreを最大限に活用して、うまくやる必要がありました。

skeletonを使えば多くの問題を解決できそうです。skeletonは本家があるのですが、そちらではなく、派生のqckanemotoさんが開発している方を使用します。

https://github.com/qckanemoto/WordPress.Skeleton


前提

composerがインストールされている
apacheかnginxがローカルで動く環境になっている
mysqlがインストールされている



wordpressプロジェクトを作成する

skeletonは便利で、composerのコマンドからwordpressを作成できます。

一般に以下のコマンドで作成します。

composer create-project wordpress/skeleton プロジェクト名

試しに、apacheかnginxが動く場所でプロジェクトを作成します。
私はホームディレクトリのapacheフォルダがapacheの動く環境になっているのでそこで、作成します。

alice_blogというのを作ります。

composer create-project wordpress/skeleton alice_blog

composer_install_skeleton

作成できたら、alice_blogに移動します。

go_to_alice_blog

local-config-sample.phpというファイルがあるので、これをlocal-confi.phpに名前を変更します。

mv local-config-sample.php local-config.php

このファイルはデータベースの接続設定を記述します。

mysqlでデータベースを作成する

先にデータベースを作成しましょう。
mysqlにログインしてalice_blogというデータベースを作成します。ログインして

mysql -u root -p

以下のコマンドでデータベースを作成します。パスワードをしっかりしたものにしましょう。

CREATE DATABASE alice_blog CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL ON alice_blog.* TO 'alice'@'localhost' IDENTIFIED BY '87654321';

alice_blogというデータベースを作成し、
aliceユーザーを作成し、
パスワードは87654321です。

create_alice_blog_database

データーベースが作成できました。

skeletonの設定をおこなう

まずはデーターベースの設定をします。
先ほどリネームしたlocal-config.phpを開いて、以下のように設定します。

define('DB_NAME', 'alice_blog');
define('DB_USER', 'alice');
define('DB_PASSWORD', '87654321');
define('DB_HOST', 'localhost');
define('WP_POST_REVISIONS', 3);
define('WP_DEBUG', false);

alice_blog_config

保存しましょう。

wp-config.phpを開いて、security saltを設定します。
40行目たりのdefineを「https://api.wordpress.org/secret-key/1.1/salt/」にアクセスして書き換えます

define_wordpress_salt

この値は絶対に公開しないでください。

wordpressをインストールする

wpフォルダがあると思いますが、そこにworpdressが入ります。まだ、wpフォルダは空です。
composer installを入力するとwordpressが入ります。

composer install

composer_install_wordpress

インストールが完了したら、webサーバを起動してアクセスしてみましょう。

私はlocalhostなので以下のアドレスになります。

http://localhost:8080/alice_blog/

alice_document_root

上の画面はskeletonのディレクトリです。wpフォルダ以下がwordpressになります。
実際の運用ではwpフォルダをdocument rootにして公開します。
wpフォルダに移動するとwordpressのインストーラーが起動します。

http://localhost:8080/alice_blog/wp

wordpress_ja_installer

言語は日本語を選びましょう。
後はインストーラー通りやればインストールできます。

git管理する

skeletonのディレクトリで以下を実行してgitのリポジトリにします。

git init

skeleton_git_init

.gitignoreはあらかじめ作成されているので、自分で設定する必要はありません。
.gitignoreを見るとskeletonが管理しているのは「backup」と「wp-content」「wp-config.php」くらいだといことですね。

プラグインを管理する

wordpressのプラグインを加える場合はwordpressの管理画面から行うのではなく、composer.jsonで行います。
例えば、Login LockDownをインストールする場合は

composer.jsonを開いて、requireに以下を記述します。

"wpackagist-plugin/login-lockdown": "*"

右の「*」はバージョンは最新で良いという意味です。


 "require": {
      "php": ">=5.3",
      "johnpbloch/wordpress": "*",
      "wpackagist-plugin/wp-i18n": "dev-trunk",
      "wpackagist-plugin/wp-multibyte-patch": "~2.3",
      "wpackagist-plugin/login-lockdown": "*"
    },

write_loin_lock_down_to

保存したら、composer updateでインストールします。

composer update

compsoer_update_and_install_lock_down

私の場合、ちょっとエラーがでていますが、うまくいきました。
プラグインの有効化は管理画面上で行います。

まとめ

skeletonでは主に、自作のテーマと自作のプラグインとサードパーティのプラグインのリスト、を管理する感じですね。
次回はデプロイをやってみましょう。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-サーバ, プログラミング
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Railsの正規表現を使用して文字列から任意の文字を取得する

概要 みなさんこんにちはcandleです。今回はrailsの正規表現を使って任意の文字を文字列から取得する方法を紹介します。 rails4になってからなのか、railsはrubyであるにもかかわらず、 …

Chart.js 2.0でy軸の最大値(scales max)と最小値を設定する

概要 みなさんこんにちはcandleです。今回はChart.js2.0でy軸の最大値、最小値を設定する方法を紹介します。 Chart.js 2.0では特に指定しないと自動的に、y軸の最大値を設定してく …

apacheのmod_rewriteでphpのGETパラメータのurlを書き換える

概要 みなさんこんにちはcandleです。今回はphpでgetでパラメータを受け取る際のurlの書き換えです。 例えば、phpよくあるのがこのようなurlではないでしょうか。 http://local …

basscss v8以降にv7以前のスタイルを追加する(自分用メモ)

概要 みなさんこんにちはcandleです。今回はbasscssのv8でかなりデフォルトのスタイルから削除されてしまったスタイルをインポートします。 v7以降からbasscssのスタイルはかなり分割され …

Mac OS 10.9 MarvericksにHomebrewでOpencv2.4.7をインストールする

概要 みなさんこんにちはcandleです。今回はhomebrewを使用してopencvをインストールします。 前回macports経由でインストールする方法がうまくいかない事を記事にしましたが今回の方 …

  • English
  • 日本語

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

スポンサードリンク

アーカイブ