Parsa
آفلاین
عضو فعال
تعداد نوشتهها: ۱۹۲۱
تشکر شده: ۲۶۸۳ بار
#
نوشته شده: ۱۴ سال پیش
۲۸ آبان ۱۳۸۹ - ۱۲:۰۶
سلام
من به يك مشكلي برخوردم
در قالبم در چند جا كوئري گرفتم
كوئري از دسته ها و ...
حالا وقتي ميخوام مثلا كوئري اصلي مربوط به پستها،دسته ها،تگها،جستجو،برگه ها و ... را نمايش بدم با توجه به آخرين كوئري پستها نمايش داده ميشن
حالا چه طوري ميتونم اولين كوئري را بگيرم
براي اين كار راه حلي داريد؟
Parsa
آفلاین
عضو فعال
تعداد نوشتهها: ۱۹۲۱
تشکر شده: ۲۶۸۳ بار
#
نوشته شده: ۱۴ سال پیش
۲۸ آبان ۱۳۸۹ - ۱۵:۰۹
جواب رو پيدا كردم
بايد كوئري ريست بشه
wp_reset_query();
This function destroys the previous query used on a custom Loop. Function should be called after The Loop to ensure conditional tags work as expected.
http://codex.wordpress.org/Function_Reference/wp_reset_query
ويرايش: اشتباه شد، مشكل حل نشد
Parsa
آفلاین
عضو فعال
تعداد نوشتهها: ۱۹۲۱
تشکر شده: ۲۶۸۳ بار
#
نوشته شده: ۱۴ سال پیش
۲ آذر ۱۳۸۹ - ۰۱:۳۰
جواب رو تا حدی پیدا کردم
اینو در حال بررسی یک افزونه بودم که فهمیدم
ابتدا باید کوئری وردپرس را به نوعی ذخیره کنیم
$tmp_query = $wp_query;
سپس کوئری دلخواه را میگیریم
query_posts('cat=5&showposts=50');
در انتها کوئری را برمیگردانیم
$wp_query = $tmp_query;
حتما شما هم به این مشکل برخورده اید که هنگام داشتن چند کوئری قالب به هم میریزد. با این روش دیگر مشکلی ندارید.
Parsa
آفلاین
عضو فعال
تعداد نوشتهها: ۱۹۲۱
تشکر شده: ۲۶۸۳ بار
#
نوشته شده: ۱۴ سال پیش
۱۶ آذر ۱۳۸۹ - ۰۱:۴۰
يك روش ديگه
ايجاد يك كوئري جديد
$my_query = "cat=" . $wp_theme_options['feature_cat'] . "&showposts=2";
$my_query = new WP_Query($my_query);