הצגת custom content type בוורדפרס

כך תגרמו לסוגי תכנים שיצרתם בעצמכם/על ידי תוסף במערכת וורדפרס להיות מוצגים בעמוד הראשי, בעמודי הקטגוריות ובארכיונים.

אחד מהשינויים העצומים ביותר שוורדפרס גרסה 3 הביאה בחובה היא האפשרות הפשוטה והקלה ליצירת custom content type שונים ומשונים באמצעות שימוש ב-register_post_type בתוסף. כך למשל, יצרתי סוג תוכן מסוג 'סרטים':


class YouTubePostType {
	// Hooks
	function register_activation_hook() {
	}

	function init() {
		register_post_type('youtube',
			array(
				'label'   => __('YouTube'),
				'public'  => true,
				'show_ui' => true,
				'supports' => array('thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'comments', 'revisions', 'title', 'editor'),
				'taxonomies' => array('category','post_tag'),
				'show_in_nav_menus' =>true,
			)	
		);
		register_taxonomy_for_object_type('category', 'youtube');

	}
}

אני לא רוצה להכנס לבדיוק איך יוצרים custom content types בוורדפרס כי זה חורג מה-scope שלי במאמר הזה, אפילו שאולי יום יבוא ואני אכתוב על כך. יש לא מעט תוספים בוורדפרס שיוצרים סוגי תוכן ואני מאמין שכמות התוספים האלו תלך ותגדל. הבעיה העיקרית היא שכאשר אנו יוצרים content type ומגדירים שניתן לקטלג אותו לקטגוריות או לתגים – אנו נתקלים במצב שבו הפוסטים החדשים שלנו… פשוט לא מופיעים! למרות שיצרנו פוסט מסוג מסוים ושמרנו אותו לקטגוריה מסוימת, כשאנו נכנסים לקטגוריה הזו, אנו לא יכולים לראות את הפוסט!

לסיפור המרגיז הזה יש פתרון קל ופשוט – פשוט העתיקו את הקוד הבא אל functions.php של התמה שלכם:


/**
* make my custom content type available for archive page
*/ 
add_filter( 'pre_get_posts', 'my_get_posts' );

function my_get_posts( $query ) {
		$query->set( 'post_type', array( 'post', 'MY_CUSTOM_CONTENT_NAME') );
	return $query;
}

וכמובן שצריך לשנות את MY_CUSTOM_CONTENT_NAME לשם של התוכן שלכם, אפשר להוסיף שמות נוספים אם יצרתם יותר מתוכן אחד (רק לא לשכוח להפקיד בפסיקים ולשים בין מרכאות!). מה שהקוד הזה עושה בעצם הוא הוספת פילטר לכל לופ שמבקש פוסטים ושינוי השאילתה למסד הנתונים על מנת שיכיל סוגי תוכן חדשים.

אחרי זה כמעט מייד כל ה-custom content type שלכם יוצגו כמו שצריך באתר.

פוסטים נוספים שכדאי לקרוא

DALL·E 2024-09-06 12.34.24 - A visually engaging post about Python and cryptographic problems. The image should feature a dark-themed background with a glowing, futuristic Python
פתרונות ומאמרים על פיתוח אינטרנט

בעיות במימוש של פונקציות קריפטוגרפיות בפייתון

היום (16 לספטמבר) ממש, אני מעביר הרצאה ב-PyconIL 2024 על בעיות קריפטוגרפיות באפליקציות פייתון. לצערי אי אפשר להכניס את כל הבעיות הקריפטוגרפיות להרצאה אחת או

מיקרו בקרים

חיבור מצלמה למיקרובקר

חיבור מצלמה למיקרו בקר ויצירה של מצלמת אבטחה מרחוק בעלות של 20 שקל.

רספברי פיי

התקנת OpenCanary על רספברי פיי

מה זה OpenCanary ואיך אפשר להתקין אותה על רספברי פיי ולשדרג את אבטחת הרשת הביתית או המשרדית.

גלילה לראש העמוד