فانکشن وردپرس و تفاوت آن با سایر اجزای قالب – Function.php

فانکشن وردپرس چیه و چه فرقی با بقیه اجزای قالب داره ؟
بخشهای قالب مثل
header.phpیاsingle.phpبیشتر HTML + PHP ترکیبی هستن که خروجی رو میسازن (یعنی همون چیزی که کاربر میبینه).ولی functions.php یا فایلهای افزونه، بیشتر شبیه مغز بکاند هستن که به وردپرس میگن چی کار بکنه، نه اینکه مستقیم چیزی رو چاپ کنن.
اونجا ما هوکها (Hooks) رو استفاده میکنیم تا توی فرآیند کار هسته وردپرس دخالت کنیم.
کدهایی که توی functions.php یا پلاگینها میذاریم، در واقع مستقیم با هسته وردپرس در ارتباطن و از سیستم Hook استفاده میکنن.
Hook چیه؟
هوک در وردپرس یعنی: «وقتی فلان اتفاق افتاد، این کد من رو هم اجرا کن».
دو نوع اصلی داریم:
Action Hooks → مثل
add_action('wp_head', 'my_function')
یعنی موقع اجرایwp_head، تابع من رو هم اجرا کن.Filter Hooks → مثل
add_filter('the_content', 'my_filter')
یعنی قبل از اینکه وردپرس محتوای پست رو نشون بده، از تابع من بگذرون و خروجی جدید رو بده.
مثال با add_filter
فرض کن میخوای هر بار که متن پستها نمایش داده میشه، آخرش یک جمله اضافه بشه:
function add_signature_to_content($content) {
return $content . ‘<p>با عشق</p>’;
}
add_filter(‘the_content’, ‘add_signature_to_content’);

ژیدور