تابع Apply_filters_ref_array()  تقریباً شبیه تابع apply_filter() عمل می کند . یکی از تفاوت های اصلی توابع apply_filter() و apply_filters_ref_array() تعداد پارامترهای است که دریافت می کنند . در تابع apply_filter() امکان ارسال یک یا چند پارامتر وجود دارد ، در حالی که در تابع apply_filters_ref_array() آرایه ای از پارامترها ارسال می شود .

هر دو پارامتر ارسال شده به تابع apply_filters_ref_array() الزامی هستند . نکته مهمی که باید در نظر بگیرید این است که پارامتر $args باید به صورت مرجع (refrence) به تابع ارسال شود .

$tag – نام قلاب فیلتر

$args – آرایه ای از آرگومان های ارسال شده به فیلترهای ثبت شده برای قلاب

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

وردپرس دارای قلاب فیلتری به نام posts_results است که به شما امکان می دهد اینکار را به آسانی انجام دهید .

کد زیر مربوط به هسته وردپرس در مورد قلاب فیلتر posts_results است .

این قلاب آرایه ای از اشیاء نوشته ها را به هر فیلتر ثبت شده روی آن ارسال می کند .

با استفاده از مثال زیر ، شما به صورت کامل این آرایه از اشیاء نوشته ها (posts object) را بازنویسی می کنید و آن را با مجموعه سفارشی خود جایگزین می کنید .

به صورت پیش فرض ، پرس و جوهای وردپرس در خصوص نوع مطلب نوشته می باشد .

شما این لیست اشیاء مطالب را به نوع مطلب ” برگه (page) ” در صفحه اصلی سایت تغییر می دهید .

در کد زیر از کلاس wpdb که در فصل 6 ” امنیت افزونه “ بررسی می شود ، استفاده شده است .

آشنایی با قلاب های فیلتر – Filter Hooks در وردپرستابع remove_filter وردپرس
پیشنهاد می کنیم برای دریافت آخرین مطالب کانال تلگرام کانی تمزرا دنبال کنید .