توابع قابل حل وردپرس

آیا تاکنون از وردپرس شنیده اید توابع قابل حل? اگر نه ، پس این مقاله باید توجه شما را جلب کند. در دو کلمه توابع قابل تعویض هستند وردپرس توابع اصلی که می توانید رد کنید. همه این توابع در یک پرونده واحد قرار دارند: “wp-شامل / pluggable.php” توابع قابل حل در WordPress 1.5.1 معرفی شدند ، اما در جدیدترین نسخه های WordPress این روش دیگر استفاده نمی شود. اکنون توابع اخیر از فیلترهای خروجی استفاده می کنند. اما هنوز هم می توانید توابع قابل افزونه را نادیده بگیرید ، و این همان چیزی است که من می خواهم در این پست آن را پوشش دهم.


کدام توابع?

توابع قابل حل عبارتند از:

برای دسترسی به صفحه codex آن می توانید بر روی نام هر عملکرد کلیک کنید.

چگونه می توان توابع قابل حل را نادیده گرفت

خوب این بسیار ساده است ، تنها کاری که شما باید انجام دهید اینست که یک پرونده را در پلاگین های خود ایجاد کنید که حاوی عبارت “if (! function_exists ())” باشد و سپس دوباره تعریف کنید. من اکیداً به شما توصیه می کنم که هنگام شروع کار ، عملکرد اصلی را کپی و جایگذاری کنید. به این ترتیب شما مطمئن هستید که عملکرد کار خواهد کرد. در اینجا یک مثال خالی است:

اگر (! function_exists ('wp_notify_postauthor')):
/ **
* به یکی از پست های خود به نویسنده نظر / ردگیری / پینگ بک اطلاع دهید.
*
*since 1.0.0
*
*param int $ comment_id شناسه نظر
*param string $ comment_type اختیاری. نوع اظهار نظر یا "نظر" (پیش فرض) ، "پیگیری" یا "pingback"
* در صورت عدم وجود ایمیل کاربر ،return bool غلط است. درست در اتمام.
* /
تابع wp_notify_postauthor ($ comment_id ، $ comment_type = '') {

/ * این جایی است که شما عملکرد را مجددا تعریف می کنید * /

}
endif؛

من می خواهم در مورد عملکرد “wp_notify_postauthor ()” صحبت کنم. این شخصی است که وقتی یک نظر جدید اضافه می شود ، یک ایمیل برای نویسندگان پست ارسال می کنید. در یکی از افزونه های من ، مدیر مسائل مربوط به WordPress ، من برای غیرفعال کردن این اعلان ، اما فقط یک نوع پست سفارشی خاص نیاز داشتم. بنابراین ، من کل عملکرد را کپی کردم ، و این را به سادگی اضافه کردم:

اگر (! function_exists ('wp_notify_postauthor')):
/ **
* به یکی از پست های خود به نویسنده نظر / ردگیری / پینگ بک اطلاع دهید.
*
*since 1.0.0
*
*param int $ comment_id شناسه نظر
*param string $ comment_type اختیاری. نوع اظهار نظر یا "نظر" (پیش فرض) ، "پیگیری" یا "pingback"
* در صورت عدم وجود ایمیل کاربر ، اشتباه استreturn bool. درست در اتمام.
* /
تابع wp_notify_postauthor ($ comment_id ، $ comment_type = '') {

if ($ post-> post_type! = 'مسئله'):

/ * محتوای عملکرد اصلی * /

endif؛

}
endif؛

این ساده است ، اما بدون نیاز به ایجاد تغییرات عظیم یا ایجاد یک عملکرد کامل سفارشی که به یک عمل سفارشی متصل است ، بسیار عالی است.

wp_mail ()

همانطور که در لیست توابع pluggable دیدید ، wp_mail () یک عملکرد قابل افزونه است. این عملکرد عملکردی است که برای ارسال ایمیل استفاده می شود. در هرجای وردپرس وقتی ایمیلی ارسال می شود از این عملکرد استفاده می کند. به همین دلیل شخصی سازی آن می تواند بسیار جالب باشد. به عنوان مثال می توانید از الگوی پیش فرض html برای کلیه ایمیل هایی که از نصب وردپرس ارسال شده استفاده کنید.

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

wp_authenticate ()

همچنین می توانید wp_authenticate را تغییر دهید () و پارامترهای اضافی را برای اجرای امنیت در سایت خود اضافه کنید (برای مثال حملات بی رحمانه).

auth_redirect ()

این عملکرد عملکردی است که در صورت ورود به سیستم کاربر را بررسی می کند ، و در غیر این صورت آنها را به صفحه ورود مجدد هدایت می کند. به راحتی می توان به جای صفحه ورود به سیستم پیش فرض ، عملکرد را نادیده گرفت و کاربر را به صفحه سفارشی هدایت کرد (برای مثال اگر می خواهید پوشه wp-admin را مخفی کنید)..

wp_generate_password ()

این عملکرد عملکردی است که رمزهای عبور خودکار تولید می کند. راستش نیازی به اصلاح آن نیستید ، اما اکنون که می دانید حملات بی رحمانه چیست ، می توانید به ایجاد رمزهای عبور قوی تری علاقه مند شوید. خوب ، این عملکرد برای بهبود است.

نتیجه

برای نتیجه گیری این پست کوتاه در مورد توابع افزونه وردپرس ، می خواهم به این واقعیت اشاره کنم که عملکردهای جدید دیگر مانند این کار نمی کنند. همانطور که در بالا نوشتم ، آنها اکنون از فیلتر استفاده می کنند. اما توابع افزونه توابع مهم به ویژه هنگام ایجاد افزونه های خاص هستند. اما هنگام استفاده از توابع قابل اتصال ، مراقب باشید. اگر عملکرد جدید ایجاد شده کاملاً کار نمی کند ، می تواند بخشی از وب سایت شما را از نظر عملکردی (از نظر عملکرد) خراب کند ، بنابراین لطفاً آنها را در هر شرایطی آزمایش کنید.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map