یک کار خیلی مهم در طراحی پلاگین استفاده از قلاب های سفارشی است. با  انجام این کار به سایر برنامه نویسان امکان می دهید پلاگین شما را توسعه دهند .

قلاب های سفارشی دقیقا به همان صورتی که قلاب های هسته وردپرس هستند ساخته می‌شوند و فراخوانی می شوند.

من به شما توصیه می‌کنم که از تابع apply_filters()  برای هر متنی که در خروجی مرورگر نمایش داده می شود استفاده کنید. با انجام این کار امکان ویرایش پلاگین را بر مبنای نیازهای کاربر فراهم می کنید .


اضافه کردن یک تابع بازگشتی به قلاب :

برای افزودن یک تابع بازگشتی به یک قلاب سفارشی از add_action() برای اکشن ها و از add_filter() برای فیلتر ها استفاده کنید .


مشکل نام های تکراری :

از آنجایی که هر پلاگینی می‌تواند یک قلاب سفارشی بسازد ، مهم است که یک پیشوند برای اسامی قلاب خود انتخاب کنید تا از بروز نام های تکراری با سایر پلاگین ها جلوگیری کرده باشید .

برای مثال اگر یک فیلتر را email_body نام گذاری کنید این نامگذاری شما روش خوبی محسوب نمی‌شود چرا که بسیار محتمل است که سایر برنامه نویسان هم همان نام را انتخاب کرده باشند. اگر یک کاربر هر دو پلاگین را  را نصب کنند سایت او با یک باگ روبرو می‌شود که پیدا کردن آن هم بسیار دشوار است .اما اگر تابع خود را wporg_email_body  نامگذاری کنید حالا دیگر از امکان ایجاد نام های تکراری جلوگیری کرده اید .

مثالها :

ایجاد یک اکشن توسعه پذیر : طراحی یک فرم تنظیمات

اگر پلاگر شما یک فرم تنظیمات به پنل مدیریت اضافه می کند می توانید از اکشن ها استفاده کنید تا به سایر پلاگین ها اجازه دهید تا تنظیمات خودشان را به آن اضافه کنند .


برای نمایش کدها کلیک کنید
                      

حالا یک  پلاگین دیگر می‌تواند یک تابع برگشتی را ثبت کند تا از قلاب wporg_after_settings_page_html  استفاده کند و تنظیمات جدید مورد نظرش  را به آن تزریق کند .


برای نمایش کدها کلیک کنید
                      

فیلتر توسعه پذیر: نوع پست سفارشی

در این مثال زمانی که یک نوع پست جدید ثبت می شود پارامترهایی که آن را تعریف می کنند از   یک فیلتر عبور می کنند ،  بنابراین یک پلاگین دیگر می‌تواند آنها را تغییر دهد قبل از آنکه نوع پست  جدید ساخته شود .


برای نمایش کدها کلیک کنید
                      

حالا یک  پلاگین دیگر می‌تواند یک تابع برگشتی را برای قلاب ثبت کند و پارامترهای پست را تغییر دهد :


برای نمایش کدها کلیک کنید
                      

برچسب ها: