WordPress構築メモ
- 公式サイトURL
- 参考URL
http://wpdocs.osdn.jp/WordPress_%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB
バージョン情報
ここでは、以下のバージョンについて記載しています。
- CentOS5
$ cat /etc/redhat-release CentOS release 5.11 (Final) $ mysql -V mysql Ver 14.12 Distrib 5.0.95, for redhat-linux-gnu (i386) using readline 5.1
- CentOS6
$ cat /etc/redhat-release CentOS release 6.7 (Final) $ mysql -V mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
CentOS5/PHP5.1をPHP5.3に入れ替える
CentOS5標準のPHPはバージョン5.1系なので、要件を満たすため5.3系のパッケージに入れ替えます。
既にPHP5.1系で何らかのシステムが構築されている場合は、入れ替えによる影響がないことを別途確認する必要があるでしょう。
インストール済みパッケージ確認。
$ rpm -qa php* php-common-5.1.6-45.el5_11 php-cli-5.1.6-45.el5_11 php-ldap-5.1.6-45.el5_11 php-5.1.6-45.el5_11
インストール済みPHP5.1系パッケージを削除。
# yum erase php-common php-cli php-ldap php
PHP5.3系パッケージをインストール。
# yum install php53 php53-cli php53-common php53-dba php53-gd php53-mbstring php53-mysql php53-pdo
PHP5.3系は標準パッケージで提供されています。
PHPを入れ替えた場合(モジュールとして読み込んでいる場合)apacheの再起動を行います。
# service httpd restart
PHP設定
/etc/php.iniを修正します。
当サイトでは以下の設定を追加/修正しています。
expose_php = Off default_charset = "UTF-8" date.timezone = 'Asia/Tokyo' mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.http_input = pass mbstring.http_output = pass mbstring.encoding_translation = Off mbstring.detect_order = auto mbstring.substitute_character = none mbstring.func_overload = 0 mbstring.strict_detection = Off
最低限必要なのは「date.timezone」のみのはずです。
MySQL設定
MySQLは、OS標準のものを使用します。
以下の内容になっていることを確認/初設定の場合は修正します。
$ more /etc/my.cnf [mysqld] ... character-set-server=utf8 [mysql] default-character-set=utf8
$ mysql -u root -p mysql> show variables like 'character_set%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)
データベースを作成します。
以下の例ではDB名「wordpress」、ユーザ名「wp」、パスワード「PASSWORD」としていますので、適宜、変更してください。
$ mysql -u root -p mysql> create database wordpress; mysql> grant all privileges on wordpress.* to wp@localhost identified by 'PASSWORD'; mysql> flush privileges; mysql> exit;
WordPressインストール
以下の例では、apache標準のドキュメントルート(/var/www/html)下にインストールします。
# cd /var/www/html # wget https://ja.wordpress.org/latest-ja.tar.gz # tar zxf latest-ja.tar.gz # chown -R apache:apache wordpress # rm -f latest-ja.tar.gz
apacheの設定ファイル(httpd.conf等)に、インストール先ディレクトリの設定を追加します。
<Directory "/var/www/html/wordpress"> AllowOverride All Order allow,deny Allow from all </Directory>
必要に応じて/設定完了まではアクセス制限を行うとよいでしょう。
apacheに設定を反映。
# service httpd configtest && service httpd reload
作成したコンテンツ/URLのインストーラにアクセスし、データベース情報を入力します。
http://example.jp/wordpress/wp-admin/install.php
インストーラによって、管理者アカウントの作成まで行われます。
これでWordPressのインストールは完了です。
サイトデザイン/テーマ設定
WordPressにログインし「外観」→「テーマ」から、サイトデザインのベースとなるテーマを設定します。
既に沢山のテーマが公開されており、これらを使用/流用するのが手っ取り早いでしょう。
テーマは、サイトデザインであるとともに、それ自身も「プログラム」です。
プラグインとの相性や、カスタマイズの適用等を考慮すると、運用し始めてからのテーマ変更は簡単ではありません。
最初にしっかりと方針を決めておく必要があるでしょう。
なお、公開されているテーマはバージョンアップされることが(ほぼ確実に)あるため、自身のサイトに適用する際は「子テーマ」を作成し、カスタマイズ等は「子テーマ」に対して行います。
当サイトではWordPress公式の「Twenty Twelve」を使用していますので、その「子テーマ」を作成します。
インストールしたWordPressのテーマ/ディレクトリ内に「子テーマ」のディレクトリを作成します。
ディレクトリ名が、そのまま子テーマの名称になります。
ここでは、分かりやすく「twentytwelve-child」とします。
$ cd /var/www/html/wordpress/wp-content/themes $ ls index.php twentytwelve $ mkdir twentytwelve-child
最低限、必要なファイルは「style.css」のみ/以下の内容です。
--- /dev/null
+++ twentytwelve-child/style.css
@@ -0,0 +1,6 @@
+/*
+Theme Name: twentytwelve-child
+Template: twentytwelve
+*/
+
+@import url("../twentytwelve/style.css");
修正したい項目/内容があれば、同ファイル内のimport以降に記述することにより上書き可能です。
テーマのバージョンアップに伴いスタイルシートが変わることもありますので、そのような影響を受けたくない場合はimportを使用せずにtwentytwelve/style.cssの内容をそのまま記載/必要に応じて修正して使用するとよいでしょう。
ここまで行うと「外観」→「テーマ」で表示されるテーマとして「twentytwelve-child」が追加されているはずなので、それを有効にします。
これで「子テーマ」の基本設定は完了です。
必要に応じてテンプレートファイル(functions.php等)のカスタマイズを「子テーマ」下で行います。