আমি একটি প্লাগইন লিখছি যা একটি কাস্টম পোস্ট ধরণের (অন্যান্য জিনিসের মধ্যে) তাত্ক্ষণিক করে তোলে। এটি একটি মাল্টিসাইট প্লাগইন এবং মিউ-প্লাগইন ডিরেক্টরিতে থাকে ।
এই পরিস্থিতিতে ফ্লাশ_প্রিট_রুলস () পরিচালনা করার জন্য সেরা অনুশীলন কী ? একটি 'সাধারণ' প্লাগইনটির জন্য আপনি এটি একটি অ্যাক্টিভেশন হুক-এ করতেন - যা হুকগুলি উপলভ্য না হওয়ায় এটি অবশ্যই ব্যবহারের প্লাগইনটির পক্ষে সম্ভব নয়।
যেহেতু কাস্টম পোস্টের ধরণটি রেজিস্ট্রেশন করার পরে এটি "এক সময়" ইভেন্ট হওয়ার কথা, তাই আমার ক্লাসে সিপিটি নিবন্ধিত করে এমন কিছু করা কি বোধগম্য হবে:
private function check_flush_my_CPT() {
global $wp_rewrite;
if ( !get_option('my_plugin_firstrun') ) {
$wp_rewrite->init();
$wp_rewrite->flush_rules(true);
update_option('my_plugin_firstrun', 'yes');
}
}
public function register_my_CPT() {
// do all the CPT setup steps for the $args array...
register_post_type('my_CPT', $args);
$this->check_flush_my_CPT();
}
add_action( 'init', array(&$this, 'register_my_CPT' ) );
সুতরাং, সিপিটি রেজিস্ট্রেশন প্রতিটি 'ইআর' ক্রিয়াতে ঘটে - তবে আমার যদি এই অধিকার থাকে তবে পুনর্লিখনের নিয়মগুলি কেবল একবারে ফ্লাশ হয়। কখনও ।
আমি কি সঠিক পথে রয়েছি?
(সম্পাদনা): আমি কেবল এটি চেষ্টা করেছি; আমার সিপিটি একটি 404 পাওয়া যায়নি ত্রুটি দিচ্ছে, সুতরাং পুনর্লিখনের নিয়মগুলি কাজ করছে না :-(
(# 2 সম্পাদনা করুন): আমি বিশ্বব্যাপী ভেরিয়েবল অ্যাক্সেসের জন্য সমাধানটি চেষ্টা করেছিলাম যেমন এই প্রশ্নে দেখানো হয়েছে: মাল্টিসাইটে পুনরায় লেখার নিয়মগুলি কীভাবে নির্ভরযোগ্যভাবে ফ্লাশ করবেন? - আমি এটি দেখানোর জন্য উপরে আমার কোড উদাহরণ আপডেট করব। দুর্ভাগ্যক্রমে আমি এখনও সিপিটি লোড করার চেষ্টা করে 404 ত্রুটি পাচ্ছি। আমি দেখতে পাচ্ছি যে পুনর্লিখনের নিয়মগুলি ডাটাবেসে সংরক্ষণ করা হচ্ছে, মনে হচ্ছে এটি ব্যবহার করা হচ্ছে না। আমি শেষ.