יצירת וידג'יט מותאם אישית בלוח הבקרה בוורדפרס

הוספת וידג'יט מותאם אישית מאפשרת הצגת מידע מסוים למנהל האתר בעמוד לוח הבקרה.
במדריך זה אסביר איך לעשות זאת.

הוספת הוידג'יט לעמוד לוח הבקרה

הפונקציה wp_dashboard_setup אחראית על רישום הוידגטים ב-dashboard ולכן נתחיל בהוספת action אל פונקציה זו (בקובץ functions.php של התבנית כמובן):

add_action('wp_dashboard_setup', 'my_custom_dashboard_widget'); 
function my_custom_dashboard_widget() {
}

בתוך הפונקציה שיצרנו עלינו לרשום את הוידג'ט החדש, ואת זה נעשה באמצעות הפונקציה wp_add_dashboard_widget, פונקציה זו מקבלת מספר פרמטרים, אפרט על 3 הפרמטרים שמוגדרים חובה:

wp_add_dashboard_widget($widget_id, $widget_name, $callback);

widget_id – שם המזהה של הוידג'ט.
widget_name – הכותרת של הוידגי'ט.
callback – שמה של פונקציית ה-callback אשר תדפיס את תוכן הוידג'ט.

כך הקוד נראה לאחר שרשמנו את הוידג'ט החדש:

add_action('wp_dashboard_setup', 'my_custom_dashboard_widget'); 
function my_custom_dashboard_widget() {
	wp_add_dashboard_widget('my_custom_widget', 'Widget Title', 'my_custom_dashboard_widget_content');
}

כעת מה שנותר הוא ליצור את פונקציית ה-calback שתדפיס את תוכן הוידג'ט:

function my_custom_dashboard_widget_content() {
	echo '

Widget Content

'; }

כך נראה הכל יחד:

add_action('wp_dashboard_setup', 'my_custom_dashboard_widget'); 
function my_custom_dashboard_widget() {
	wp_add_dashboard_widget('my_custom_widget', 'Widget Title', 'my_custom_dashboard_widget_content');
}
function my_custom_dashboard_widget_content() {
	echo '

Widget Content

'; }

זהו, וידג'ט חדש נוסף אל עמוד לוח הבקרה:

כך נראה הוידג'ט הפשוט שיצרנו בעמוד לוח הבקרה.
כך נראה הוידג'ט הפשוט שיצרנו בעמוד לוח הבקרה.

ועכשיו לדוגמה של וידג'ט קצת יותר מעניין 🙂

בדוגמה זו הוספנו וידג'ט שמטרתו להציג מידע אודות פוסטים מסוג "news".
הוידג'ט מציג את כמות הפוסטים במצב "פורסם", במצב "טיוטה" ואלו שנמצאים בפח האשפה. בנוסף לנתונים אלו, מוצג קישור שיוביל להוספת פוסט חדש מסוג זה.

add_action('wp_dashboard_setup', 'news_post_type_info'); 
function news_post_type_info() {
	wp_add_dashboard_widget('news_post_type_info_widget', 'News Posts Info', 'news_post_type_info_widget_content');
}
function news_post_type_info_widget_content() {
	$posts_sum = wp_count_posts("news")->publish + wp_count_posts("news")->draft + wp_count_posts("news")->trash;
	echo '
		<p>
		All: '.$posts_sum.'<br />
		Published: '.wp_count_posts("news")->publish.'<br />
		Draft: '.wp_count_posts("news")->draft.'<br />
		Trash: '.wp_count_posts("news")->trash.'<br /><br />
		<a href="/post-new.php?post_type=news">Add New Post</a>
		</p>
	';
}

תוצאה:

וכך נראה הוידג'ט הקצת יותר מורכב.
וכך נראה הוידג'ט הקצת יותר מורכב.

קליל, פשוט ושימושי מאוד, בהצלחה!

נהנת ממאמר זה? הירשם לרשימת התפוצה וקבל עדכונים על מאמרים חדשים!


כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *