Jadual Kandungan
属性和方法到底是什么?
WP_Query 类的属性
Apakah sebenarnya sifat dan kaedah?
Atribut kelas WP_Query
WP_Query 类的方法
init()
parse_query( $query )
parse_query_vars()
get( $query_var )
设置( $query_var, $value )
&get_posts()
next_post()
the_post()
have_posts()
rewind_posts()
&query( $query )
get_queried_object()
get_queried_object_id()
今天总结
Kaedah kelas WP_Query
Tetapan ($query_var, $value)
Ringkasan hari ini
Rumah Tutorial CMS WordTekan Melancarkan Kuasa WP_Query: Meneroka Sifat dan Kaedah

Melancarkan Kuasa WP_Query: Meneroka Sifat dan Kaedah

Sep 04, 2023 am 08:05 AM

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

Selamat datang ke ansuran lain dalam siri Mastering WP_Query. Bagaimana keadaan kita setakat ini? Saya harap anda menikmati tutorial ini sama seperti kami menikmati menulisnya.

Dalam tutorial ini, anda akan mempelajari tentang sifat dan kaedah kelas WP_Query. Tetapi pertama, saya fikir adalah sesuai untuk membincangkan "sifat" dan "kaedah" dalam kelas. WP_Query 类的属性和方法。但首先,我认为讨论一下类中的“属性”和“方法”是合适的。

我们可以吗?

属性和方法到底是什么?

在 PHP 中,有一种更简洁的方式编写代码:面向对象编程,或 OOP。对于 OOP,我们使用“类”作为蓝图 — 我从 Code Tuts+ 的一篇经典帖子中获取了这个术语,Jason Lengstorf 的“面向对象的 PHP 初学者”:

例如,类就像房子的蓝图。它在纸上定义了房子的形状,清楚地定义和规划了房子不同部分之间的关​​系,即使房子并不存在。

(请记住 WP_Query 是 WordPress 核心的重要类。)

当您理解 PHP 类的概念时,“属性”和“方法”就会变得非常容易理解,因为这些词只是“变量”和“函数”的同义词。是的,属性是 PHP 类的变量,方法是 PHP 类的函数。

现在我们已经介绍了它们是什么,让我们来了解每个属性和方法。

警告:直接更改属性是不明智的。正如 Codex 所说,您应该使用 WP_Query 的方法与它们交互。

WP_Query 类的属性

让我们从 WP_Query 类的属性或变量开始。

查询字符串:$query

此属性存储传递给 $wp_query 对象的查询。

查询变量数组:$query_vars

此属性存储 $query 的变量(及其值)的关联数组。

查询对象:$queried_object

