দ্রুত ব্রেকডাউন
- ক্যোয়ারী_পোস্টগুলি - বিরল প্রান্ত ক্ষেত্রে ব্যতীত ব্যবহার করবেন না
- pre_get_posts - আপনি যদি কোনও পৃষ্ঠায় ডিফল্ট ক্যোয়ারী পরিবর্তন করতে চান তবে ব্যবহার করুন
- নতুন ডব্লিউপি_কিউয়ারি - মূল ক্যোয়ারী থেকে আলাদা ফলাফল পেতে ব্যবহার করুন
- get_posts - ডাব্লুপি_কিউরির সমান, কেবল পরিবর্তে অ্যারে ফর্ম্যাটে ফলাফল দেয়
query_posts
কোয়েরি_পোস্টগুলি ব্যবহারের আর কোনও প্রস্তাব দেওয়া হয় না। আপনি যেটি সম্পাদন করতে চাইছেন তা অর্জনের আরও ভাল উপায় রয়েছে। মূল ক্যোয়ারী পরিবর্তন করার চেষ্টা করছেন? ফলাফলগুলি ফিল্টার করতে প্রাক_জেট_পোস্টগুলি ক্রিয়াটি ব্যবহার করুন (নীচে দেখুন)। ক্যোয়ারী_পোস্টগুলি মূল মূল ক্যোয়ারিকে পাশের দিকে ফেলে দেয় (এটি ইতিমধ্যে চালানোর পরে) এবং একটি নতুন মূল ক্যোয়ারী তৈরি করে। এটি সমস্ত পোস্ট সম্পর্কিত গ্লোবাল ভেরিয়েবলগুলি প্রতিস্থাপন করে এবং সম্পূর্ণ নতুন ডাটাবেস কলের ফলাফল করে। আপনার কেবল বিদ্যমান ক্যোয়ারীটি পরিবর্তন না করার কোনও কারণ নেই। আমি নিশ্চিত যে এটি ব্যবহার করা উচিত এমন কিছু প্রান্তের কেস রয়েছে তবে আমি আমার মাথার উপরের দিকের কোনওটিই ভাবতে পারি না। নীচের বিকল্পগুলির মধ্যে একটি ব্যবহার করুন কারণ সেগুলি সম্ভবত আরও ভাল উপযুক্ত হবে।
pre_get_posts
এটি একটি ফিল্টার। এটি একটি পৃষ্ঠায় মূল ক্যোয়ারী পরিবর্তন করে। সুতরাং, উদাহরণস্বরূপ, আমরা হোমপেজে ফিরে আসা ফলাফলের সংখ্যাটি পরিবর্তন করতে চাই …
ফাংশন tj_change_home_number ($ ক্যোয়ারী) {যদি (is_home ()) $ $ ক্যোয়ারী-> সেট ('পোষ্টস_পার_পেজ', 2); আসতে; ;} যোগ_অ্যাকশন ('pre_get_posts', 'tj_change_home_number');
এটি হোমপৃষ্ঠায় কেবলমাত্র 2 টি পোস্ট ফিরিয়ে দেওয়ার জন্য মূল ক্যোয়ারিকে পরিবর্তন করবে।
WP_Query
যেকোনো টেম্পলেটটির মূল ক্যোয়ারী হ'ল ডাব্লুপি_কিউয়ের উদাহরণ। আপনি যখন কোনও টেমপ্লেটের মধ্যে গ্লোবাল পোস্ট ভেরিয়েবলের সাথে ইন্টারঅ্যাক্ট করেন, তা ডাব্লুপিউকিউয়ের ফলাফল। এর ব্যবহারের ক্ষেত্রে অসংখ্য, তবে get_posts হিসাবে, আমি সম্পর্কিত পোস্টগুলি টানানোর উদ্দেশ্যে একটি নতুন WP_Query ঘোষণা করব, সেই লাইনের পাশাপাশি কিছু। কেবল মনে রাখবেন যে আপনি যদি নতুন ডাব্লুপিপিউকিউরিয়ের মধ্য দিয়ে লুপিংয়ের সময়_পোস্ট () ফাংশনটি চালান তবে গ্লোবাল পোস্ট ডেটাটি মূল মূল ক্যোয়ারিতে পুনরায় সেট করার জন্য আপনি লুপিংয়ের পরে ডাব্লুপিপ্রেসেট_পোস্টটাটা () ফাংশনটি চালান ।
get_posts
Get_posts ব্যবহার করে আপনি কার্যকরভাবে একটি নতুন WP_Query কল করছেন এবং সেই তথ্যটি অ্যারে ফর্ম্যাটে ফিরে পেয়েছেন। আমি যখন হোমপৃষ্ঠায় স্লাইডারের জন্য পোস্টগুলি ফিরছি বা সাইডবারে কিছু সম্পর্কিত পোস্টে কল করব তখন আমি সাধারণত get_posts ব্যবহার করব। ডাব্লুপিউকিউয়ারি ঠিক তত সহজেই ব্যবহার করা যেতে পারে তবে গ্লোবাল পোস্ট ভেরিয়েবলগুলি পরিবর্তন না করে পোস্টের অ্যারে পাওয়ার এটি একটি ভাল উপায়। আমার দৃষ্টিতে এটি সবচেয়ে সহজ এবং ব্যবহার করা সহজ। আপনার ডেটা ফিরে আসার পরে কোনও ফাংশন কল প্রয়োজন নেই, কেবল একটি অ্যারের মাধ্যমে লুপিং করা হবে।
এটি কিছুটা বিভ্রান্তিকর হতে পারে, তাই নীচে মন্তব্যগুলিতে নির্দ্বিধায় প্রশ্ন জিজ্ঞাসা করুন।
রেফারেন্স:
WP_Query
pre_get_posts
query_posts
get_posts
