ホームページ  >  記事  >  CMS チュートリアル  >  WP_Query の力を解き放つ: プロパティとメソッドを探索する

WP_Query の力を解き放つ: プロパティとメソッドを探索する

王林
王林オリジナル
2023-09-04 08:05:06655ブラウズ

释放 WP_Query 的力量:探索属性和方法

「Mastering WP_Query」シリーズの別の記事へようこそ。これまでのところどうですか?私たちが記事を書いて楽しかったのと同じくらい、皆さんもこれらのチュートリアルを楽しんでいただければ幸いです。

このチュートリアルでは、WP_Query クラスのプロパティとメソッドについて学習します。しかし、その前に、授業で「性質」と「方法」について議論するのが適切だと考えました。

###していい?

プロパティとメソッドとは正確には何ですか?

PHP には、コードを記述するための

より簡単な 方法、つまりオブジェクト指向プログラミング (OOP) があります。 OOP では、「クラス」をブループリントとして使用します。この用語は、Code Tuts の classic 投稿、Jason Lengstorf による「初心者のためのオブジェクト指向 PHP」から得ました。

たとえば、クラスは
家の設計図

のようなものです。紙の上で家の形状を定義し、家が存在しない場合でも、家のさまざまな部分間の関係を明確に定義して計画します。

(
WP_Query

は WordPress の中核にある重要なクラスであることを思い出してください。) PHP クラスの概念を理解すると、「プロパティ」と「メソッド」は「変数」と「関数」の同義語であるため、非常に理解しやすくなります。はい、

Attributes

は PHP クラスの変数であり、Methods は PHP クラスの関数です。 これらが何であるかを説明したので、それぞれのプロパティとメソッドについて学びましょう。

警告:

プロパティを直接変更するのは賢明ではありません。 Codex に記載されているように、これらと対話するには WP_Query のメソッドを使用する必要があります。 WP_Query クラスの属性

WP_Query

クラスのプロパティまたは変数から始めましょう。 クエリ文字列:

$クエリ

このプロパティは、

$wp_query

オブジェクトに渡されるクエリを保存します。 クエリ変数配列:

$query_vars

このプロパティには、

$query

の変数 (およびその値) の連想配列が保存されます。 クエリ オブジェクト:

$queried_object

この属性には、

$post

オブジェクト (投稿クエリの場合) または $author オブジェクト (作成者の場合) など、現在のクエリのオブジェクトが格納されます。クエリ)。 クエリ オブジェクト ID:

$queried_object_id

この属性には、クエリ オブジェクトの ID が格納されます。

クエリで返された投稿:

$posts

このプロパティは、クエリから返された投稿を保存します。

表示される投稿数:

$post_count

この属性には、現在クエリされている投稿の数が保存されます。

クエリによって返された投稿の数:

$found_posts

このプロパティには、SQL クエリ内の

LIMIT

句を含まないポストの数が保存されます。 ページ数:

$max_num_pages

このプロパティには、

$found_posts

$posts_per_page で割ることによって計算されたページ数が保存されます。 現在の投稿のインデックス:

$current_post

この属性には、ループ内の現在の項目のインデックス番号が格納されます。たとえば、ループが開始したばかりの場合、その値は

-1

であり、next_post() メソッドによってインクリメントされます。 現在の投稿:

$投稿

この属性は現在の投稿を保存します。

条件ラベルのブール値:

$is_{conditional}

