ContactForm 7 demande particulière

  • WordPress :4.9.9
  • Statut : non résolu
6 sujets de 1 à 6 (sur un total de 6)
  • Auteur
    Messages
  • #2213693
    Raboud44
    Participant
    Initié WordPress
    3 contributions

    Bonjour,

    Ma configuration WP actuelle

    Problème(s) rencontré(s) :

    Je recherche de quelle manière je peux intégrer un élément de ma page dans un formulaire ContactForm7, je m’explique:

    Mes clients peuvent remplir un formulaire sur chacune de mes annonces et lorsqu’ils envoient j’ai un détail comme l’url de l’annonce la requêtes, etc, etc, cependant j’aimerais pouvoir rajouter dans l’envoi de l’e-mail pour quel type d’objet et quelle ville l’objet fait référence cela me permettrait de pouvoir faire un tri dans mon CRM quand j’exporte les mails sur notre plateforme!

    Est ce que quelqu’un sait quel morceau de code je dois entrer dans mon code dynamic Hidden de Contact form?

    Merci d’avance pour vos réponses qui m’aideront fortement!

    #2214173
    momofr@free.fr
    Modérateur
    Maître WordPress
    2135 contributions

    Salut, tu peux essayer de passer par des shortcodes en utilisant contact-form-7-shortcode-enabler qui te permet de rendre actifs des shortcodes dans les formulaires.

    Il te reste à créer les shortcodes des éléments à récupérer, par exemple le titre du bien (post_title) avec cette fonction :

    function myshortcode_post_title( ){
       return get_the_title();
    }
    add_shortcode( 'post_title', 'myshortcode_post_title' );

    Tu peux mettre le shortcode [post_title] dans le formulaire ensuite.

    Si tu disposes du champ d’extrait dans tes biens tu peux l’utiliser pour saisir la ville et là aussi avec une fonction comme celle-ci :

    function myshortcode_the_excerpt( ){
       return get_the_excerpt();
    }
    add_shortcode( 'the_excerpt', 'myshortcode_the_excerpt' );

    Tu peux mettre le shortcode [the_excerpt] dans le formulaire ensuite.

    Tu mets les fonctions dans ton fichier functions.php du thème (si enfant) ou tu utilises une extension comme Code Snippet pour ajouter ces fonctions au site WordPress.

    Pour pouvoir transmettre les données dynamique via le courriel admin depuis CF7 il faut utiliser |’extension contact-form-7-dynamic-text qui bien que plus suivie fonctionne très bien.

    Pour construire le formulaire tu peux :

    • afficher les données dynamiques récupérées (dynamictext)
    • masquer les données dynamiques récupérées (dynamichidden)

    A toi de voir (Cf. captures jointes).

    Attention à la saisie des shortcodes dans le champ de valeur, ne pas mettre les accolades droites [] et supprimer les guillemets doubles “”, tu saisis ton shortcode entre guillemets simples : ‘post_title’ et ‘the_excerpt’.

    Tu ajoutes les champs dynamique dans ton courriel retour (CF. capture jointe) et recevras les informations.

    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2214591
    Raboud44
    Participant
    Initié WordPress
    3 contributions

    Salut,

    Je te remercie de ta réponse très complète, cependant je n’y arrive pas…

    J’ai bien installé les extensions que tu me recommandes mais je n’arrive pas trouver quel morceau de code je dois intégrer pour aller récupérer la donnée car il y en a plusieurs différents pour le même contenu… voilà un exemple de se que j’ai comme fichier:

    $prop_id = get_post_meta( get_the_ID(), 'fave_property_id', true );
    $prop_price = get_post_meta( get_the_ID(), 'fave_property_price', true );
    $prop_size = get_post_meta( get_the_ID(), 'fave_property_size', true );
    $land_area = get_post_meta( get_the_ID(), 'fave_property_land', true );
    $bedrooms = get_post_meta( get_the_ID(), 'fave_property_bedrooms', true );
    $bathrooms = get_post_meta( get_the_ID(), 'fave_property_bathrooms', true );
    $year_built = get_post_meta( get_the_ID(), 'fave_property_year', true );
    $garage = get_post_meta( get_the_ID(), 'fave_property_garage', true );
    $property_status = houzez_taxonomy_simple('property_status');
    $property_type = houzez_taxonomy_simple('property_type');
    $garage_size = get_post_meta( get_the_ID(), 'fave_property_garage_size', true );
    $additional_features_enable = get_post_meta( get_the_ID(), 'fave_additional_features_enable', true );
    $additional_features = get_post_meta( get_the_ID(), 'additional_features', true );
    $prop_details = false;
    
    if( !empty( $prop_id ) ||
        !empty( $prop_price ) ||
        !empty( $prop_size ) ||
        !empty( $land_area ) ||
        !empty( $bedrooms ) ||
        !empty( $bathrooms ) ||
        !empty( $year_built ) ||
        !empty( $property_status ) ||
        !empty( $property_type ) ||
        !empty( $garage )
    ) {
        $prop_details = true;
    }
    
    $hide_detail_prop_fields = houzez_option('hide_detail_prop_fields');
    
    if( $prop_details ) {
    ?>
    <div id="detail" class="detail-list detail-block target-block">
        <div class="detail-title">
            <h2 class="title-left"><?php esc_html_e( 'Detail', 'houzez' ); ?></h2>
    
            <?php if( $hide_detail_prop_fields['updated_date'] != 1 ) { ?>
            <div class="title-right">
                <p><?php esc_html_e( 'Date insertion:', 'houzez' ); ?> <?php the_modified_time('j F Y'); ?> <?php esc_html_e( 'at', 'houzez' ); ?> <?php the_modified_time('G:i a'); ?> </p>
            </div>
            <?php } ?>
    
        </div>
        <div class="alert alert-info">
            <ul class="list-three-col">
                <?php
                if( !empty( $prop_id ) && $hide_detail_prop_fields['prop_id'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Property ID:', 'houzez').'</strong> '.houzez_propperty_id_prefix($prop_id).'</li>';
                }
                if( !empty( $land_area ) && $hide_detail_prop_fields['land_area'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Land Area:', 'houzez'). '</strong> '.houzez_property_land_area( 'after' ).'</li>';
                }
                if( !empty( $bedrooms ) && $hide_detail_prop_fields['Salle:'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Salle:', 'houzez').'</strong> '.esc_attr( $bedrooms ).'</li>';
    			}
                if( !empty( $bathrooms ) && $hide_detail_prop_fields['Terrasse; manger:'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Terrasse:', 'houzez').'</strong> '.esc_attr( $bathrooms ).'</li>';
                }
                if( !empty( $garage ) && $hide_detail_prop_fields['garages'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Place de parc:', 'houzez').'</strong> '.esc_attr( $garage ).'</li>';
                }
                if( !empty( $garage_size ) && $hide_detail_prop_fields['garages'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'CA annuel', 'houzez').'</strong> '.esc_attr( $garage_size ).'</li>';
                }          
                if( !empty( $prop_size ) && $hide_detail_prop_fields['area_size'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Loyer mensuel', 'houzez'). '</strong> '.houzez_property_size( 'after' ).'</li>';
                }
                if( !empty( $year_built ) && $hide_detail_prop_fields['year_built'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Year Built:', 'houzez').'</strong> '.esc_attr( $year_built ).'</li>';
                }
                if( !empty( $property_type ) && ($hide_detail_prop_fields['prop_type']) != 1 ) {
                    echo '<li class="prop_type"><strong>'.esc_html__( 'Property Type:', 'houzez').'</strong> '.esc_attr( $property_type ).'</li>';
                }
                if( !empty( $property_status ) && ($hide_detail_prop_fields['prop_status']) != 1 ) {
                    echo '<li class="prop_status"><strong>'.esc_html__( 'Property Status:', 'houzez').'</strong> '.esc_attr( $property_status ).'</li>';
                }
    	    if( !empty( $prop_price ) && $hide_detail_prop_fields['sale_rent_price'] != 1 ) {
                    echo '<li><strong>'.esc_html__( 'Price:', 'houzez'). '</strong> '.houzez_listing_price().'</li>';
                }

    #2214603
    momofr@free.fr
    Modérateur
    Maître WordPress
    2135 contributions

    Salut, en fait tu utilises le thème Premium « Houzez » consulte la documentation car il est compatible Contact form 7 et tu as une section prévue pour ça. Les forums WPFR sont dédiés aux thèmes est extensions gratuites, si tu as un souci avec l’intégration CF7 contacte le support du thème ici.

    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2215168
    Raboud44
    Participant
    Initié WordPress
    3 contributions

    Bonjour,

    Je te remercie j’ai bien essayé de leur demander mais impossible d’obtenir une réponse claire et une manière de faire c’est pour cela que je m’étais retournés ici car il est vraiment top se forum sa réponds à plein de mes questions!

    #2215178
    momofr@free.fr
    Modérateur
    Maître WordPress
    2135 contributions

    Oui, mais là le thème est payant on ne peut pas t’aider il faut une licence pour comprendre son fonctionnement.

6 sujets de 1 à 6 (sur un total de 6)
  • Vous devez être connecté pour répondre à ce sujet.