কাস্টম পোস্টের ধরণগুলি নিবন্ধন করার কোনও উপায় কি কেউ জানেন?
এর সমতুল্য কি আছে register_post_type()
?
unregister_post_type
। নিবন্ধনবিহীন পোস্ট পোস্টটি ব্যবহার করে একটি পোস্টের নিবন্ধন
কাস্টম পোস্টের ধরণগুলি নিবন্ধন করার কোনও উপায় কি কেউ জানেন?
এর সমতুল্য কি আছে register_post_type()
?
unregister_post_type
। নিবন্ধনবিহীন পোস্ট পোস্টটি ব্যবহার করে একটি পোস্টের নিবন্ধন
উত্তর:
বর্তমানে কোনও পোস্টের ধরণের নিবন্ধনের জন্য কোনও ফাংশন নেই, তবে প্রক্রিয়াটি বেশ সহজ।
অ্যান্ড্রু ন্যাসিন ট্র্যাকের উপর কিছু কোড সরবরাহ করেছিলেন, এখানে পাওয়া গেছে এবং নীচে পোস্ট করেছেন।
if ( ! function_exists( 'unregister_post_type' ) ) :
function unregister_post_type( $post_type ) {
global $wp_post_types;
if ( isset( $wp_post_types[ $post_type ] ) ) {
unset( $wp_post_types[ $post_type ] );
return true;
}
return false;
}
endif;
একটি অন্তর্নির্মিত পোস্ট প্রকারটি নিবন্ধভুক্ত করার ফলে ওয়ার্ডপ্রেসে অজানা প্রভাব পড়বে, তাই দয়া করে আপনার নিজের ঝুঁকিতে এটি করুন। একটি কাস্টম পোস্ট ধরণের নিবন্ধভুক্তি পুরোপুরি নিরাপদ হওয়া উচিত, তবে স্বাভাবিকভাবেই আপনার ইনস্টলেশনটি পরিষ্কার করবেন না (উদাহরণস্বরূপ, কোনও পোস্টের তালিকা নিবন্ধন করা ডাটাবেস থেকে ডেটা অপসারণের সমতুল্য নয়)।
আমি কয়েকটি পরিস্থিতি কল্পনা করতে পারি যেখানে এটির প্রয়োজন হতে পারে তবে আরও বোধগম্য পদ্ধতির (যেখানে সম্ভব) এটি হ'ল পোস্টের ধরণটি না চাইলে প্রথমে নিবন্ধন না করা।
register_post_type()
প্রতিটি পৃষ্ঠায় লোড ( init
) ব্যবহার না করা হলে কেবলমাত্র "স্থায়ী" থাকার বিষয়টি হ'ল সম্ভবত পারমালিঙ্ক কাঠামো (এটি রিফ্রেশ করুন এবং এটি চলে যাবে) এবং ডাটাবেসে থাকা পোস্টগুলি, যা আপনি মুছে ফেলতে পারবেন করে DELETE FROM wp_posts WHERE post_type = '[your custom post type]'
।
ওয়ার্ডপ্রেস 4.5 হিসাবে এটি করার জন্য ফাংশন রয়েছে unregister_post_type
,। উদাহরণ: -
function delete_post_type(){
unregister_post_type( 'blocks' );
}
add_action('init','delete_post_type');
unregister_post_type()
এটি ডেটাবেস থেকে কোনও কিছু মুছবে না। এটি কেবলমাত্র পোস্টের প্রবন্ধটি নিবন্ধিত হতে বাধা দেয়।
T31os হিসাবে উল্লেখ করা হয়েছে যে গ্লোবাল ভেরিয়েবল থেকে পোস্টের ধরণটি সরানো সহজ।
তবে আপনি যদি নন-কোর পোস্ট টাইপটি বোঝাতে চান তবে কোডটি নথিভুক্ত করার জন্য এটি অনুসন্ধান করা ভাল এবং এটি ভালভাবে ছুঁড়ে দেওয়া remove_action()
(যদি এটি শালীন কোড হয় তবে এটি সরাসরি চালানোর পরিবর্তে হুক করা উচিত)।
register_post_type()
হুকিংয়ের জন্য নিজেকে খুব সুন্দরভাবে ধার দেয় এমন কোনও ফাংশন নয়। পোস্টের ধরণটি নিবন্ধ করার স্বাভাবিক উপায় হ'ল ইনকে হুক করা কোনও ফাংশনে সরাসরি ফাংশনটি চালানো। সেই ক্রিয়াটি সরিয়ে ফেলার অনাকাঙ্ক্ষিত প্রভাব থাকতে পারে, কারণ সেই ফাংশনটির সাথে প্রায়শই অন্যান্য কার্যকারিতা মুছে ফেলা হবে।
ওয়ার্ডপ্রেস সংস্করণে 4.5.৫ বা তার উপরে তারা পোস্টের ধরণ (নিবন্ধভুক্ত_পোস্ট_প্রকার) সরাতে একটি ফাংশন সরবরাহ করে। উদাহরণ
function delete_post_type(){
unregister_post_type( 'jobs' );
}
add_action('init','delete_post_type');
এটি অবশ্যই কাজ করবে।