次のプロパティはブール値として保存され、現在の投稿ステータスに関する情報を提供します:

  • $is_single: 任意の投稿タイプ (「添付ファイル」と「ページ」投稿タイプを除く) の単一の投稿であるかどうかを確認します。
  • $is_page: ページであるかどうかを確認します。
  • $is_archive: アーカイブ ページかどうかを確認します。
  • $is_preview: ポストプレビューかどうかを確認します。
  • $is_date: 日付に基づいてアーカイブ ページであるかどうかを確認します。
  • $is_year: 年に基づいてアーカイブ ページであるかどうかを確認します。
  • $is_month: 月ベースのアーカイブ ページであるかどうかを確認します。
  • $is_time: これが時間 (時間、分、または秒) に基づいてアーカイブされたページであるかどうかを確認します。
  • $is_author: 著者のアーカイブ ページであるかどうかを確認します。
  • $is_category: カテゴリ アーカイブ ページかどうかを確認します。
  • $is_tag: タグ アーカイブ ページかどうかを確認します。
  • $is_tax: 機密アーカイブ ページかどうかを確認します。
  • $is_search: 「検索結果」ページかどうかを確認します。
  • $is_feed: フィードかどうかを確認します。
  • $is_comment_feed: コメント フィードかどうかを確認します。
  • $is_trackback: 参照であるかどうかを確認します。
  • $is_home: メインのブログ ページであるかどうかを確認します。
  • $is_404: 404 エラー ページかどうかを確認します。
  • $is_comments_popup: コメント ポップアップ ウィンドウかどうかを確認します。
  • $is_admin: 管理パネルであるかどうかを確認します。
  • $is_attachment: 添付ファイルであるかどうかを確認します。
  • $is_singular: 任意の投稿タイプ (「添付ファイル」および「ページ」投稿タイプを含む) の単一の投稿であるかどうかを確認します。
  • $is_robots: robots.txt ファイルに対するクエリであるかどうかを確認します。
  • $is_posts_page: 「投稿ページ」(管理パネルの「閲覧設定」ページで設定)かどうかを確認します。
  • $is_paged: それがホームページではなくページング クエリであるかどうかを確認します。

WP_Queryクラスのメソッド

プロパティの作成は完了したので、WP_Query クラスのメソッド (関数) に進みましょう。

######初期化()######

このメソッドは単にオブジェクトを初期化し、すべてのプロパティを NULL

0

、または FALSE に設定します。 parse_query( $query )

このメソッドは、$query 属性を使用してクエリを解析し、他のすべての属性 (

$posts

$post_count$post を除く) を設定します。 および $current_post)。 parse_query_vars()

このメソッドはクエリ変数を再解析します。

get( $query_var )

このメソッドは、指定されたクエリ変数を取得します。

設定 ($query_var、$value)

このメソッドは、指定されたクエリ変数を特定の値に設定します。

&get_posts()

このメソッドは、クエリによって要求された投稿を返し、$posts プロパティと

$post_count

プロパティを設定します。 next_post()

このメソッドは、$current_post インデックスをインクリメントし、

$posts

内の次の投稿に進み、現在の投稿オブジェクトを返します。 (このメソッドが正しく動作するには、ループ内で使用する必要があります。) ######ポスト()###### このメソッドは、グローバル $post 変数を次の投稿のデータで設定します。 (このメソッドが正しく動作するには、ループ内で使用する必要があります。)

have_posts()

このメソッドは、処理すべき投稿が残っているかどうかを確認し、残っていない場合は FALSE を返します。 (正しく動作させるには、このメソッドをループの前に使用する必要があります。)

rewind_posts()

このメソッドは、$current_post プロパティと

$post

プロパティをリセットするだけです。

&クエリ( $クエリ )

このメソッドは、2 つの兄弟メソッド parse_query()

get_posts()

を呼び出し、get_posts() の結果を返します。

get_queried_object() このメソッドはクエリ オブジェクトを返します。 (まだ設定されていない場合は $queried_object を設定します。)

get_queried_object_id()

このメソッドは上記のメソッドと似ており、クエリ オブジェクトの ID ($queried_object_id) を返します。

クイックヒント: メソッドの前に & 記号がある場合、それはメソッドが参照によって返されることを意味します。

今日のまとめ クラスにとって「プロパティ」と「メソッド」が何を意味するのかを明確にできたと思います。

WP_Query

クラスのプロパティとメソッドの目的を理解していれば、良い仕事をしたと言えます。 この記事に何か追加することはありますか?以下のコメントセクションでご意見をお聞かせください。この記事が気に入ったら、ぜひお友達と共有してください。

このシリーズの次のパートでお会いしましょう!

以上がWP_Query の力を解き放つ: プロパティとメソッドを探索するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。