هوک وردپرس چیست؟
هوک چیست؟
هوک سیستم وردپرس از یک سری توابع برای انعطافپذیری بیشتر خود استفاده کرده است. طبق این توابع شما میتوانید تغییرات موردنظر خود را در وردپرس انجام دهید؛ و آن را به شکل دلخواه خود دربیاورید. همچنین میتوانید توسط این توابع در دسته وردپرس نیز تغییراتی را به وجود آورید.
در نظر داشته باشید که پلاگینها نیز جهت افزودن یک قابلیت به وردپرس از هوک استفاده میکنند؛ و میتوانند توسط هوک به امکانات خود بیفزایند. بهطورکلی وردپرس، یک سیستم مدیریت محتوا گسترده و انعطافپذیر است. وردپرس دارای مجموعه توابعی از پیش آمادهشده است که برخی مواقع لازم میشود نحوه کار آنها را تغییر دهیم. با استفاده از هوکها این عمل بهراحتی امکانپذیر است.
همانطور که میدانید در وردپرس پس از بهروزرسانی افزونهها و قالبها، تمامی تغییراتی که در کدهای اصلی قالب خود ایجاد کردید به حالت اولیه برمیگردند؛ و این موضوع برای مدیران سایت مشکلساز شده است. اما با هوکها دیگر این مشکل برطرف شده و شما میتوانید توابع و دستورات خود را به توابع اصلی وردپرس قلاب کنید؛ و تغییرات شما برای همیشه ماندگار واقع میشود. گاهی شما لازم است که جهت گسترش سایت خود از قالب و افزونههایی استفاده کنید که ممکن است به آنها دسترسی نداشته باشید در این صورت میتوانید از هوک استفاده کنید.
حال نوبت رسیده که بگوییم هوکها چگونه در وردپرس استفاده میشوند. هوکها به دو دسته اکشن ( action) و فیلتر (filter) تقسیم میشوند. که تفاوتهای آنها در عملکرد آنها و نوع استفاده از آنها است.
اکشن در وردپرس
اکشنها زمانی مورداستفاده قرار میگیرند که تابعی را ساختهاید و میخواهید زمان خاصی اجرا و افزوده شود. بهعنوانمثال شما میخواهید زمانی که کاربر لاگین میکند آن تابع اجرا شود. در این قسمت است که اکشنها به کمک برنامهنویس میآیند و بهسادگی توابع موردنظر را در زمان موردنیاز اجرا میکنند. درواقع توسط قلاب اکشن شما میتوانید به استه وردپرس خود یک سری توابع اضافه کرده و امکانات قالب و افزونههای خود را تغییر دهید.
بهعنوانمثال شما میتوانید توسط اکشن اطلاعات پایگاه داده خود را تغییر دهید و یا به ایجاد و ارسال صفحات سایت به مرورگر کاربر بپردازید. همچنین شما میتوانید توسط این قابلیت ایمیل ارسال کنید.
اکشنها دارای توابع آماده بسیاری هستند که در زیر یکی از آنها را با ذکر مثال توضیح میدهیم:
add_action('login_head','my_login'); function my_login() { echo 'در اینجا نام کاربری و رمز عبور را وارد نمایید'; }
فیلتر در وردپرس هوک
فیلترها زمانی مورداستفاده قرار میگیرند که بخواهید قبل از اجرای عملکردی در وردپرس تغییراتی لحاظ کنید. به فرض مثال قبل از نمایش پستهای خود مطلبی به انتهای تمامی پستها اضافه کنید. شما میتوانید از قلاب فیلتر زمانی استفاده کنید که قصد دارید در متن خروجی تغییراتی را ایجاد کنید.
به عبارتی شما امکان این را دارید قبل از اینکه دادهها در پایگاه داده ذخیره شوند، بتوانید مشکلات آنها را توسط فیلتر برطرف کنید. خود وردپرس بهصورت پیشفرض دارای فیلترهایی است اما خود شما نیز میتوانید این فیلترها را سفارشیسازی کنید؛ و هنگام خروج دادهها آنها را فیلتر کنید.
در اینجا از توابع از پیش آمادهشده the_content مانند زیر استفاده کنید:
add_filter('the_content','my_the_content_filter'); function my_the_content_filter($content) { $content.'
دیدگاهتان را بنویسید