دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۴
  • شهریور

جلسه ۱۷ : استفاده از هوک فیلتر در ساخت پلاگین

  • دسته‌بندی‌ها :
جلسه ۱۷ : استفاده از هوک فیلتر در ساخت پلاگین
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      با عرض سلام و وقت به خیر خدمت کاربران سایت پی وی لرن به ویژه کاربرانی که به سیستم مدیریت محتوای قدرتمند وردپرس علاقمند هستند.
      به ” دوره متخصص وردپرس ” خوش آمدید!
      در این دوره قرار است توسعه و ارتقاء پلاگین های وردپرس را به صورت جامع و کامل بیاموزیم.
      فرقی نمی کند که در شرف نوشتن اولین پلاگین خود هستید و یا این که پنجاهمین پلاگین خود را می نویسید! امیدوارم این دوره برایتان مفید باشد.
      در جلسه پیش آموختیم که چگونه از هوک فیلتر استفاده نماییم و چگونه این هوک را اضافه کنیم.
      در ادامه سرفصل هوک ها، به ” استفاده از هوک فیلتر در ساخت پلاگین می پردازیم ”

      استفاده از هوک فیلتر در ساخت پلاگین

      هوک های فیلتر راهی برای تغییر داده های توابع دیگر فراهم می کنند.
      همان طور که هوک اکشن نتایج کار هوک فیلتررا هم پوشانی می کند؛ هوک فیلتر هم همین کار را برای هوک اکشن انجام می دهد.

      بر خلاف هوک های اکشن، هوک های فیلتر به صورت جداگانه کار می کنند و پیامدهای جانبی چون تاثیر پذیری از متغیر های سراسری و خروجی، را ندارند.

      افزودن هوک های فیلتر

      فرایند اضافه کردن یک هوک فیلتر شامل دو مرحله است.

      یک

      باید یک تابع فراخوانی ایجاد کنید که هنگام فیلتر اجرا می شود.

      دو

      حالا باید تابع فراخوانی خود را با هوک خود که فراخوانی تابع را انجام دهد اضافه نمایید.

      شما از تابع ()add_filter ، با عبور حداقل دو پارامتر، string $ tag، callable $ function_to_add استفاده می کنید.
      زمانی که فیلتر the_title اجرا می شود مثال زیر اجرا می شود :

      مثال : 

      ما یک عنوان پست “Learning WordPress” داریم،.
      مثال فوق این تغییر را ایجاد خواهد داد “The Learning WordPress was filtered “یادگیری وردپرس فیلتر شد”.

      همانطور که تجربه بیشتری به دست آورید، جستجوی کد منبع وردپرس Core به شما امکان می دهد که مناسب ترین هوک را پیدا کنید.

      پارامترهای اضافی

      ()add_action می تواند دو پارامتر اضافی بپذیرد این دو عبارتند از :

      • int $priority برای اولویت فراخوانی تابع
      • int $accepted_args برای تعدادی از آرگومان های که تابع فراخوانی را عبور می دهند.

      مثال

      برای اضافه کردن یک کلاس CSS به تگ <body> هنگامی که شرایط خاصی را مشاهده می کنید به صورت زیر عمل کنید :

      مثال : 

      کلام آخر

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

      QR:  جلسه ۱۷ : استفاده از هوک فیلتر در ساخت پلاگین
      به اشتراک بگذارید