কিছু খুব ভাল সূচনা উত্তর এখানে।
মূলত, get_template_part()
থিম বিকাশকারীদের টেমপ্লেট ফাইলগুলির সুনির্দিষ্টতার একটি অর্ডার সেট করতে দেয়। এটি সিএসএস নির্বাচকদের ক্ষেত্রে প্রযোজ্য হিসাবে নির্দিষ্টতার সাথে এটি একইভাবে ভাবুন। কোনও কিছুর নকশা করার সময়, আপনি সুনির্দিষ্ট ন্যূনতমতা দিয়ে শুরু করতে চান, যাতে এটির ডিজাইনের অংশগুলিতে সহজেই ওভাররাইড করা যায় যার জন্য ব্যক্তিগত মনোযোগ প্রয়োজন।
সুতরাং উদাহরণস্বরূপ, আপনি একটি ব্লগ স্টাইল করছেন এবং আপনি একটি লুপ.এফপি ফাইল তৈরি করেন যা পোস্টগুলি চিহ্নিত করার জন্য ভাল কাজ করে। তবে আপনি এগিয়ে পরিকল্পনা করছেন, এবং আপনি এটিকে পরে আপনার টেম্পলেট ফাইলগুলিতে অতিরিক্ত প্রসঙ্গের স্পেসিফায়ারগুলির সাথে কল করে বলুন - সূচী পৃষ্ঠায় আপনি get_template_part( 'loop', 'index' );
একক টেম্পলে কল করেন, আপনি কল করেনget_template_part( 'loop', 'single' );
, সংরক্ষণাগার পৃষ্ঠাগুলিতে আপনি কল করেন get_template_part( 'loop', 'archive' );
, আপনি কল করেন , ইত্যাদি। আপনি হোম পৃষ্ঠার থেকে আলাদাভাবে আপনার সংরক্ষণাগার পৃষ্ঠাগুলিতে লুপটি চিহ্নিত করার সিদ্ধান্ত নেওয়ার পরে এটি রাস্তাটিকে খুব সহজ করে তোলে: কেবল একটি লুপ- সংরক্ষণাগার ph.pp টেমপ্লেট তৈরি করুন এবং এটি জেনেরিক লুপ.এফপি পরিবর্তে ব্যবহৃত হবে ।
কিন্তু পিছনে যাদু get_template_part()
ফাংশন রয়েছে locate_template()
, যা চেক প্রথম থিম ডিরেক্টরিতে, তারপর পেরেন্ট ডাইরেক্টরি (যদি থাকে) ফাইল নামকরণ। এটি প্লাগইন বিকাশের জন্য খুব দরকারী। আমার একটি প্লাগইনে আমি একটি কাস্টম পোস্ট ধরণের সংজ্ঞা দিয়েছি এবং আমার প্লাগইন ডিরেক্টরিতে সেই কাস্টম পোস্ট টাইপের জন্য একটি লুপ টেম্পলেট ফাইল তৈরি করেছি। তবে ... আমি আমার প্লাগইন ব্যবহার করে থিমগুলি যদি তারা চয়ন করে তবে আমার মার্কআপটিকে ওভাররাইড করার অনুমতি দিতে চাই। এটি যেখানে locate_template()
সত্যই বিস্ময়ের কাজ করে।
locate_template($template_names, $load = false, $require_once = true )
স্টাইলশিট ডিরেক্টরিতে $ টেমপ্লেট_নামের অ্যারেতে থাকা প্রতিটি নামের জন্য অনুসন্ধান করবে, তারপরে টেমপ্লেট ডিরেক্টরিতে। 'সত্য' কে লোড আর্গুমেন্ট হিসাবে পাস করার অর্থ এটি হবে will প্রয়োজন, প্রথম ফাইলটি পাওয়া যায় নি, এবং একটি খালি স্ট্রিং ফিরে আসবে যদি কোনো টেমপ্লেট ফাইল করা হয়। সুতরাং আমি আমার প্লাগইনে এটির মতো কিছু করতে পারি:
if ( '' === locate_template( 'loop-mycustomposttype.php', true, false ) )
include( 'loop-mycustomposttype.php' );
... যা আশা এটি খুব সহজ থিম ডেভেলপার শুধু একটি ফাইল নামক অন্তর্ভুক্ত করে আমার প্লাগইন আচরণ কনফিগার করার জন্যে করা উচিত লুপ-mycustomposttype.php তাদের থিম হবে।