زمانی که پلاگینی در وردپرس فعال شود تابع register_activation_hook() صدا زده می شود. با استفاده از این تابع می توانید بسیاری از کارهای پیش فرضی را که باید اجرا شوند را انجام دهید. برای مثال می توانید نسخه وردپرس را برای هماهنگ بودن با پلاگین خود را چک کنید.
این تابع دو پارامتر قبول می کند:
$file – (رشته) (ضروری) — آدرس فایل اصلی پلاگین
$function – (رشته) (ضروری) — این تابع زمانی که پلاگین فعال شود صدا زده می شود
حالا به مثال زیر توجه کنید:
< ?php
register_activation_hook( __FILE__, ‘boj_myplugin_install’ );
function boj_myplugin_install() {
//do cool activation stuff
}
? >
اولین پارامتر که به تابع فرستاده می شود آدرس فایل شما می باشد، که این کار با استفاده از مقدار ثابت __FILE__ انجام می شود.
پارامتر دوم نام تابعی است که موقع فعال شدن پلاگین فراخوانی می شود.
حالا که متوجه شدید چطور این تابع کار می کند به یک مثال واقعی توجه کنید:
< ?php
register_activation_hook( __FILE__, ‘boj_install’ );
function boj_install() {
If ( version_compare( get_bloginfo( ‘version’ ), ‘3.1’, ‘ < ’ ) ) {
deactivate_plugins( basename( __FILE__ ) ); // Deactivate our plugin
}
}
? >
در این مثال از تابع get_bloginfo() برای بدست آوردن نسخه فعلی وردپرس استفاده کردیم. همچنین از تابع version_compare() برای مقایسه نسخه مورد نظر خود و نسخه فعلی وردپرس استفاده کردیم. به این ترتیب که اگر نسخه وردپرس قدیمی تر از 3.1 باشد با استفاده از تابع deactivate_plugins() پلاگین ما غیر فعال می شود.