Un ghid demn de remarcat pentru crearea propriilor widget-uri personalizate în WordPress
Publicat: 2021-07-06Cum să creați widget-uri personalizate pe site-ul WordPress
Dacă rulați un site WordPress de ceva vreme, atunci cu siguranță veți avea o idee corectă despre widget-uri și utilizarea lor. Widgeturile servesc ca un instrument excelent, ajutând utilizatorii WordPress să adauge mai mult conținut și funcții în barele laterale (numite și zone widget) ale temei site-ului lor.
De asemenea, widget-urile pot fi adăugate la câteva alte zone ale unei teme WP, cum ar fi antetul, subsolul etc.), în funcție de dorințele și nevoile dvs.
Widgeturile, în principal, ajută la glisarea și plasarea elementelor pe site-ul dvs. web. În mod implicit, puteți găsi mai multe widget-uri în tabloul de bord administrativ al unei teme WordPress.
Cu toate acestea, puteți face tabloul de bord al site-ului dvs. și mai util pentru a crea widget-uri personalizate. Prin această postare, vă voi face să înțelegeți cum vă puteți crea propriul widget personalizat în tabloul de bord al site-ului dvs. WordPress.
Postare asociată: Cum să adăugați widget-uri și să începeți să le utilizați pe site-ul WordPress?
Cum poți crea un widget personalizat în tabloul de bord?
Să presupunem că doriți să creați un widget personalizat în tabloul de bord de administrare al site-ului dvs. În acest scop, primul lucru pe care trebuie să-l faceți este să vă înregistrați widget-ul cu WordPress.
Pentru a face acest lucru, trebuie doar să utilizați funcția wp_add_dashboard_widget(). Este o funcție implicită WordPress care informează WordPress despre widget-ul nou creat.
Mai jos este un cod care va demonstra cum puteți înregistra un widget personalizat:
// Register your custom widget function by hooking into the 'wp_dashboard_setup' action
add_action( 'wp_dashboard_setup', 'first_custom_dashboard_widget' );
funcția first_custom_dashboard_widget() {
wp_add_dashboard_widget(
„first_custom_dashboard_widget”,
//acesta este un widget slug
„Primul widget de tablou de bord personalizat”,
//acesta este titlul widget-ului dvs
„first_custom_dashboard_widget_display”
//Funcția de afișare
);
}
//Creează o funcție pentru a afișa conținutul care urmează să fie afișat în widget-ul Dashboard.
funcția first_custom_dashboard_widget_display() {
echo „Descrieți widgetul dvs. aici Widget”;
}
Notă: Codul de mai sus trebuie adăugat la fișierul functions.php al temei.
Fragmentul de cod de mai sus va ajuta la crearea unui widget personalizat numit „Primul widget personalizat de tablou de bord”. Să înțelegem acum cum funcționează codul:
- În prima linie de cod, funcția register_first_custom_dashboard_widget() este conectată la cârligul de acțiune wp_dashboard_setup. Cu cuvinte simple, linia de început a codului înseamnă că ori de câte ori acțiunea wp_dashboard_setup apare în codul temei dvs., first_custom_dashboard_widget() va fi executat.
- În continuare, funcția wp_dashboard_setup() face un apel simplu la wp_add_dashboard_widget() având diferiți parametri, cum ar fi:
- Widget slug
- Titlul widgetului
- Funcția de afișare
Toți acești parametri sunt necesari pentru a vă crea widget-uri personalizate.
- În cele din urmă, funcția my_dashboard_widget_display() este definită și conține conținut textual care spune: „Acesta este primul meu widget personalizat”.
După ce ați executat codul, mergeți la tabloul de bord administrativ și veți vedea widgetul dvs. nou creat adăugat în partea de jos a paginii tabloului de bord administrativ. Doar, trageți acel widget și plasați-l în orice locație doriți.
Ieșire:

