Мне нужно чтобы на конкретной странице произвольного типа записи в select отображалось название этой записи
по умолчанию.
Что у меня получилось на данный момент:
То есть, сейчас я вывожу названия custom post types, но всегда, на всех страницах, по умолчанию выводится название записи, которая создана самой первой.
А мне нужно выводить так:
Когда находимся на странице "7 дней приключений на Гавайях" - чтобы по умолчанию в select было название именно этой страницы.
Код вывода select:
add_action( 'wpcf7_init', 'custom_add_form_tag_customlist' );
function custom_add_form_tag_customlist() {
wpcf7_add_form_tag( array( 'customlist', 'customlist*' ),
'custom_customlist_form_tag_handler', true );
}
function custom_customlist_form_tag_handler( $tag ) {
$tag = new WPCF7_FormTag( $tag );
if ( empty( $tag->name ) ) {
return '';
}
$customlist = '';
$query = new WP_Query(array(
'post_type' => 'programs',
'post_status' => 'publish',
'posts_per_page' => -1,
));
while ($query->have_posts()) {
$query->the_post();
$post_title = get_the_title();
$customlist .= sprintf( '<option value="%1$s">%2$s</option>',
esc_html( $post_title ), esc_html( $post_title ) );
}
wp_reset_query();
$customlist = sprintf(
'<select name="%1$s" id="%2$s">%3$s</select>', $tag->name,
$tag->name . '-options',
$customlist );
return $customlist;
}
Код select в самой форме:
[customlist your-field-name]
Может кто с подобным сталкивался, помогите пожалуйста.
Или же возможно, здесь стоит использовать не cf7, а что то другое...