该属性存储当前查询的对象,如 $post 对象(如果是 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() 方法递增。

当前帖子:$post

这个属性存储当前的帖子。

条件标签布尔值:$is_{conditional}

Bolehkah kita?

Apakah sebenarnya sifat dan kaedah?

Dalam PHP, terdapat cara yang mudah untuk menulis kod: Pengaturcaraan Berorientasikan Objek, atau OOP. Untuk OOP, kami menggunakan "kelas" sebagai pelan tindakan — saya mendapat istilah ini daripada siaran klasik pada Code Tuts+, "PHP Berorientasikan Objek untuk Pemula" oleh Jason Lengstorf: 🎜
🎜Sebagai contoh, kelas adalah seperti cetak biru rumah. Ia mentakrifkan bentuk rumah di atas kertas, dengan jelas mentakrifkan dan merancang hubungan antara bahagian-bahagian rumah yang berlainan, walaupun rumah itu tidak wujud. 🎜
🎜 (Ingat bahawa WP_Query ialah kelas penting dalam teras WordPress.) 🎜 🎜Apabila anda memahami konsep kelas PHP, "sifat" dan "kaedah" menjadi sangat mudah untuk difahami kerana perkataan ini hanyalah sinonim untuk "pembolehubah" dan "fungsi". Ya, properties ialah pembolehubah kelas PHP dan kaedah ialah fungsi kelas PHP. 🎜 🎜Sekarang kita telah membincangkan apa itu, mari belajar tentang setiap sifat dan kaedah. 🎜 🎜Amaran: Adalah tidak bijak untuk menukar sifat secara langsung. Seperti yang dikatakan Codex, anda harus menggunakan kaedah WP_Query untuk berinteraksi dengan mereka. 🎜

Atribut kelas WP_Query

🎜Mari mulakan dengan sifat atau pembolehubah kelas WP_Query. 🎜

Rentetan pertanyaan: $query 🎜 🎜Harta ini menyimpan pertanyaan yang dihantar ke objek $wp_query. 🎜

Tatasusunan pembolehubah pertanyaan: $query_vars 🎜 🎜Harta ini menyimpan tatasusunan bersekutu pembolehubah $query (dan nilainya). 🎜

Objek pertanyaan: $queried_object 🎜 🎜Atribut ini menyimpan objek pertanyaan semasa, seperti objek $post (jika ia pertanyaan post) atau objek $author (jika ia adalah pengarang pertanyaan). 🎜

ID objek pertanyaan: $queried_object_id 🎜 🎜Atribut ini menyimpan ID objek pertanyaan. 🎜

Soal catatan yang dikembalikan: $posts 🎜 🎜Harta ini menyimpan siaran yang dikembalikan daripada pertanyaan. 🎜

Bilangan siaran yang dipaparkan: $post_count 🎜 🎜Atribut ini menyimpan bilangan siaran yang sedang ditanya. 🎜

Soal bilangan siaran yang dikembalikan: $found_posts 🎜 🎜Harta ini menyimpan bilangan catatan dalam pertanyaan SQL yang tidak mengandungi klausa LIMIT. 🎜

Bilangan halaman: $max_num_pages 🎜 🎜Harta ini menyimpan bilangan halaman - dikira dengan membahagikan $found_posts dengan $posts_per_page. 🎜

Indeks siaran semasa: $current_post 🎜 🎜Atribut ini menyimpan nombor indeks item semasa dalam gelung. Sebagai contoh, jika gelung baru sahaja bermula, ia adalah -1 dan ditambah melalui kaedah next_post(). 🎜

Siaran semasa: $post 🎜 🎜Atribut ini menyimpan siaran semasa. 🎜

Nilai Boolean teg bersyarat: $is_{conditional} 🎜 🎜Sifat berikut disimpan sebagai nilai Boolean dan memberikan maklumat tentang status siaran semasa: 🎜
  • $is_single: Menyemak sama ada ia adalah satu siaran untuk sebarang jenis siaran (kecuali jenis siaran "lampiran" dan "halaman").
  • $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:检查是否是 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 类的方法(函数)。

init()

此方法只是初始化对象,将所有属性设置为 NULL0FALSE

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 中的下一篇文章,返回当前的文章对象。 (此方法必须在循环内使用才能正常工作。)

the_post()

此方法使用下一篇文章的数据设置全局 $post 变量。 (此方法必须在循环内使用才能正常工作。)

have_posts()

此方法检查是否还有任何帖子需要处理,如果没有,则返回 FALSE。 (此方法必须在循环之前使用才能正常工作。)

rewind_posts()

此方法只是重置 $current_post$post 属性。

&query( $query )

该方法调用它的两个同级方法:parse_query()get_posts(),并返回 get_posts() 的结果。

get_queried_object()

该方法返回查询的对象。 (如果尚未设置,则设置 $queried_object。)

get_queried_object_id()

此方法与上面的方法类似,返回查询对象的 ID ($queried_object_id)。

快速提示:如果方法之前有一个 & 符号,则表示该方法通过引用返回。

今天总结

我希望我能够让您清楚“属性”和“方法”对于类的含义。如果您理解 WP_Query $is_page: Semak sama ada ia adalah halaman.

$is_archive: Semak sama ada ia adalah halaman arkib.

$is_preview: Semak sama ada ia adalah pratonton siaran.

$is_date: Semak sama ada ia adalah halaman arkib berdasarkan tarikh.

$is_year: Semak sama ada ia adalah halaman arkib berdasarkan tahun.

$is_month: Semak sama ada ia adalah halaman arkib berasaskan bulan.
$is_time: Menyemak sama ada halaman diarkibkan berdasarkan masa (setiap jam, minit atau kedua). $is_author: Semak sama ada ia adalah halaman arkib pengarang. $is_category: Semak sama ada ia adalah halaman arkib kategori. $is_tag: Semak sama ada ia adalah halaman arkib teg. $is_tax: Semak sama ada ia adalah halaman arkib kategori. 🎜 $is_search: Semak sama ada ia adalah halaman "hasil carian". 🎜 $is_feed: Semak sama ada ia suapan. 🎜 $is_comment_feed: Semak sama ada ia suapan ulasan. 🎜 $is_trackback: Semak sama ada ia adalah rujukan. 🎜 $is_home: Semak sama ada ia adalah halaman utama blog. 🎜 $is_404: Semak sama ada ia adalah halaman ralat 404. 🎜 $is_comments_popup: Semak sama ada ia adalah tetingkap timbul ulasan. 🎜 $is_admin: Semak sama ada ia adalah panel pentadbir. 🎜 $is_attachment: Semak sama ada ia adalah lampiran. 🎜 $is_singular: Menyemak sama ada ia adalah satu siaran daripada sebarang jenis siaran (termasuk jenis siaran "lampiran" dan "halaman"). 🎜 $is_robots: Semak sama ada ia adalah pertanyaan kepada fail robots.txt. 🎜 $is_posts_page: Menyemak sama ada ia adalah "halaman catatan" (ditetapkan pada halaman "Tetapan Membaca" panel pentadbir). 🎜 $is_paged: Semak sama ada ia adalah pertanyaan paging dan bukan halaman utama.

Kaedah kelas WP_Query

🎜Sekarang kita selesai dengan sifat, mari kita beralih kepada kaedah (fungsi) kelas WP_Query. 🎜

init()

🎜Kaedah ini hanya memulakan objek, menetapkan semua sifat kepada NULL, 0 atau FALSE. 🎜

parse_query( $query )

🎜Kaedah ini menggunakan atribut $query untuk menghuraikan pertanyaan dan mengisi semua atribut lain (kecuali $posts, $post_count, $ pos dan <code>$current_post). 🎜

parse_query_vars()

🎜Kaedah ini menghuraikan semula pembolehubah pertanyaan. 🎜

get( $query_var )

🎜Kaedah ini mendapat pembolehubah pertanyaan yang diberikan. 🎜

Tetapan ($query_var, $value)

🎜Kaedah ini menetapkan pembolehubah pertanyaan yang diberikan kepada nilai tertentu. 🎜

&get_posts()

🎜Kaedah ini mengembalikan siaran yang diminta oleh pertanyaan dan mengisi atribut $posts dan $post_count. 🎜

next_post()

🎜Kaedah ini menambah indeks $current_post dan memajukan ke siaran seterusnya dalam $posts, mengembalikan objek catatan semasa. (Kaedah ini mesti digunakan di dalam gelung untuk berfungsi dengan baik.) 🎜

the_post()

🎜Kaedah ini menetapkan pembolehubah global $post dengan data dari siaran seterusnya. (Kaedah ini mesti digunakan di dalam gelung untuk berfungsi dengan baik.) 🎜

have_posts()

🎜Kaedah ini menyemak sama ada masih ada siaran yang perlu diproses dan jika tidak, mengembalikan PALSU. (Kaedah ini mesti digunakan sebelum gelung berfungsi dengan baik.) 🎜

rewind_posts()

🎜Kaedah ini hanya menetapkan semula atribut $current_post dan $post. 🎜

&query( $query )

🎜Kaedah ini memanggil dua kaedah saudaranya: parse_query() dan get_posts(), dan mengembalikan hasil get_posts(). 🎜

get_queried_object()

🎜Kaedah ini mengembalikan objek yang ditanya. (Tetapkan $queried_object jika belum ditetapkan.) 🎜

get_queried_object_id()

🎜Kaedah ini serupa dengan kaedah di atas dan mengembalikan ID objek pertanyaan ($queried_object_id). 🎜 🎜Petua Pantas: Jika sesuatu kaedah didahului oleh simbol &, ia bermakna kaedah itu kembali melalui rujukan. 🎜

Ringkasan hari ini

🎜Saya harap saya dapat menjelaskan kepada anda apa yang dimaksudkan dengan "sifat" dan "kaedah" untuk kelas. Jika anda memahami tujuan sifat dan kaedah kelas WP_Query, saya boleh katakan saya telah melakukan kerja yang baik! 🎜 🎜Adakah anda mempunyai apa-apa untuk ditambahkan pada artikel ini? Kongsi pendapat anda dengan kami di bahagian komen di bawah. Jika anda menyukai artikel ini, jangan lupa untuk berkongsi dengan rakan anda. 🎜 🎜Jumpa anda di bahagian seterusnya siri ini! 🎜 🎜🎜🎜🎜🎜

Atas ialah kandungan terperinci Melancarkan Kuasa WP_Query: Meneroka Sifat dan Kaedah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Adakah WordPress mudah untuk pemula? Adakah WordPress mudah untuk pemula? Apr 03, 2025 am 12:02 AM

WordPress mudah untuk pemula bermula. 1. Selepas log masuk ke latar belakang, antara muka pengguna adalah intuitif dan papan pemuka mudah menyediakan semua pautan fungsi yang diperlukan. 2. Operasi asas termasuk mencipta dan mengedit kandungan. Editor WYSIWYG memudahkan penciptaan kandungan. 3. Pemula boleh mengembangkan fungsi laman web melalui pemalam dan tema, dan lengkung pembelajaran wujud tetapi boleh dikuasai melalui amalan.

Cara Memulakan Blog WordPress: Panduan Langkah demi Langkah untuk Pemula Cara Memulakan Blog WordPress: Panduan Langkah demi Langkah untuk Pemula Apr 17, 2025 am 08:25 AM

Blog adalah platform yang ideal untuk orang ramai untuk menyatakan pendapat, pendapat dan pendapat mereka dalam talian. Ramai pemula bersemangat untuk membina laman web mereka sendiri tetapi teragak -agak untuk bimbang tentang halangan teknikal atau isu kos. Walau bagaimanapun, apabila platform terus berkembang untuk memenuhi keupayaan dan keperluan pemula, kini mula menjadi lebih mudah dari sebelumnya. Artikel ini akan membimbing anda langkah demi langkah bagaimana untuk membina blog WordPress, dari pemilihan tema untuk menggunakan plugin untuk meningkatkan keselamatan dan prestasi, membantu anda membuat laman web anda dengan mudah. Pilih topik dan arah blog Sebelum membeli nama domain atau mendaftarkan tuan rumah, sebaiknya mengenal pasti topik yang anda rancangkan. Laman web peribadi boleh berputar di sekitar perjalanan, memasak, ulasan produk, muzik atau hobi yang mencetuskan minat anda. Memfokuskan pada bidang yang anda benar -benar berminat dapat menggalakkan penulisan berterusan

Apa yang baik untuk WordPress? Apa yang baik untuk WordPress? Apr 07, 2025 am 12:06 AM

WordpressisgoodforvirtualyWebprojectduetoitsversatilityasacms.itexcelsin: 1) keramahan pengguna, membolehkan mudah

