« בחזרה לתיעוד

הוספת CPT לעמודי ארכיון בתבנית

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

ראשית כל, יש לפתוח מבנה תוכן מותאם אישית בתיקיית content בתבנית בת, תחת השם content-SLUG.php כאשר המילה SLUG היא השם של מבנה התוכן הרצוי. מומלץ להעתיק מאחד הקבצים הקיימים שלנו ולערוך לפי הצורך.

לדוגמא: אם נרצה לפתוח מבנה תוכן של גריד עם 6 עמודות, נקרא ל-SLUG שלו grid_6, כך ששם הקובץ יצא content/content-grid_6.php.

כדי שנוכל להשתמש בקובץ החדש, יש להוסיף את הקוד הבא ל-functions.php וכך המערכת תוכל לזהות את ה-CPT החדש:

function pojo31106_add_post_type_to_smart_page( $post_types = array() ) {
	$post_types[] = 'YOUT_CPT_SLUG';
	return $post_types;
}
add_filter( 'pf_format_content_list', 'pojo31106_add_post_type_to_smart_page' );

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

function pojo31106_smart_page_add_fields( $fields = array() ) {
	$cpt = 'YOUT_CPT_SLUG';

	$fields[] = array(
		'id' => 'content',
		'type' => Pojo_MetaBox::FIELD_HIDDEN,
		'std' => $cpt,
	);
	
	// If you want filter by Taxonomy
	//$fields[] = array(
	// 'id' => 'taxonomy',
	// 'type' => Pojo_MetaBox::FIELD_HIDDEN,
	// 'std' => 'CUSTOM_TAXONOMY_SLUG',
	//);
	
	//$fields[] = array(
	// 'id' => 'taxonomy_terms',
	// 'title' => __( 'Choose Category', 'pojo' ),
	// 'type' => Pojo_MetaBox::FIELD_TAXONOMY_TERM_CHECKBOX,
	// 'taxonomy' => 'CUSTOM_TAXONOMY_SLUG',
	//);
	
	$fields[] = array(
		'id' => 'display_type',
		'title' => __( 'Select Content Layout', 'pojo' ),
		'type' => Pojo_MetaBox::FIELD_SELECT,
		'options' => array(
			'' => __( 'Default', 'pojo' ),
			'grid_6' => __( 'Grid 6', 'pojo' ),
		),
		'std' => '',
	);
	
	return $fields;
}
add_filter( 'pf_list_posts_cpt-YOUT_CPT_SLUG', 'pojo31106_smart_page_add_fields' );

שימו לב: יש לשנות את הערכים המופיעים באותיות גדולות לפי הצרכים שלכם: YOUT_CPT_SLUG / CUSTOM_TAXONOMY_SLUG

במידה ותרצו לקחת את זה לשלב יותר מתקדם, אתם מוזמנים להציץ בקובץ: `core/addons/galleries/classes/class-pojo-gallery-cpt.php` ולראות איך אפשר להוסיף עוד שדות בהתאם (מספר פוסטים בעמוד, מיון לפי, ועוד).

« בחזרה לתיעוד