مارک پلاس

تکنولوژی نوین اینترنتی

WP_Query-نمایش نوشته‌ها

دسته‌بندی‌ها

WP_Query-نمایش نوشته‌ها
WP_Query برای نمایش نوشته‌ها

 استفاده می‌شود. این تابع به شما این امکان را می‌دهد که کوئری‌های پیچیده‌تری برای نمایش نوشته‌ها بنویسید و نتایج خاصی را به دلخواه خود فیلتر کنید.

در اینجا نحوه استفاده از WP_Query برای نمایش نوشته‌ها را به شما نشان می‌دهم:


1️⃣ نمایش تمامی نوشته‌ها

برای نمایش تمامی نوشته‌ها، می‌توانید یک نمونه ساده از WP_Query را به این صورت بنویسید:

php
<?php $args = array( 'post_type' => 'post', // فقط نوشته‌ها را نمایش بده 'posts_per_page' => 10, // تعداد نوشته‌ها را به 10 محدود کن ); $query = new WP_Query($args); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); // نمایش عنوان و محتوای هر نوشته the_title('<h2>', '</h2>'); the_excerpt(); endwhile; else : echo 'هیچ نوشته‌ای یافت نشد'; endif; // بازنشانی داده‌های کوئری بعد از استفاده از آن wp_reset_postdata(); ?>

توضیحات:

  • 'post_type' => 'post': تنها نوشته‌ها (پست‌ها) را نمایش می‌دهد. اگر می‌خواهید پست‌های نوع دیگری مانند صفحات (Pages) را نمایش دهید، باید 'post_type' => 'page' را استفاده کنید.

  • 'posts_per_page' => 10: تعداد پست‌هایی که باید نمایش داده شوند را مشخص می‌کند. اینجا ۱۰ نوشته نمایش داده می‌شود.


2️⃣ فیلتر کردن نوشته‌ها بر اساس دسته‌بندی

اگر بخواهید نوشته‌ها را بر اساس یک یا چند دسته‌بندی خاص فیلتر کنید، می‌توانید از پارامتر 'category_name' استفاده کنید:

php
<?php $args = array( 'post_type' => 'post', 'category_name' => 'tech', // نمایش نوشته‌های مربوط به دسته‌بندی با نام "tech" 'posts_per_page' => 5, ); $query = new WP_Query($args); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); the_title('<h2>', '</h2>'); the_excerpt(); endwhile; else : echo 'هیچ نوشته‌ای یافت نشد'; endif; wp_reset_postdata(); ?>

توضیحات:

  • 'category_name' => 'tech': این پارامتر نوشته‌هایی که در دسته‌بندی "tech" هستند، نمایش می‌دهد. اگر بخواهید چندین دسته‌بندی را فیلتر کنید، می‌توانید از کلمه‌کلیدی‌های دسته‌بندی به صورت کاما جدا استفاده کنید.


3️⃣ فیلتر کردن نوشته‌ها بر اساس تاریخ

برای نمایش نوشته‌ها بر اساس تاریخ خاص (مثلاً نوشته‌های منتشرشده در ماه خاص) می‌توانید از پارامترهای 'date_query' استفاده کنید:

php
<?php $args = array( 'post_type' => 'post', 'date_query' => array( array( 'year' => 2023, // سال مورد نظر 'month' => 4, // ماه مورد نظر ), ), 'posts_per_page' => 5, ); $query = new WP_Query($args); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); the_title('<h2>', '</h2>'); the_excerpt(); endwhile; else : echo 'هیچ نوشته‌ای یافت نشد'; endif; wp_reset_postdata(); ?>

توضیحات:

  • 'date_query': با استفاده از این پارامتر، می‌توانید تاریخ انتشار نوشته‌ها را فیلتر کنید. در این مثال، فقط نوشته‌هایی که در آوریل ۲۰۲۳ منتشر شده‌اند، نمایش داده خواهند شد.


4️⃣ فیلتر کردن نوشته‌ها بر اساس نویسنده

برای نمایش نوشته‌های یک نویسنده خاص، می‌توانید از پارامتر 'author' استفاده کنید:

php
<?php $args = array( 'post_type' => 'post', 'author' => 1, // نمایش نوشته‌های نویسنده با ID 1 'posts_per_page' => 5, ); $query = new WP_Query($args); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); the_title('<h2>', '</h2>'); the_excerpt(); endwhile; else : echo 'هیچ نوشته‌ای یافت نشد'; endif; wp_reset_postdata(); ?>

توضیحات:

  • 'author' => 1: این پارامتر فقط نوشته‌های نویسنده‌ای با ID برابر ۱ را نمایش می‌دهد.


5️⃣ فیلتر کردن نوشته‌ها بر اساس برچسب‌ها (Tags)

برای نمایش نوشته‌ها بر اساس برچسب‌ها می‌توانید از پارامتر 'tag' استفاده کنید:

php
<?php $args = array( 'post_type' => 'post', 'tag' => 'wordpress', // نمایش نوشته‌های با برچسب "wordpress" 'posts_per_page' => 5, ); $query = new WP_Query($args); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); the_title('<h2>', '</h2>'); the_excerpt(); endwhile; else : echo 'هیچ نوشته‌ای یافت نشد'; endif; wp_reset_postdata(); ?>

توضیحات:

  • 'tag' => 'wordpress': این پارامتر نوشته‌هایی که برچسب "wordpress" دارند، نمایش می‌دهد.


6️⃣ فیلتر کردن نوشته‌ها بر اساس پست‌های مرتبط (پست‌های بعدی و قبلی)

شما می‌توانید با استفاده از WP_Query نوشته‌های بعدی یا قبلی را براساس شرایط مختلفی فیلتر کنید. مثلا، می‌توانید نوشته‌ها را بر اساس تاریخ انتشار مرتب کرده یا فیلترهای مختلف اعمال کنید.


جمع‌بندی:

با استفاده از WP_Query می‌توانید نمایش نوشته‌ها را بسیار سفارشی‌سازی کنید. این تابع به شما این امکان را می‌دهد که نوشته‌ها را براساس ویژگی‌های مختلف مانند دسته‌بندی، تاریخ، نویسنده، برچسب و غیره فیلتر کنید.

اگر سوالی دارید یا نیاز به توضیحات بیشتر دارید، خوشحال می‌شوم که کمک کنم! 😊

محتوای مرتبط

پست‌های مرتبط