- WordPress :4.9.9
- Statut : non résolu
- This topic has 5 réponses, 2 participants, and was last updated il y a 4 months et 1 week by
momofr@free.fr.
- AuteurMessages
- 6 octobre 2018 à 20 h 48 min #2213693
Bonjour,
Ma configuration WP actuelle
- Adresse du site : http://www.capital-first.ch
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!
8 octobre 2018 à 9 h 15 min #2214173Salut, 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.10 octobre 2018 à 8 h 44 min #2214591Salut,
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>'; }
10 octobre 2018 à 10 h 04 min #2214603Salut, 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.12 octobre 2018 à 8 h 18 min #2215168Bonjour,
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!
12 octobre 2018 à 9 h 19 min #2215178Oui, mais là le thème est payant on ne peut pas t’aider il faut une licence pour comprendre son fonctionnement.
- AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.