Bolehkah saya belajar WordPress dalam 3 hari? Bolehkah saya belajar WordPress dalam 3 hari? Apr 09, 2025 am 12:16 AM

Boleh belajar WordPress dalam masa tiga hari. 1. Menguasai pengetahuan asas, seperti tema, pemalam, dan lain-lain. 2. Memahami fungsi teras, termasuk prinsip pemasangan dan kerja. 3. Belajar penggunaan asas dan lanjutan melalui contoh. 4. Memahami teknik debugging dan cadangan pengoptimuman prestasi.

Cara mendapatkan log masuk maklumat pengguna di WordPress untuk hasil yang diperibadikan Cara mendapatkan log masuk maklumat pengguna di WordPress untuk hasil yang diperibadikan Apr 19, 2025 pm 11:57 PM

Baru -baru ini, kami menunjukkan kepada anda bagaimana untuk mencipta pengalaman peribadi untuk pengguna dengan membenarkan pengguna menyimpan jawatan kegemaran mereka di perpustakaan yang diperibadikan. Anda boleh mengambil hasil yang diperibadikan ke tahap yang lain dengan menggunakan nama mereka di beberapa tempat (iaitu, skrin selamat datang). Nasib baik, WordPress menjadikannya sangat mudah untuk mendapatkan maklumat mengenai pengguna log masuk. Dalam artikel ini, kami akan menunjukkan kepada anda bagaimana untuk mendapatkan maklumat yang berkaitan dengan pengguna yang sedang dilog masuk. Kami akan menggunakan get_currentuserInfo ();  fungsi. Ini boleh digunakan di mana sahaja dalam tema (header, footer, sidebar, template halaman, dll.). Agar ia berfungsi, pengguna mesti dilog masuk. Oleh itu, kita perlu menggunakan

