wordpress_PHP チュートリアルの強力な query_posts() 関数
今日はWordPressのメインクエリ関数であるquery_posts()についてお話します。この関数は私が作成しているテーマで何度も使用しているためです。
query_posts() クエリ関数は、WordPress のメイン ループ (ループ) に表示される投稿を決定します。このため、query_posts 関数は、ページ上に二次ループを生成するのではなく、ホームページ ループ (ループ) を変更するためにのみ使用されます。メイン ループの外側に追加のループを生成する場合は、新しい独立した WP_Query オブジェクトを作成し、これらのオブジェクトを使用してループを生成する必要があります。メイン ループの外側のループで query_posts を使用すると、メイン ループが偏って実行され、ページ上に表示したくないコンテンツが表示される可能性があります。
query_posts() クエリ関数は多数のパラメーターを受け取り、その形式は URL のパラメーター形式と同じです (たとえば、p=4 は ID 4 の記事を意味します)。ここでは、query_posts 関数の一般的に使用される構文形式の例をいくつか示します。
1. ブログのトップページから特定のカテゴリーを除外します
次のコードをindex.php ファイルに追加して、ホームページに表示される記事がカテゴリ 3 以外のどのカテゴリからでも表示されるようにします。
PHPコード
- if (is_home()) {
- Query_posts("cat=-3"); }
- ?>
-
PHPコード

-
if (is_home()) {
- Query_posts("cat=-1,-2,-3");
- }
- ?>
- 2. 指定した記事をクエリします
指定した記事を取得するには、次のステートメントを使用します:
PHPコード

-
//ID 値 5 のページを取得します
- query_posts('p=5');
- グローバル $more
- //$more を初期化します
- $more = 0;
- // クエリ結果をループします
- while (have_posts()) : the_post();
- the_content('投稿全文を読みますか?'); ついでに
- ?>
-
- 3. 指定したページを取得します
- 指定されたページを取得するには、次のステートメントを使用します: PHPコード
query_posts('page_id=7'); // ページ ID 7 のページを取得します
?>

-
- または PHPコード
?>

-
サブページを取得するときは、サブページとその親ページのエイリアスをスラッシュで区切って指定する必要があります。例:
- PHPコード
- query_posts('ページ名=親/子');

- PHPコード
- query_posts(array(
- '猫' => 22、
- '年' => 現在の年、
- 'monthnum' => $current_month,
- '順序' => 'ASC'、 ;
- ));

以下に、よく使用されるパラメータをいくつか示します。私が使用したこともあれば、使用していないものもあります。
分類パラメータ
特定のカテゴリの記事のみを表示します。
-
猫 - カテゴリ ID を使用する必要があります
- カテゴリ名
- category_and - カテゴリ ID を使用する必要があります
- category_in - カテゴリ ID を使用する必要があります
- category_not_in - カテゴリ ID を使用する必要があります
IDに基づいて単一のカテゴリを表示
特定のカテゴリ ID (およびこのカテゴリの下のサブカテゴリ) の記事のみを表示します:PHPコード

-
query_posts('cat=4');
-
特定のカテゴリ名の記事のみを表示します:
PHPコード

-
- IDに基づいて複数のカテゴリを表示
指定された複数のカテゴリ ID の記事を表示します: PHPコード
query_posts('cat=2,6,17,38');

- 特定のカテゴリの記事を除外します
特定のカテゴリの記事を除くすべての記事を表示します。除外されたカテゴリ ID には先頭にマイナス記号 ('-') が付けられます。 PHPコード
query_posts('cat=-3');

複数のカテゴリを処理します
複数のカテゴリに属する記事を表示します。次のコードは、カテゴリ 2 とカテゴリ 6 の両方に属する記事を表示できます:
PHPコード
query_posts(array('category__and' => array(2,6)));
カテゴリ 2 またはカテゴリ 6 の記事を表示したい場合は、上で紹介した cat を使用するか、category_in 関数を使用できます (カテゴリの下のサブカテゴリの記事はここには表示されないことに注意してください):
- query_posts(array('category__in' => array(2,6)));
次の方法で複数のカテゴリの記事を除外できます:
PHPコード
- query_posts(array('category__not_in' => array(2,6)));
特定のタグの下にある記事を表示します。

- tag ——タグIDを使用する必要があります
tag_and —— タグIDを使用する必要があります
tag_in - タグIDを使用する必要があります
- tag_not_in - タグIDを使用する必要があります
- tag_slug_and - タグIDを使用する必要があります
- tag_slug_in - タグIDを使用する必要があります
- 特定のタグの記事を取得します
- PHPコード
query_posts('タグ=料理');
複数のタグのいずれかで記事を取得します
PHPコード
- query_posts('タグ=パン+パン作り+レシピ');
複数のタグ
ID 37 と 47 のタグに属する記事を表示します:PHPコード

