я использовал CMB2 в моей пользовательской теме, и я хочу загрузить пользовательское изображение на странице категорий по умолчанию с CMB2.
Текстовое поле правильно отображается спереди. Но wp_get_attachment_image
не работает правильно. Что здесь не так?
CMB регистр метабокса:
add_action( 'cmb2_admin_init', 'term_metabox_register' );
function term_metabox_register() {
$prefix = 'my_term_';
$cat_field = new_cmb2_box( array(
'id' => $prefix . 'term_metabox',
'title' => esc_attr__( 'Category Options', 'text-domain' ),
'object_types' => array( 'term' ), // Tells CMB2 to use term_meta vs post_meta
'taxonomies' => array( 'category' ),
) );
$cat_field->add_field( array(
'name' => 'Background Image',
'desc' => 'Upload your background image.',
'id' => $prefix . 'file',
'type' => 'file',
) );
$cat_field->add_field( array(
'name' => 'Custom Text',
'desc' => 'Custom description.',
'id' => $prefix . 'custom_text',
'type' => 'text',
) );
}
Выход:
$categories = get_the_category();
$category_id = $categories[0]->cat_ID;
echo get_term_meta( $category_id, 'my_term_custom_text', 1 ); // This works.
echo wp_get_attachment_image( get_term_meta( $category_id, 'my_term_file', 1 ), 'large' ); // Not works.
Задача ещё не решена.
Других решений пока нет …