我创建了一个自定义帖子类型,并在其中添加了一些字段。所有数据都已存储。但是我无法使用简码显示字段。如何分别显示字段?
要保存其他字段:
function Voordeeltips_save_meta_box( $post_id ) {
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
if ( $parent_id = wp_is_post_revision( $post_id ) ) {
$post_id = $parent_id;
}
$fields = [
'field_1',
'field_2',
'field_3',
'field_4',
];
foreach ( $fields as $field ) {
if ( array_key_exists( $field, $_POST ) ) {
update_post_meta( $post_id, $field, sanitize_text_field( $_POST[$field] ) );
}
}
}
add_action( 'save_post', 'Voordeeltips_save_meta_box' );
要显示它们,我使用:
add_shortcode( 'voordeeltips_shortcode', 'display_custom_post_type' );
function display_custom_post_type(){
$args = array(
'post_type' => 'voordeeltip',
'post_status' => 'publish',
'order' => 'ASC',
);
$string = '';
$query = new WP_Query( $args );
if( $query->have_posts() ){
$string .= '<ul>';
while( $query->have_posts() ){
$query->the_post();
$string .= '<li>' . '<div class="title1">' . get_the_title() .'</div>' .
'<div class="cta">' . get_post_meta ( get_the_ID(), 'field_1', true) .'</div>'
. get_the_post_thumbnail ().
'</li>';
}
$string .= '</ul>';
}
wp_reset_postdata();
return $string;
}