تغيير البريد المرسل واسم المرسل في ووردبريس باستخدام PHP
في عالم تطوير مواقع الويب، يُعتبر نظام إدارة المحتوى ووردبريس من أشهر الأنظمة المتاحة، حيث يوفر العديد من الأدوات والوظائف التي تجعل من إنشاء وإدارة المحتوى أمرًا سهلًا. واحدة من الوظائف الأساسية التي يحتاجها العديد من المواقع هي إرسال الرسائل البريدية. في هذا السياق، قد يواجه المطورون تحدي كيفية تغيير عنوان البريد الإلكتروني واسم المرسل ديناميكيًا في وظائف PHP المخصصة. سنستعرض في هذا المقال كيفية القيام بذلك باستخدام نظام ووردبريس.
إعداد الوظيفة الأساسية لإرسال البريد الإلكتروني
عند إنشاء نظام لإرسال الرسائل البريدية، نحتاج أولًا إلى إعداد وظيفة أساسية. سنقوم باستخدام phpmailer_init
لضبط الإعدادات الافتراضية للبريد الإلكتروني. يقوم المثال التالي بإعداد عنوان البريد واسم المرسل:
add_action('phpmailer_init', 'my_phpmailer_smtp');
function my_phpmailer_smtp($phpmailer) {
$phpmailer->From = '[email protected]';
$phpmailer->FromName = 'Info';
}
في هذا الإعداد، قمنا بتحديد عنوان البريد الإلكتروني واسم المرسل الافتراضي. لكن ماذا إذا كان لدينا حاجة لتغيير هذه الإعدادات بناءً على شروط معينة مثل نوع الرسالة أو بيانات المستخدم؟
تغيير بيانات المرسل ديناميكيًا
للقيام بذلك، يمكننا إنشاء وظيفة خاصة تسمح لنا بتمرير عنوان البريد واسم المرسل كمعاملات. سنقوم بتعديل الوظيفة الأساسية كما هو موضح أدناه. نحتاج للتأكد من أن هذه الوظيفة تستدعي تعديلاتنا على phpmailer_init
بطريقة صحيحة.
function my_send_email($to, $subject, $body, $from_email = "", $from_name = "") {
if ($from_email && $from_name) {
add_action('phpmailer_init', function($phpmailer) use ($from_email, $from_name) {
$phpmailer->From = $from_email;
$phpmailer->FromName = $from_name;
});
} else {
$from_email = "[email protected]";
$from_name = "Info";
}
$headers = array();
$headers[] = 'From: ' . $from_name . ' <' . $from_email . '>';
$headers[] = 'Reply-To: ' . $from_name . ' <' . $from_email . '>';
$headers[] = 'Content-Type: text/html; charset=UTF-8';
wp_mail($to, $subject, $body, $headers);
}
في هذا الشكل، استخدمنا دالة مجهولة لحفظ القيم الممررة. إذا لم يتم توفير عنوان بريد إلكتروني أو اسم مرسل، نعود إلى القيم الافتراضية.
التأكد من صحة البيانات المدخلة
عند استخدام هذه الوظائف، من المهم التحقق من صحة البيانات المدخلة. يمكنك استخدام دوال مثل filter_var()
للتحقق من صحة عنوان البريد الإلكتروني المقدم. هذا سيساعد في تقليل الأخطاء وتحسين الأداء العام للوظيفة.
استخدام الدالة
لاستدعاء الدالة وإرسال البريد الإلكتروني، يمكن استخدام الشيفرة التالية:
my_send_email('[email protected]', 'Subject Here', 'Email body content', '[email protected]', 'Custom Name');
بهذه الطريقة، ستحصل على القدرة على تغيير عنوان البريد الإلكتروني واسم المرسل بطريقة ديناميكية وسهلة.
خاتمة
في هذا المقال، قمنا بتناول كيفية تغيير عنوان البريد الإلكتروني واسم المرسل بشكل ديناميكي في ووردبريس باستخدام PHP. سواء كنت تطور تطبيقات تجارية تحتاج لإرسال رسائل مع بيانات متنوعة، أو كنت تعمل على نظام إرسال بريد إلكتروني معقد، فإن هذه الأساليب ستكون مفيدة لك.
تعتبر القدرة على تخصيص المراسلات من الأمور الحيوية لتجربة المستخدم، لذلك تأكد من تطبيق هذه الاستراتيجيات في مشروعك القادم. إذا كان لديك أي تساؤلات أو تحتاج إلى المزيد من التوضيحات، فلا تتردد في البحث عن المعلومات الإضافية.