Peroprty

Plain Text

Author: ahambridge

1 months ago 1,001 B


add_filter('wpcf7_form_tag', 'cf7_property_dropdown_options', 10, 2);

function cf7_property_dropdown_options($tag, $unused = null) {
    if ($tag['name'] !== 'property') {
        return $tag;
    }

    $args = array(
        'post_type'      => 'page',
        'posts_per_page' => -1,
        'meta_key'       => '_wp_page_template',
        'meta_value'     => 'page-propertydetails.php',
        'orderby'        => 'title',
        'order'          => 'ASC',
    );

    $query = new WP_Query($args);
    $options = array('Choose a property');

    if ($query->have_posts()) {
        while ($query->have_posts()) {
            $query->the_post();
            $property_name = get_field('property_name');
            if ($property_name) {
                $options[] = $property_name;
            }
        }
        wp_reset_postdata();
    }

    $tag['raw_values'] = $options;
    $tag['values'] = $options;
    $tag['labels'] = $options;

    return $tag;
}