এটি সবার জন্য উপযুক্ত নাও হতে পারে এবং ওপি-র জন্য দ্রুত পর্যাপ্ত নাও হতে পারে - কারণ এটি কেবলমাত্র পরবর্তী পৃষ্ঠার সূচনাতে ট্রিগার করা হয়েছে। যাইহোক, এটি "সংক্ষিপ্ত সমস্ত কিছু" পরে সময় সংবেদনশীল ছিল না তার ঠিক পরে ট্রিগার কোডটি আমাকে সহায়তা করেছিল।
স্পষ্টতই HOOK
আপনার নিজের মডিউল নামটি প্রতিস্থাপন করা দরকার।
/**
* Implements hook_init().
*/
function HOOK_init(){
// if there is no cache_not_empty defined, define it
// and then trigger our cache cleared code
if ( !cache_get('HOOK_cache_not_empty') ) {
cache_set('HOOK_cache_not_empty', TRUE);
foreach (module_implements('cache_cleared') as $module) {
module_invoke($module, 'cache_cleared');
}
}
}
/**
* Implements hook_cache_cleared().
*/
function HOOK_cache_cleared(){
// do what you need here, in which ever module.
}
যদি আপনার নির্দিষ্ট টার্গেটের দরকার হয় তবে আপনাকে সমর্থন করতে উপরেরগুলিকে সংশোধন করা যেতে পারে, যতক্ষণ না আপনার ক্যাশে সাফ হওয়ার স্থানে পুরো বিন খালি হয়ে যায়।
hook_init
কেবল অ-ক্যাশেড পৃষ্ঠাগুলির জন্যই কার্যকর করা হয়। যদিও পুরো ক্যাশে ক্লিয়ারটির অর্থ কোনও ক্যাশেড পৃষ্ঠাগুলি হওয়া উচিত নয়, এটি কোনও সমস্যার কারণ হবে না। তবে, বার্নিশের মতো বাহ্যিক ক্যাচিং সিস্টেমগুলি এই ট্রিগারটির পথে আসবে এবং এর অর্থ হ'ল কেবলমাত্র তখনই ঘটবে যখন পরবর্তী যথাযথ অনুরোধটি দ্রুপলের কাছে ফিরে আসে।
আপনার ক্যাচিং সিস্টেমের উপর নির্ভর করে - ঠিক যখন cache_set
সমস্ত সমসাময়িক ব্যবহারকারীদের কাছে এটি উপলব্ধ হয় - তার উপর নির্ভর করে এই হুকটি একযোগে একাধিকবার ট্রিগার হতে পারে, বিশেষত আপনার যদি প্রচুর সংখ্যক ব্যবহারকারী থাকে।