今回は、Zend Frameworkで構築されたブログツールを題材にして、実際にZend Frameworkに備わる機能や使い方を解説します。題材とするブログツールは、Alexatnet.comで提供されている「Alex@Net Blog」です。
この連載のバックナンバーは以下の通りです。併せてお楽しみください。
連載第1回:PHP開発でZend Frameworkを知らないだなんて嘘ですよね?
連載第2回:Zend Frameworkの各コンポーネントを一気に制する
今回は、Zend Frameworkで構築されたブログツールを題材にして、実際にZend Frameworkに備わる機能や使い方を解説します。題材とするブログツールは、Alexatnet.comで提供されている「Alex@Net Blog」です。
Alex@Net Blogは、Zend Frameworkと同じNew BSD Licenseで公開されているシンプルなブログです(図1)。
(図1)をご覧になれば分かるとおりシンプルなデザインで、機能も「ブログの作成/編集/削除」、「ブログの閲覧」、「Atomフィードの配信」のみを備える非常に簡単なツールとなっています。このようにシンプルなツールは、実際に利用する上では物足りなく感じるかもしれませんが、逆にいえば、実装を理解してカスタマイズのベースとするにはかなり有用です。
ここでは、Alex@Net Blogを題材として、Zend Frameworkをどんなふうに使えば良いか解説しましょう。Alex@Net Blogは、次のようなコンセプトで実装されていて、Zend Frameworkの使い方が簡単に学べるようになっています。
Alex@Net BlogのパッケージにはZend Frameworkが含まれており、インストールも容易です。データベースアクセスに使用するPDO_SQLiteの拡張モジュールもPHP 5では標準となっているので、追加インストールも必要ありません。
まずは、Alex@Net Blogをインストールして、試しに動かしてみましょう。Alex@Net Blogをインストールするには、まずダウンロードしたzipファイルを展開し、「blog/htdocs」ディレクトリ以下にあるファイルをDocumentRootに配置してください。
次に、連載第1回の「httpd.confの設定」で説明したDirectoryディレクティブのAllowOverrideに、「Indexes」を追加する必要があります(リスト1)。これは、index.phpと同じディレクトリ階層にある.httaccessが、DirectoryIndexディレクティブを含むためです。逆にいえば、httpd.confを編集したくない場合には.httaccessを編集して、DirectoryIndexディレクティブを削除するだけでも構いません。以上で、インストールは終了です。
<Directory />
Options FollowSymLinks
AllowOverride FileInfo Options Indexes
</Directory>
http://localhost/にアクセスすれば、図1のようなページが表示されるでしょう。このサンプルブログには、すでに1件のブログエントリが登録されていますが、実際のデータは、「blog/htdocs/_/database」ディレクトリに存在するSQLiteデータベースのblogファイルが使われています。
うまくページが表示されない場合は、PHPランタイムかApacheの設定に問題があると考えられます。httpd.confの設定などを見直してください。また、「blog/htdocs/_/database/sqls」ディレクトリ以下に、データベースセットアップ用のSQLが用意されています(SQLはSQLite/MySQL用です)。データを初期化したい場合などは、このSQLを改造して使うことができます。
Copyright © ITmedia, Inc. All Rights Reserved.