WordPressのカテゴリー管理画面にキーワード欄を追加してみる

カテゴリーページでキーワードなどの項目を任意に設定したいと思い、ちょっとチャレンジしてみました。
ただし、カテゴリーや投稿タグなどを管理している term、term_taxonomy テーブルには、投稿に対するカスタムフィールドのようなものが存在せず、項目を追加した場合にどこにデータを保存するかが問題になってきます。

では、どのような方法があるかというと

  1. optionsテーブルに配列として保存する
  2. termsテーブルにフィールドを追加する
  3. カスタムフィールドの内容を保存するpostmetaテーブルのようなテーブルを追加する

の3つが考えられます。これらの手法について

1.は、テーブル構造を変更することなく簡易に実装ができますが、検索性はほぼ0です。

2.は、多少の変更で get_category など従来の関数で情報の取得が可能で、検索性も良好ですが、項目毎にフィールドが必要になるため、自由な拡張は期待できません

3.は、拡張性が高く検索性も保持されますが、独自の取得関数が必要になり、実装には一番手間がかかります。

今回は、テストの意味もあり、3の方法でトライしてみることにしました。

“WordPressのカテゴリー管理画面にキーワード欄を追加してみる” の続きを読む

WordPressの新着情報表示にカスタム投稿タイプを含める方法

WordPressの新着情報表示にカスタム投稿タイプを含める方法

@junirock78 さんが、ツイッターでカスタム投稿タイプも含めた新着情報を表示する方法を質問されていたので、おせっかいかとは思いつつ話の輪に加わってみました。

“WordPressの新着情報表示にカスタム投稿タイプを含める方法” の続きを読む

WordPressのTransients APIを用いて表示の高速化を図る

ポータル的なサイトの場合、トップページの情報掲載量が多く処理が重くなりがちですよね。こんなときの対策として、WP Super CacheW3 Total Cache などのキャッシュプラグインを利用することも1つの手ではありますが、ランダムな表示箇所があったり、カウンターの表示があったり、ログイン処理があったりなどなど、すんなりとキャッシュでは解決できない場合も出てきたりします。

こんな場合は、Transients API を用いて取得結果のデータをキャッシュとして保持する方法があります。

“WordPressのTransients APIを用いて表示の高速化を図る” の続きを読む

WordPressの固定ページ一覧に順序の項目を追加する方法

WordPressの固定ページは、ページ属性の順序によってソートされるようになっているのは知られていますが、この項目が固定ページの一覧に表示されていたら、新規追加の際にいくつにすれば良いか分かりやすいですよね?

今回は、そんな固定ページの使い勝手を良くしてくれるコードを紹介します。

“WordPressの固定ページ一覧に順序の項目を追加する方法” の続きを読む

Twenty Ten、Twenty Elevenのヘッダー画像を1行で非表示にする方法

Twenty Ten、Twenty Elevenでヘッダー画像を表示させないようにするには、header.phpを編集する方法や、CSSでdisplay: noneの指定を追加する方法もありますが、functions.phpの1行書き足すだけで、あっさり非表示にもできる方法があるのをご存じでしょうか。

“Twenty Ten、Twenty Elevenのヘッダー画像を1行で非表示にする方法” の続きを読む