「WordPressで学ぶPHP(4)通信編」を発売しました。
本書は、「WordPressで学ぶPHP(1)変数・制御構造編」「WordPressで学ぶPHP(2)データ構造編」「WordPressで学ぶPHP(3)関数編」の続編にあたり、Webブラウザとサーバー(PHP)との通信と、PHPから他のサーバーに通信することについて解説します。
ブログ記事詳細検索プラグイン(その13・検索結果の一部を読み込む)
SearchEntriesプラグインでは、デフォルトでは検索で見つかったブログ記事をすべて読み込みます。
しかし、一部のブログ記事だけを読み込むようにすることもできます。
1.読み込む件数を制限する
検索されたブログ記事のうち、一部だけを読み込むように、件数を制限することができます。
それには、MTSearchConditionsタグのブロックの中に、「MTSearchLimit」というテンプレートタグを入れます。
<$mt:SearchLimit limit="件数"$>
例えば、以下のようにブログ記事を検索して出力するとします。
- タイトルに「Movable Type」を含み、かつコメントがついているブログ記事を検索します。
- コメント数の多い順に並べ替え、上位5件を出力します。
この場合、MTSearchLimitタグで「limit="5"」を指定して、上位5件だけを読み込むようにします。テンプレートを組むと、以下のようになります。
<mt:SearchConditions> <$mt:SearchConditionLike field="title" values="Movable Type"$> <$mt:SearchConditionCompare field="comment_count" ge="1"$> <$mt:SearchSortOrder sort_by="comment_count" sort_order="descend"$> <$mt:SearchLimit limit="5"$> </mt:SearchConditions> <mt:IfNonZero tag="SearchLoadedEntryCount"> <ul> <mt:Entries> <li><$mt:EntryTitle$>(<$mt:EntryCommentCount$>)</li> </mt:Entries> </ul> </mt:IfNonZero>
2.先頭からx件をスキップして次のy件を読み込む
検索結果のうち、先頭のn件をスキップして、その次のy件を読み込むこともできます。
それには、MTSearchLimitタグと「MTSearchOffset」というタグを組み合わせます。
<$mt:SearchLimit limit="y"$> <$mt:SearchOffset offset="x"$>
例えば、1.のところで取り上げた例で、コメント数ランキングの11位~15位を読み込みたいとします。
この場合、10位まで(先頭の10件)をスキップして、次の5件を読み込めば良いです。
従って、以下のようにテンプレートを組みます。
<mt:SearchConditions> <$mt:SearchConditionLike field="title" values="Movable Type"$> <$mt:SearchConditionCompare field="comment_count" ge="1"$> <$mt:SearchSortOrder sort_by="comment_count" sort_order="descend"$> <$mt:SearchLimit limit="5"$> <$mt:SearchOffset offset="10"$> </mt:SearchConditions> <mt:IfNonZero tag="SearchLoadedEntryCount"> <ul> <mt:Entries> <li><$mt:EntryTitle$>(<$mt:EntryCommentCount$>)</li> </mt:Entries> </ul> </mt:IfNonZero>
3.SearchEntriesプラグイン関係の記事の一覧
SearchEntriesプラグイン関係のその他の記事は、以下のリンクから参照できます。
- ブログ記事詳細検索プラグイン(その1・概要/インストール/ライセンス)
- ブログ記事詳細検索プラグイン(その2・「ブログ記事のフィールドの値が○○に等しい」場合の検索)
- ブログ記事詳細検索プラグイン(その3・「ブログ記事のフィールドの値に○○を含む」場合の検索)
- ブログ記事詳細検索プラグイン(その4・「ブログ記事のフィールドの値が○○以上」等の場合の検索)
- ブログ記事詳細検索プラグイン(その5・ブログ記事のフィールドどうしでのOR検索)
- ブログ記事詳細検索プラグイン(その6・カテゴリのOR検索)
- ブログ記事詳細検索プラグイン(その7・カテゴリのAND検索)
- ブログ記事詳細検索プラグイン(その8・タグの検索)
- ブログ記事詳細検索プラグイン(その9・カスタムフィールドでの検索の基本)
- ブログ記事詳細検索プラグイン(その10・カスタムフィールドでの検索の応用)
- ブログ記事詳細検索プラグイン(その11・各種の検索条件の指定)
- ブログ記事詳細検索プラグイン(その12・ブログ記事の並べ替え)
- ブログ記事詳細検索プラグイン(その13・検索結果の一部を読み込む)
- ブログ記事詳細検索プラグイン(その14・複雑なOR検索)
- ブログ記事詳細検索プラグイン(その15・検索結果の件数の出力)
- ブログ記事詳細検索プラグイン(その16・検索フォーム作成の基本)
- ブログ記事詳細検索プラグイン(その17・検索結果表示テンプレート作成の基本)
- ブログ記事詳細検索プラグイン(その18・検索を動作させるための設定)
- ブログ記事詳細検索プラグイン(その19・検索フォーム/検索結果表示の事例・1つの数値で検索)
- ブログ記事詳細検索プラグイン(その20・検索フォーム/検索結果表示の事例・数値の範囲で検索)
- ブログ記事詳細検索プラグイン(その21・検索フォーム/検索結果表示の事例・数値の範囲をselectで選択)
- ブログ記事詳細検索プラグイン(その22・検索フォーム/検索結果表示の事例・日付で検索)
- ブログ記事詳細検索プラグイン(その23・検索フォーム/検索結果表示の事例・期間で検索)
- ブログ記事詳細検索プラグイン(その24・検索フォーム/検索結果表示の事例・カテゴリのOR検索)
- ブログ記事詳細検索プラグイン(その25・検索フォーム/検索結果表示の事例・カテゴリのAND検索)
- ブログ記事詳細検索プラグイン(その26・検索フォーム/検索結果表示の事例・タグのOR検索)
- ブログ記事詳細検索プラグイン(その27・検索フォーム/検索結果表示の事例・タグのAND検索)
- ブログ記事詳細検索プラグイン(その28・検索フォーム/検索結果表示の事例・ドロップダウン/ラジオボタンのカスタムフィールドの検索)
- ブログ記事詳細検索プラグイン(その29・検索結果のページ分割/静的な検索の場合)
- ブログ記事詳細検索プラグイン(その30・検索結果のページ分割/動的な検索の場合)
- ブログ記事詳細検索プラグイン(その31・検索結果のページ分割/PHPによるキャッシュ)
- SearchEntriesプラグインでMore Custom FieldsプラグインのCheckbox Groupを検索する(静的編)
- SearchEntries プラグインでMore Custom FieldsプラグインのCheckbox Groupを検索する(動的編)
- SearchEntriesプラグイン不具合修正