با عرض سلام و وقت به خیر خدمت کاربران سایت پی وی لرن به ویژه کاربرانی که به سیستم مدیریت محتوای قدرتمند وردپرس علاقمند هستند.
به ” دوره متخصص وردپرس ” خوش آمدید!
در این دوره قرار است توسعه و ارتقاء پلاگین های وردپرس را به صورت جامع و کامل بیاموزیم.
فرقی نمی کند که در شرف نوشتن اولین پلاگین خود هستید و یا این که پنجاهمین پلاگین خود را می نویسید! امیدوارم این دوره برایتان مفید باشد.
در جلسه گذشته با نحوه ایجاد لایسنس پلاگین آشنا شدیم.
در ادامه این دوره، به ” آشنایی با هوک های فعال سازی و غیر فعال سازی پلاگین ” می پردازیم.
هوک ها یا قلاب های فعال سازی Activation و غیر فعال سازی deactivation راه هایی برای عکس العمل نشان دادن هنگام که پلاگین شما فعال یا غیر فعال است ارائه می دهد.
در فعال سازی، پلاگین ها می توانند یک روال را برای اضافه کردن قوانین بازنویسی، اضافه کردن جداول پایگاه داده سفارشی سازی یا تنظیم مقادیر پیش فرض تنظیم کنند.
در غیر فعال کردن، پلاگین ها می توانند یک روال معمول برای حذف داده های موقت مانند فایل های حافظه پنهان و temp و دایرکتوری ها را اجرا کنند.
قلاب غیرفعال سازی گاهی اوقات با قلاب حذف شده اشتباه می شود.
قلاب حذف مناسب ترین گزینه برای حذف تمام داده ها به طور دائم است.
برای راه اندازی یک قلاب فعال سازی، از تابع ()register_activation_hook استفاده کنید:
1 | register_activation_hook( __FILE__, 'pluginprefix_function_to_run' ); |
برای راه اندازی قلاب غیرفعال سازی، از تابع ()register_deactivation_hook استفاده کنید:
1 | register_deactivation_hook( __FILE__, 'pluginprefix_function_to_run' ); |
اولين پارامتر در هر يک از اين توابع، به فایل اصلي پلاگین شما مربوط مي شود که همان فایلیست که عبارت هدر پلاگین را در آن قرار داده ايد.
معمولا این دو تابع از داخل پرونده پلاگین اصلی فعال می شوند.
با این حال، اگر توابع در هر فایل دیگری قرار بگیرند، باید اولین پارامتر را به درستی در فایل اصلی پلاگین آپدیت کنید.
از رایج ترین استفاده های هوک فعال سازی، استفاده از آن برای تازه سازی پرمالینک وردپرس در هنگامی است که یک یک پلاگین یک نوع پست سفارشی را ثبت می کند.
بیایید نحوه انجام این کار را بررسی کنیم:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | function pluginprefix_setup_post_type() { // register the "book" custom post type register_post_type( 'book', ['public' => 'true'] ); } add_action( 'init', 'pluginprefix_setup_post_type' ); function pluginprefix_install() { // trigger our function that registers the custom post type pluginprefix_setup_post_type(); // clear the permalinks after the post type has been registered flush_rewrite_rules(); } register_activation_hook( __FILE__, 'pluginprefix_install' ); |
اگر با بت نام انواع پست سفارشی آشنا نیستید، نگران نباشید در این دوره، به این مبحث نیز خواهیم پرداخت.
مثال زیر نمونه ساده و رایج از این نوع پست است.
1 2 3 4 5 6 7 | function pluginprefix_deactivation() { // unregister the post type, so the rules are no longer in memory unregister_post_type( 'book' ); // clear the permalinks to remove our post type's rules from the database flush_rewrite_rules(); } register_deactivation_hook( __FILE__, 'pluginprefix_deactivation' ); |
در این جلسه به آشنایی با هوک های فعال سازی و غیر فعال سازی پلاگین پرداختیم.
در جلسه بعدی به آموزش حذف متودهای پلاگین می پردازیم.
با پی وی لرن همراه باشید.