في تدوينة سابقة قمت بشرح طريقة إدارة الدوال المخصصة في ووردبريس، اليوم سنتعرف على طريقة إنشاء إضافة مخصصة من أجل تنظيم دوالك المخصصة عوض وضعها في ملف 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
أو أي ملف آخر لكي لتفادي حدوث تضارب في الأكواد.لا تنسى مشاركة المقالة مع أصدقائك لكي تصل إلى أكبر عدد من المهتمين بووردبريس وتعم الفائدة.