Sekiranya saya menggunakan Wix atau WordPress? Sekiranya saya menggunakan Wix atau WordPress? Apr 06, 2025 am 12:11 AM

Wix sesuai untuk pengguna yang tidak mempunyai pengalaman pengaturcaraan, dan WordPress sesuai untuk pengguna yang mahukan lebih banyak keupayaan kawalan dan pengembangan. 1) Wix menyediakan editor drag-and-drop dan templat yang kaya, menjadikannya mudah untuk membina sebuah laman web dengan cepat. 2) Sebagai CMS sumber terbuka, WordPress mempunyai ekosistem komuniti dan plug-in yang besar, menyokong penyesuaian dan pengembangan yang mendalam.

Cara memaparkan kategori kanak -kanak di halaman arkib kategori induk Cara memaparkan kategori kanak -kanak di halaman arkib kategori induk Apr 19, 2025 pm 11:54 PM

Adakah anda ingin tahu cara memaparkan kategori kanak -kanak di halaman arkib kategori induk? Apabila anda menyesuaikan halaman arkib klasifikasi, anda mungkin perlu melakukan ini untuk menjadikannya lebih berguna kepada pelawat anda. Dalam artikel ini, kami akan menunjukkan kepada anda bagaimana untuk memaparkan kategori kanak -kanak dengan mudah di halaman arkib kategori induk. Mengapa subkategori muncul di halaman arkib kategori induk? Dengan memaparkan semua kategori kanak -kanak di halaman arkib kategori induk, anda boleh menjadikannya kurang generik dan lebih berguna kepada pelawat. Sebagai contoh, jika anda menjalankan blog WordPress mengenai buku dan mempunyai taksonomi yang disebut "tema", anda boleh menambah sub-taksonomi seperti "novel", "bukan fiksyen" supaya pembaca anda dapat

Cara memaparkan kiraan pertanyaan dan masa pemuatan halaman di WordPress Cara memaparkan kiraan pertanyaan dan masa pemuatan halaman di WordPress Apr 19, 2025 pm 11:51 PM

Salah satu pengguna kami meminta laman web lain bagaimana untuk memaparkan bilangan pertanyaan dan masa pemuatan halaman di footer. Anda sering melihat ini di kaki laman web anda, dan ia mungkin memaparkan sesuatu seperti: "64 pertanyaan dalam 1.248 saat". Dalam artikel ini, kami akan menunjukkan kepada anda bagaimana untuk memaparkan bilangan pertanyaan dan masa pemuatan halaman di WordPress. Cukup tampal kod berikut di mana sahaja yang anda suka dalam fail tema (mis. Footer.php). pertanyaan

See all articles