WordPressでデータベースを構築する

人気のCMS「WordPress」を使って小規模〜中規模のデータベースを構築する際に知っておきたいことをまとめた。
データベースとは
データベースとは「特定のテーマに沿ったデータを集めて管理し、容易に検索や抽出などの再利用をできるようにしたもの」をいう。狭義にはコンピューター上で操作できるものを指す。
データベースが用いられる場面
- 住所録
- 医療カルテ
- OPAC(オンライン蔵書目録)
- ポータルサイト
- ECサイト など
データベースの要件
- データの追加、削除、編集が簡単であること
- データの検索、抽出が簡単で、かつその検索方法、抽出方法が多様であること
- データのバックアップや復元、出力などが簡単であること
- データ型の編集が簡単であること
- 全体像の把握が簡単であること
- 多人数での閲覧、編集が可能であり、一方で閲覧、編集に制限がかけられること
データベースのデータ構造の種類
- 階層型
- データをツリー型に構成する(親データは1つ、子データは複数)
- 例)IMS
- ネットワーク型
- データを網目状に構成する(親データ、子データの数は任意)
- 例)Web
- リレーショナル型
- データ間の関係をデータ型とする
- 例)SQL、FileMaker(ver.3.0以降)
- カード型
- 特定の構造をもったデータを必要なだけ積み重ねる
- 例)FileMaker、桐、HyperCard
cf.7種類の情報構造

WordPressとデータベース
WordPressを使ったデータベースの概要
- 「投稿」をひとつのデータ単位として扱う
- 「カテゴリー」や「タグ」で分類する
- 「アーカイブ」でデータの一覧表示を行う
- 「サイト内検索」でデータの簡易的な検索を行う
- 「カスタムフィールド」で様々な情報を付与する
WordPressでデータベースを作る意義
人気の高いCMSである
WordPressは広く普及しており、開発にあたって十分な情報を比較的容易に得ることができる。また多くのレンタルサーバーで自動インストールプログラムの一つとして扱われており、運用開始までの工数が少ない。
環境を問わず閲覧や編集ができる
Web上でデータベースを運用することで、閲覧環境やデバイスを選ばずデータベースを利用することができる。またWordPressのようなCMSでは複数人数での更新作業や権限を管理しながらの利用も可能となっており、運用開始後も継続的にデータの追加や修正を行うための環境が整っている。
既存サイトからの展開が可能
既存サイトがWordPressで構築したものであれば、データベース機能を追加することも簡単にできる。これまでの投稿をデータとする事もできるし、別の内容で新しくデータベースを作ることもできる。
情報構造が洗練されている
WordPressには標準的にカテゴリーやタグで投稿を分類する機能が備わっている。また任意の単語をキーワードとした投稿検索、固定ページ検索も可能である。
各種データ構造に対応できる
上述の「データベースのデータ構造の種類」では4種類のデータ構造を紹介した。WordPressはその設計や開発の背景に伴い、どのデータ構造であっても対応することができる。標準的には投稿を一枚のカードとして扱う「カード型」で構築することになるだろう。固定ページのみ用いて分類すれば「階層型」のデータ構造も実現できる。またリンクを中心に投稿を繋ぐことで、Web本来の「ネットワーク型」のデータ構造にもなる。さらに、WordPressが動作しているデータベース(MySQL)は「リレーショナル型」であるため、工夫すればモダンな構造のデータベースを組むこともできる。

WordPressでのデータベース構築における検討事項
WordPressでデータベースを構築する際には、次のような事柄について検討しておきたい。
Webサイトとの共存方法
新しくデータベースのみを作る場合は良いが、既存のサイトにデータベースを追加する場合、また既存のサイトをデータベースに転換する場合などには注意が必要である。
- WordPressで新しくデータベースを作る場合
- 長期に渡り運用することを前提に、スケーラビリティや編集の自由度を考慮した構成にする
- 既存のWordPressサイトに新しくデータベース機能を追加する場合
- マルチサイト機能を使ってWordPressを複数使用する、あるいはカスタムポスト機能を使って投稿を切り分けるなどの工夫が必要
- 既存のWordPressサイトをデータベース化する場合
- これまでの投稿の体裁やデータの型を見直し、統一感のあるものにする
プラグインの検討
WordPressには機能を追加するプラグインが多数用意されている。これらを上手く組み合わせることで、短時間で運用時の負担が少ないデータベースを構築することができる。
WordPressでのデータベースの制作
STEP1:設計
- 「タイトル」に入れる情報
- 該当データを一言で表す内容にする。
- 例)商品名、人物名、サイト名など。
- 「カテゴリー」「タグ」の選定
- カテゴリーはできる限り階層を浅くする事が望ましい。また、一つのデータは一つのカテゴリーにのみ収まるようにする。逆に、タグは一つのデータに対して複数の特徴を付するのに用いる。
- 「記事の本文」に入れる情報
- データの詳細を文章で表現する場合などはここを利用する。
- 例)商品情報など。
- 「抜粋」に入れる情報
- データの概要を表す内容を入れる。文字数に制限を設けておくと出力時に整然と並べることができる。
- 「スラッグ」の仕様
- スラッグはタイトル同様、そのデータを端的に表すものにする。また将来的に重複することがないよう、ユニークなものが指定できるよう考慮する。
- 「アイキャッチ画像」など画像の仕様
- 画像の容量や大きさだけでなく、切り抜く比率や背景についても統一性のあるものにすることが望ましい。引用する画像が多い場合はCDN等の利用も検討する。
cf.心地よいデザインのルール - 「カスタムフィールド」で追加する情報
- 利用するカスタムフィールドの数に制限はないが、上記の区分で扱えそうな形式の値であればそちらを優先する。また、カスタムフィールド名はわかりやすいものにする。
- 例)商品番号、住所、価格、電話番号、生年月日など。

