في تدوينة سابقة قمت بشرح طريقة إدارة الدوال المخصصة في ووردبريس، اليوم سنتعرف على طريقة إنشاء إضافة مخصصة من أجل تنظيم دوالك المخصصة عوض وضعها في ملف functions.php
.
هذا ما فعلته أنا منذ مدة وأستطيع القول أنني جد مرتاح، بكل بساطة قمت بإنشاء إضافة صغيرة أستخدمها لوضع الوظائف التي أحتاجها عوض وضعها في ملف functions.php
وبهذه الطريقة عندما أنشأ موقع جديد فقط أقوم بتنصيب الإضافة، تخصيص بعض الروابط وتفعيلها من أجل أن تبدأ بالعمل.
إذا كنت تتساءل ما هي الميزة بخصوص استعمال ملف functions.php
الخاص بقالبك هي بالأساس أنك تستطيع تحديث قالبك دون تضييع التخصيصات التي قمت بها في السابق، لأن وظائفك توجد في الإضافة وليس في القالب.
إنشائها بسيط جداً…
إنشاء ملف الإضافة
أول شيء هو إنشاء الإضافة، ومن أجل هذا نقوم بإنشاء ملف PHP جديد بواسطة محرر النصوص المفضل لديك (أنا أستعمل Visual Studio Code )، وتضيف إليه الترويسة المعيارية من أجل أن يتعرف عليها ووردبريس كإضافة، شيء كهذا:
<?php
/**
Plugin Name: My custom plugin
Plugin URI: https://saidelbakkali.com/
Description: WordPress custom plugin
Version: 1.0
Author: Said El Bakkali
Author URI: https://saidelbakkali.com
License: GPLv2
*/
إضافة الوظائف
منذ الآن ببساطة تبدأ بإضافة الوظائف التي تريد وبعدها تقوم بحفظ التغييرات. هذا مثال مع بعض الوظائف:
<?php
/**
Plugin Name: My custom plugin
Plugin URI: https://saidelbakkali.com/
Description: WordPress custom plugin
Version: 1.0
Author: Said El Bakkali
Author URI: https://saidelbakkali.com
License: GPLv2
*/
// Change the logo
function my_custom_login_logo() {
echo "
<style>
body.login #login h1 a {
background: url( '" . get_bloginfo( 'template_url' ) . "/images/logo.png') no-repeat scroll center top transparent;
height: 114px;
width: 380px;
}
</style>
";
}
add_action( 'login_head', 'my_custom_login_logo' );
add_action( 'login_headerurl', 'my_custom_login_url' );
function my_custom_login_url() {
return get_bloginfo( 'url' );
}
add_action( 'login_headertitle','my_custom_login_title' );
function my_custom_login_title() {
return get_bloginfo( 'name' );
}
function sb_posts_status_color() {
echo '
<style>
.status-draft { background: #FCE3F2 !important; }
.status-pending { background: #87C5D6 !important; }
.status-publish { /* por defecto */ }
.status-future { background: #C6EBF5 !important; }
.status-private { background: #F2D46F; }
</style>
';
}
add_action( 'admin_footer','sb_posts_status_color' )
تنصيب وتفعيل الإضافة
فقط عليك رفعها إلى مجلد plugins الخاص بموقعك وبعدها تستطيع تفعيلها كباقي الإضافات، الفرق هو أن هذه الإضافة تتكون من وظائف محدد من طرفك.
functions.php
أو أي ملف آخر لكي لتفادي حدوث تضارب في الأكواد.لا تنسى مشاركة المقالة مع أصدقائك لكي تصل إلى أكبر عدد من المهتمين بووردبريس وتعم الفائدة.
غيث قال
شكرا جزيلا على الموضوغ المفيد
ولكن لو كان الشرح اوضح
مثلا هل الاضافة يجب ان تكون داخل مجلد وما اسم ملف php
وكيفية تفعيل الاضافة بشكل مفصل
سعيــــد البقـــــــــــــــالي قال
العفو أخي
بالنسبة ﻹسم الملف هذا يرجع لك، يمكنك إعطائه أي إسم تريد و يمكنك وضع الملف مباشرة داخل مجلد اﻹضافات أو وضعه داخل ملف خاص … أما التفعيل فهو مثل تفعيل أي إضافة وودبريس
تحياتي
غيث قال
شكرا لك اخي على هذا الرد السريع
انا فعلا قمت بذلك قبل اضافة السؤال ولكن المشكلة انها لم تظهر في الاضافات فظننت انه يوجد خطا ما او نقص شكرا على اي حال
سعدت بالانضمام اليكم
maisara قال
اجعل الاسم بحروف انجليزية ثم ضعها في ملف zip ثم تذهب للاضافات في لوحة التحكم وتقوم بعمل upload للاضافة