-
query_posts(array('tag__and' => array(37,47));
-
PHPコード

-
query_posts(array('tag__in' => array(37,47));
-
PHPコード

-
query_posts(array('tag__not_in' => array(37,47));
-
作成者のパラメータ
著者に基づいて記事を選択することもできます。
-
著者=3
- author=-3 ——ID 3 の著者によって公開された記事を除外します
- author_name=ハリエット
ID 1 の著者によって公開されたすべてのページを表示し、ページをタイトル順に配置し、ページ リストの上に固定された記事がないようにします:
PHPコード

-
query_posts('caller_get_posts=1&author=1&post_type=page&post_status=publish&orderby=title&order=ASC');
- 記事とページのパラメータ
単一の記事またはページを取得します。
‘p’ => 27 - 記事 ID で記事を表示します
- 「name」 => 「about-my-life」 —— 特定の記事に対するクエリ、クエリには記事のエイリアスが含まれています
- ‘page_id’ => 7 —— ID 7 のページをクエリします
- 「pagename」 => 「about」 —— これはページのタイトルではなく、ページのパスであることに注意してください
- 「posts_per_page」 => 1 を使用します。3 つの記事を表示するには、「posts_per_page」 => 3 を使用します。すべての投稿を表示するには、'posts_per_page' => -1 を使用します
- 「showposts」 => 1 – 3 つの投稿を表示するには、「showposts」 => 3 を使用します。すべての投稿を表示するには、「showposts」 => -1 を使用します。廃止されました。
- ‘post__in’ => array(5,12,2,14,7) ——取得したい記事IDを指定します
- ‘post__not_in’ => array(6,2,8) ——取得したくない記事IDを除外します
- ‘post_type’ => ‘page’ ——ページを返します。デフォルト値は投稿です。使用可能な値には、any、添付ファイル、ページ、投稿、またはリビジョンが含まれます。 any は、リビジョンを除くすべてのページ タイプを取得します。
- 「post_status」 => 「publish」 – 公開されたページを返します。利用可能な値には、保留中、ドラフト、将来、プライベート、ゴミ箱も含まれます。継承の詳細については、「get_children」を参照してください。ゴミ箱ステータスはWordPress 2.9で追加されました。
- ‘post_parent’ => 93 - ページ 93 のサブページを返します。
固定記事パラメータ
固定記事機能は WordPress 2.7 で導入されました。クエリでは、記事が
caller_get_posts=1パラメーターによって除外されていない限り、「トップ」として設定された記事が他の記事よりも前に表示されます。
array('post__in'=>get_option('sticky_posts')) —— すべてのスティッキー投稿の配列を返します- caller_get_posts=1 - 返された記事の上にあるピン留めされた記事を除外しますが、投稿リストを返すときに、ピン留めされた記事を自然な順序でリストに配置します。
最初の固定記事に戻る
PHPコード
$sticky = get_option('sticky_posts');
特定のカテゴリにあるすべての記事を返しますが、記事リストの上に固定された記事は表示されません。 「固定」に設定した記事はすべて通常の順番(日付順など)で表示されます
特定のカテゴリのすべての記事に戻り、固定された記事をまったく表示せず、ページネーションを保持します
$sticky=get_option('sticky_posts');
$args=array(
12月20日公開の記事に戻る
PHPコード
PHPコード
以下に、最新の投稿に続く 5 つの投稿を示します:
order=ASC - 最低値から最高値への昇順
メタキー=
query_posts('meta_key=color');
PHPコード
PHPコード
http://www.bkjia.com/PHPjc/735067.html www.bkjia.com true
PHPコード
$args = array(
'posts_per_page' => 1,
query_posts(array("post__not_in" =>get_option("sticky_posts")));
PHPコード
$paged = (get_query_var('paged')) get_query_var('paged') : 1;
「caller_get_posts」=>1、
day= – 月の日 (日、-範囲は 1 から 31)
monthnum= – 月番号 (月、-範囲は 1 ~ 12)
query_posts(monthnum=12&day=20' );
2009 年 3 月 1 日から 3 月 15 日までに公開された記事に戻る
関数 filter_where($where = '') {
paged=2 - 「古い投稿」リンクをクリックした後の 2 ページ目に表示される記事を表示します
オフセットパラメータ
通常の状況では、offset パラメータを使用して、クエリ セット内の 1 つ以上の最初のアーティクルを削除または無視できます。
query_posts('posts_per_page=5&offset=1');
orderby=著者
orderby=日付
注文パラメータ
昇順または降順で並べ替えるかを決定しますパラメータを並べ替えます
order=DESC - 最高値から最低値への降順
カスタムフィールドパラメータ
カスタムのキーワードまたは値に基づいて記事 (またはページ) を取得します。
メタ値=
カスタム フィールドの値に関係なく、カスタム フィールドのキーワード「color」を含む記事を返します:
キーワードに関係なく、カスタムフィールド値「color」を持つ記事を返します:
PHPコード
query_posts('metavalue=color');
PHPコード
カスタム キーワードが「color」で、カスタム フィールド値が「blue」ではない記事とページを返します:
query_posts('post_type=any&meta_key=color&meta_compare=!=&metavalue=blue');
リーリー
関節パラメータ
上記の例からわかるように、& 記号を使用して次のようなさまざまなパラメーターを接続できます。
PHPコード
uery_posts('cat=3&year=2004');
query_posts($query_string . '&cat=13&monthnum=' . date('n',current_time('timestamp')));
query_posts(array('category__and'=>array(1,3),'posts_per_page'=>2,'orderby'=>title,'order'=>DESC));
しかし、バグのため、コードは正常な結果を表示できませんでした。解決策はあります: + 記号を使用して複数のタグを検索します:
query_posts('cat=1&tag=リンゴ+リンゴ');
使用上のヒント

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP と Flutter は、モバイル開発でよく使われるテクノロジです。 Flutter は、クロスプラットフォーム機能、パフォーマンス、ユーザー インターフェイスに優れており、高パフォーマンス、クロスプラットフォーム、カスタマイズされた UI を必要とするアプリケーションに適しています。 PHP は、クロスプラットフォームではなく、パフォーマンスが低いサーバー側アプリケーションに適しています。

Go 言語は、クロージャとリフレクションという 2 つの動的関数作成テクノロジを提供します。クロージャを使用すると、クロージャ スコープ内の変数にアクセスでき、リフレクションでは FuncOf 関数を使用して新しい関数を作成できます。これらのテクノロジーは、HTTP ルーターのカスタマイズ、高度にカスタマイズ可能なシステムの実装、プラグイン可能なコンポーネントの構築に役立ちます。

C++ 関数の名前付けでは、読みやすさを向上させ、エラーを減らし、リファクタリングを容易にするために、パラメーターの順序を考慮することが重要です。一般的なパラメータの順序規則には、アクション-オブジェクト、オブジェクト-アクション、意味論的な意味、および標準ライブラリへの準拠が含まれます。最適な順序は、関数の目的、パラメーターの種類、潜在的な混乱、および言語規約によって異なります。

効率的で保守しやすい Java 関数を作成するための鍵は、シンプルに保つことです。意味のある名前を付けてください。特殊な状況に対処します。適切な可視性を使用してください。

1. SUM 関数は、列またはセルのグループ内の数値を合計するために使用されます (例: =SUM(A1:J10))。 2. AVERAGE 関数は、列またはセルのグループ内の数値の平均を計算するために使用されます (例: =AVERAGE(A1:A10))。 3. COUNT 関数。列またはセルのグループ内の数値またはテキストの数をカウントするために使用されます。例: =COUNT(A1:A10)。 4. IF 関数。指定された条件に基づいて論理的な判断を行い、結果を返すために使用されます。対応する結果。

C++ の例外処理は、特定のエラー メッセージ、コンテキスト情報を提供し、エラーの種類に基づいてカスタム アクションを実行するカスタム例外クラスを通じて強化できます。 std::Exception から継承した例外クラスを定義して、特定のエラー情報を提供します。カスタム例外をスローするには、throw キーワードを使用します。 try-catch ブロックでdynamic_castを使用して、キャッチされた例外をカスタム例外タイプに変換します。実際の場合、open_file 関数は FileNotFoundException 例外をスローします。例外をキャッチして処理すると、より具体的なエラー メッセージが表示されます。

Redis は、高性能のキー/値キャッシュです。 PHPRedis 拡張機能は、Redis サーバーと対話するための API を提供します。 Redis に接続し、データを保存および取得するには、次の手順を使用します。 接続: Redis クラスを使用してサーバーに接続します。ストレージ: set メソッドを使用してキーと値のペアを設定します。取得: get メソッドを使用してキーの値を取得します。

Go の関数にマップを渡すと、デフォルトでコピーが作成され、コピーへの変更は元のマップには影響しません。元のマップを変更する必要がある場合は、ポインタを介してそれを渡すことができます。空のマップは技術的には nil ポインターであり、空ではないマップを期待する関数に空のマップを渡すとエラーが発生するため、空のマップは慎重に扱う必要があります。