いずれも将来的な仕様の変更に耐えられる設計にする事が望ましい。
設計に便利なプラグイン
- Advanced Custom Fields
- カスタムフィールドの使用をサポートしてくれるプラグイン。
- Types
- カスタムフィールド、カスタム投稿タイプ、カスタム分類を管理するプラグイン。
STEP2:データの仮登録
手頃な分量のデータを仮に登録してみて、掲載情報の過不足を確認したり、構成の適正を判断したりする。
データの仮登録に便利なプラグイン
- Duplicate Post
- 投稿や固定ページを複製するプラグイン。
STEP3:試験運用
実際にWordPress上でデータを表示させてみる。同時に、表示をある程度整える。開発者以外の人でユーザーテストを行う。
試験運用に便利なプラグイン
- WP Maintenance Mode
- メンテナンス画面を作成、表示することができるプラグイン。
STEP4:データの登録
残りのデータを登録する。CSVファイルなどを利用して一括インポートすると手間が省ける。アイキャッチ画像を使ったり、CDN等を利用して画像を引用するのであればこのタイミングで行う。
データの登録に便利なプラグイン
- Really Simple CSV Importer
- CSVインポートを補助するプラグイン。
- Auto Post Thumbnail
- 既存の投稿からアイキャッチ画像を生成するプラグイン。
- Search Regex
- 登録されたデータの一括検索や一括置換ができるプラグイン。
STEP5:機能の追加とブラッシュアップ
利用者目線で、よく使われるであろうデータへのリンク、カテゴリーやタグのアーカイブページへのリンクを設け、すべてのデータへの適切な誘導ができるよう工夫する。また、絞り込み検索や索引による誘導も実装する。
機能の追加とブラッシュアップに便利なプラグイン
- Image Widget
- ウィジェットエリアに画像を直接挿入できるプラグイン。
- Easy FancyBox
- 画像の拡大表示ができるプラグイン。
- Yet Another Related Posts Plugin
- 関連する記事を自動に表示してくれるプラグイン。
- Search Everything
- サイト内検索の範囲を広げるプラグイン。
- Automatic SEO Links
- 本文中の任意の文字列に自動でリンクを作成できるプラグイン。
- WP-PageNavi
- アーカイブページにページ番号の一覧を表示するプラグイン。
- Breadcrumb NavXT
- パンくずリストを表示するプラグイン。
- FE Advanced Search
- 絞り込み検索できるプラグイン。有料。
STEP6:運用
データの追加、修正、削除を継続的に行う。データの更新が滞った時点からそのデータベースは価値が低くなり始める。負担が少なくなる運用体制を整えることが大切。簡易的なフォームを設け、利用者に誤字脱字の報告や内容変更に関する連絡をしてもらうのも良い。
運用に便利なプラグイン
- WP Total Hacks
- 管理画面のカスタマイズなどができるプラグイン。
- TinyMCE Templates
- 投稿の雛形(テンプレート)を作ることができるプラグイン。
- AddQuicktag
- 定型文、HTMLタグを登録し、簡単に繰り返し記述できるプラグイン。
- Contact Form 7
- 問い合わせフォームを簡単に作ることができるプラグイン。
- Gianism
- SNSのアカウントでWordPressにログインできる機能を追加するプラグイン。
- Adminimize
- 権限毎に管理画面をカスタマイズできるプラグイン。
- WP-PostViews
- アクセス数から人気の高い投稿を表示できるプラグイン。
- Check Copy Content
- コンテンツのコピーされた箇所を知らせてくれるプラグイン。
STEP7:メンテナンス
データの軽量化やバックアップ、サイトの高速化について検討する。
メンテナンスに便利なプラグイン
- WP-DBManager
- WordPressのデータベースのバックアップや最適化を行うプラグイン。
- WP Super Cache
- キャッシュにより負荷の低減と高速化を実現するプラグイン。
- Broken Link Checker
- サイト内のリンク切れを検知、報告するプラグイン。
- WP-Copyright-Protection
- コンテンツのコピーを防止する。
以降、STEP5〜7、あるいは6〜7を繰り返す。
事例
参考
記事のデータ
文責 | |
---|---|
公開日 | 2013年10月16日 |
カテゴリー | |
タグ | Web/おすすめ/ラベリング/情報を整理する/情報を集める/技術と手法 |
関連する記事 |