Cum să schimbați poziția widgeturilor dvs. personalizate?
În secțiunea de mai sus am discutat despre codul care ajută la crearea și adăugarea de widget-uri personalizate în tabloul de bord al site-ului WordPress.
Aparent, ați dori să oferiți utilizatorilor pluginului posibilitatea de a plasa „Custom Dashboard Widget” într-o locație aleasă de ei, pur și simplu trăgându-l.
Din păcate, WordPress nu vine cu un API ușor de utilizat care să vă permită să vă ocupați de sortarea anterioară a widget-urilor implicite. Aceasta înseamnă că widgetul dvs. personalizat va fi întotdeauna afișat în partea de jos a listei tabloului de bord.
Dar, ce se întâmplă dacă ați dori să puneți widget-ul personalizat deasupra tuturor widget-urilor implicite? Puteți face acest lucru, jocând codul.
O modalitate cea mai bună de a atinge un astfel de obiectiv este să modificați manual matricea internă a metabox-urilor dvs. Și apoi, puteți plasa widget-ul nou creat în partea de sus a listei de widget-uri. Iată un cod care îndeplinește aceeași sarcină:
function first_custom_dashboard_widgets() {
wp_add_dashboard_widget( 'first_custom_dashboard_widget', 'First Custom Dashboard Widget', 'first_custom_dashboard_widget_function' );
// Globalize the array of the metaboxes, this will apply to all the widgets for wp-admin
global $wp_meta_boxes;
// Fetch array of the regular dashboard widgets
$normal_dashboard = $wp_meta_boxes['dashboard']['normal']['core'];
// Create a backup of the custom dashboard widget and delete it from the end of the array
$first_custom_widget_backup = array( 'first_custom_dashboard_widget' => $normal_dashboard['first_custom_dashboard_widget'] );
unset( $normal_dashboard['first_custom_dashboard_widget'] );
// Combine both the arrays together to put custom widget at the beginning
$sorted_dashboard = array_merge( $first_custom_widget_backup, $normal_dashboard );
// Save the value of sorted array back into the main metaboxes
$wp_meta_boxes['dashboard']['normal']['core'] = $sorted_dashboard;
}
Rețineți că acest cod va funcționa pentru proprietarii de site-uri WordPress care nu și-au reordonat deloc widget-urile. Dar, de îndată ce un utilizator realizează această funcționalitate, preferințele actuale vor trece peste aceasta. Drept urmare, utilizatorii vor trebui să mute widget-ul în partea de sus.
Încheierea
Deși WordPress oferă acces la mai multe widget-uri implicite pentru extinderea capacității tabloului de bord de administrare a site-ului dvs., dar totuși s-ar putea să nu vă îndeplinească nevoile specifice.
Cu toate acestea, puteți atinge toate obiectivele dorite și vă puteți face tabloul de bord de administrare mai util, prin crearea unui widget personalizat. La urma urmei, widget-urile oferă o modalitate excelentă de a adăuga conținut și funcționalitate suplimentară.
Inutil să spun că crearea unui widget nou adaptat pentru a îndeplini anumite sarcini în tabloul de bord administrativ se va dovedi benefică pentru dvs.
Sper că această postare va servi drept ghid util pentru a vă ajuta să înțelegeți mai bine cum puteți crea widget-uri personalizate în panoul de administrare al site-ului dvs.
Amintiți-vă, dacă întâmpinați dificultăți cu partea de codificare, este mai bine să angajați un dezvoltator WordPress care vă poate ajuta să vă finalizați proiectul.
Biografia autorului:
Samuel Dawson este un dezvoltator de aplicații pentru site-uri web și un manager de fișiere în Designs2html Ltd. De asemenea, face cu succes conversia temelor HTML în WordPress.
El menține procesarea generală a fișierelor WordPress în mod dinamic. Articolul despre gestionarea widgeturilor în WordPress de mai sus a fost contribuit de el.