ثبت نام لاتاری 2022 آموزش ثبت نام لاتاری گرین کارت آمریکا 2022 لاتاری

نحوه استفاده از WP_Query برای فراخوانی داده و پست و مقاله از دیتابیس

در وردپرس یک کلاسی وجود دارد به نام WP_Query که کاربرد آن این است که به طراحان قالب و افزونه وردپرسی این امکان را میدهد تا به راحتی کوئری های دلخواه خودشان را بنویسند و هر محتوایی که میخواهند را با توجه به پارامتر های مورد نظرشان از دیتابیس دریافت کنند

در زیر میخوام بهتون نشون بدم چطوری کار میکنه

<?php
// The Query
$the_query = new WP_Query( 'category_name=movies' );
 
?>

ما اومدیم از این کلاس یک ابجکت ساختیم به نام $the_query  و موقع ساخت این ابجکت به تابع سازنده یک استرینگ دادیم که در آن نام دسته بندی را ست کردیم

حالا اگر بخواهیم میتوانیم به تابع سازنده ارایه بدهیم و کامل با توجه به پارامتر هایی میدهیم از دیتابیس برای ما پست میگیرد و داخل این ابجکت ذخیره میکند

بعد از آن ما باید حلقه وردپرس را صدا بزنیم و داخل حلقه از توابع the_title() و خیلی چیز های دیگه استفاده کنیم تا داده هایمان را دریافت کنیم

حلقه استاندارد Standard Loop

<?php
// The Query
$the_query = new WP_Query( 'category_name=movies' );
 
// The Loop
if ( $the_query->have_posts() ) {
        echo '<ul>';
    while ( $the_query->have_posts() ) {
        $the_query->the_post();
        echo '<li>' . get_the_title() . '</li>';
    }
        echo '</ul>';
} else {
    // no posts found
}
/* Restore original Post Data */
wp_reset_postdata();
 
?>

کد بالا نوشته ها را از دسته بندی فیلم به صورت li داخل یک ul نشان میدهد  و بعد از انجام کار با استفاده از تابع wp_reset_postdata(); کوئری که وردپرس ساخته بود را پاک میکنیم تا در ادامه بتوانیم همان پست هایی که باید لود شوند لود شوند و هیچ گونه اختلالی برای کوئری های دیگر ایجاد نکند

Methods and Properties پراپرتی ها و متود های داخل این ابجکت


شدیدا توصیه میکنم که پراپرتی هارو مستقیما تغییر ندید و با استفاده از متود های داخل ابجکت تغییراتتون رو اعمال کنید

Properties پراپرتی ها ( متغیر های داخل ابجکت)


$query
مقدار کوئری استرینگ که از طریق ابجکت از نوع $wp_query به کلاس وردپرسی داده شد.
$query_vars
An associative array containing the dissected $query: an array of the query variables and their respective values.
$queried_object
Applicable if the request is a category, author, permalink or Page. Holds information on the requested category, author, post or Page.
$queried_object_id
If the request is a category, author, permalink or post / page, holds the corresponding ID.
$posts
Gets filled with the requested posts from the database.
$post_count
تعداد پست هایی که نمایش داده میشوند.
$found_posts
تعداد پست هایی که با مقادیری که کوئری زدیم همخوانی دارند
$max_num_pages
تعداد صفحاتی که خروجی قرار است نمایش داده شود ، این مقدار برابر است با $found_posts / $posts_per_page
$current_post
(available during The Loop) Index of the post currently being displayed.
$post
(available during The Loop) The post currently being displayed.

 
<?php
$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;
 $is_comments_popup;
 $is_admin;
 $is_attachment;
 $is_singular;
 $is_robots;
 $is_posts_page ;
 $is_paged ;
?>

 

با توجه به نوع درخواستی که کاربر از صفحه در وردپرس دارد توابع بالا مشخص میکنند که آیا در اینجا یک برگه است یا صحه آرشیوه یا صفحه اصلیه برای اطلاعات کامل تر به مقاله

also توابع با خروجی شرطی در وردپرس مراجعه کنید.

دیدگاه های این مطلب