WordPressのホームページを変更する
WordPressをwordpressディレクトリにインストールすると、ホームページが/wordpress/index.phpになって、ちょっとURLが不格好になる。
こんな感じに。
http://awgnirzard.dynalias.com/wordpress/
そこで、インストールしたディレクトリ以外の場所をホームにして、ちょっとURLの見栄えを良くしよう。
こんな感じに。
http://awgnirzard.dynalias.com/
■ やり方
1.index.phpを設置する。
wordpressディレクトリの中にあるindex.phpをwordpressディレクトリと同じ階層(最上層ディレクトリ)にコピーする。
コピーしたindex.phpを変更する。
<?php
/**
* Front to the WordPress application. This file doesn't do anything, but loads
* wp-blog-header.php which does and tells WordPress to load the theme.
*
* @package WordPress
*/
/**
* Tells WordPress to load the WordPress theme and output it.
*
* @var bool
*/
define('WP_USE_THEMES', true);
/** Loads the WordPress Environment and Template */
require('./wordpress/wp-blog-header.php');
?>
wp-blog-header.phpはindex.phpと同じ階層でなく、wordpressディレクトリの中にあるので”/wordpress”を追加する。
2.WordPressの設定を変更する
管理画面 -> 設定 -> 一般のサイトのアドレス (URL)を変更する。
例
変更前:http://awgnirzard.dynalias.com/wordpress
変更後:http://awgnirzard.dynalias.com
※最後に ‘/’ は要らないようです。
「変更を保存」を押下。
3.ページ確認
管理画面の左上のブログタイトルをクリックして、変更したURLでホームページが表示されることを確認する。
WordPressのインストール
■ 動作環境のチェック
WordPressをサーバーにインストールする前に、動作環境をチェックする。
動作環境は
WordPress 日本語版 2.9 以降
・PHP バージョン 4.3 以上
・MySQL バージョン 4.1.2 以上
です。
PHP、MySQLのバージョンは各レンタルサーバーで確認するか、index.phpに
<?php phpinfo(); ?>
を記述して確認して下さい。
※確認後はphpinfoを記述したファイルは削除すること。
■ MySQLデータベース作成
MySQLにデータベースを作成します。
各レンタルサーバーのデータベース作成方法に沿って作成してください。
データベース名、ユーザー名、パスワードは忘れないように。
自前の人用
# mysql -u root -p Enter password: (パスワード入力) // awgnirzardデータベースを作成 mysql> create database awgnirzard; Query OK, 1 row affected (0.11 sec) // awgnirzardデータベースにアクセス出来るwordpressユーザーを作成 mysql> grant all privileges on awgnirzard.* to wordpress@localhost identified by 'パスワード'; Query OK, 0 rows affected (0.12 sec) mysql> exit Bye
■ WordPressインストール
WordPress | 日本語よりファイルをダウンロード解凍後、wordpressディレクトリをサーバーへアップロード。
サーバーへSSHで接続できる人はwgetしてunzipすると速いよ。
■ WordPressコンフィグの設定
wordpressディレクトリの下のwp-config-sample.phpをコピーして、ファイル名をwp-config.phpに変更して編集する。
データベースを作成したときに設定した、データベース名、ユーザー名、パスワードを入力して、アップロード。
// ** MySQL 設定 - こちらの情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define('DB_NAME', 'データベース名');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'ユーザー名');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'パスワード');
■ WordPress初期設定
基本的な所の準備ができたのでブログ名等を設定するためにhttp://サーバー名/wordpress/へアクセスする。
サイトのタイトル、ユーザー名、パスワード、メールアドレスを入力して「WordPressをインストール」ボタンを押下する。
※設定したメールアドレスに完了通知メールが送信されてくるので、ちゃんと存在するアドレスを入力すること。
もう一度、http://サーバー名/wordpress/へアクセスし、ブログがちゃんと作成されているか確認する。
管理画面へログイン出来ることも確認するために、http://サーバー名/wordpress/wp-login.phpへアクセスし、先程設定したユーザー名とパスワードでログインする。
以上でインストール完了です。
自動整形のせいで死にたい
WordPressにはHTMLの自動整形があるんだが、頭があまりよろしくない…
頼んでもないところに勝手にbrタグ入れたりする。
普通に記事を書くだけなら、ソースが汚くなるだけで大した問題はない。
ただ、PHPを記事上でも動くようにして、formとかを使ったプログラムを書いていると、フォーム内にbrタグが出てきたりする。
どう頑張っても、出て来る。
自動整形機能を無効にすればいいんだけど、無効にするような設定なんてない。
親切の押し売り状態である。
そこで、WP-UnFormatingというプラグインを入れて、このふざけた自動整形をぶち壊す。
BeLive » [WP-Plugins]WP-UnFormating 1.x : Blog Archive
インストール有効化して、自動整形をさせたくないところを[unformat][/unformat]タグで囲めば、その部分だけ自動整形されなくなる。
ただし、全体的にpタグで括られるので…
[unformat] <p>テストですか?</p> <p>テストですよ?</p> <p>テストですね!</p> [/unformat]
記事本文を上記のように書いて投稿すると、実際のページは
<div class="post_contents">
<p>
<p>テストですか?</p>
<p>テストですよ?</p>
<p>テストですね!</p>
</p>
</div>
こんな感じに、pタグが入れ子になってしまうので、最初のpタグ開始と最後のpタグ終了は外しておきましょう。01
[unformat] テストですか?</p> <p>テストですよ?</p> <p>テストですね! [/unformat]
本文だけ見ると、気持ち悪いけどね。
- pタグは入れ子に出来ません。 [戻る]
WordPressに403を
WordPressはテーマに404.phpがあると、404エラーの時404ページを表示してくれる。
/index.php?error=404
上記にアクセスすると、404ページが表示されるわけだが…
?error=404ってどう見てもGETパラメータである。
ということは、だ。
403にしたら、403ページが表示できるようになるんじゃないか?
こっち見んな!
WordPressの管理ページがある/wp-adminに機械的にアクセスがあったので拒否る事にする。
/wp-admin以下に.htaccessを設置する。
そして中身を下記のようにする。
AllowOverride Limit Order Deny,Allow Deny from All Allow from 127.0.0.1 203.135.
1行目でアクセス制御を行うディレクティブ(Order, Allow, Deny)を有効にする。
2行目でAllow(許可)とDeny(拒否)のどちらを先に評価するか設定。
3行目で全て拒否。
4行目で許可するIPを設定。
上記では127.0.0.1(ループバックアドレス)と203.135.???.???を許可する。
許可されてないIPで接続して、403ページが表示されたらおk。
っていうけど、許可されてないIPから接続するのって意外と難しいよね。
ホームページテスト【外部からの表示確認】
とかで確認するといいかも。
WPAdsを使わない時のために
広告等をランダム表示できるプラグインWPAdsをテーマに組み込んでいて、その組み込んだゾーンが空になった場合、何も出力されなくなるので、空divになってしまったり、テーマが崩れる事があるので、その対策。
wpadsはprint文が書いてあるだけなので、wpadsの中で呼んでるget_wpadsを使う。
get_wpadsだとhtmlを返してくれるので、これを変数に入れてissetで中身が入ってるかどうかがわかる。
うちの場合はこんな感じ。
<?php $wpads = get_wpads('header'); ?>
<?php if(isset($wpads)): ?>
<div id="ad">
<div id="ad_inner">
<?php echo $wpads; ?>
</div>
</div>
<?php endif ?>
get_wpads(‘header’)の結果を変数$wpadsに代入。
変数$wpadsが空じゃなかったら、周りのdiv要素とechoで変数$wpadsの中身を出力。
ウィジェットでPHPを実行する -Executable PHP widget-
WordPressのウィジェットは、手軽にサイドバーにテキストやHTMLを追加できるけど、PHPが実行できない!
PHPが実行できたらもっと便利!
わざわざ、テーマにPHP追加しなくてよくなるしね。
ってことで、ウィジェットでPHPが実行できるプラグインを追加。
WordPress › PHP Code Widget « WordPress Plugins
インストールして有効化するとウィジェットに「PHP Code」が追加される。
これに思う存分PHPを書きなぐれば、実行結果がサイドバーに表示されてウマー。
今回、ウィジェットでPHP実行して何がしたかったかというと、WPAdsをウィジェットで表示させること。
サイドバーに広告をビローンと何個も表示させるのは見苦しいのでな。
uptime!! v0.3
WordPressプラグインで管理ページ以外のところにフックを使ったことがなかったので、試しにthe_contentにフックしてみた。
とりあえず、記事に書かれた任意のhtmlコメントを置換してみることに。
“<!– uptime!!#uptime –>”で連続稼働時間
“<!– uptime!!#idletime –>”でアイドル時間
ま、実用性はないよねぇ…















205StudioTR