Ondersteuning » Code oplossingen gezocht » Een div class mee verzenden in een mail
Een div class mee verzenden in een mail
-
Hallo
Ik maak gebruik van contact form 7.
Ik heb per week verschillende sport evenementen in de all in one event caledar staan.
Nu kunnen mensen dus via een mail zich aanmelden voor een evenement.
Op dit moment heb ik dan via een dropdown menu een keuze voor de datum wanneer zij willen komen.Is het mogelijk dat ik deze datum automatisch laat mee verzenden in de mail.
Ik dacht dat dit misschien kon door de <div class=” “> mee te verzenden in de mail. Maar hoe doe ik dat?Of moet dit op een andere manier.
Alvast bedankt!!
-
dit is de xpath: //*[@id=”post-77″]/div/div[2]/div[2]/div[1]/div[2]
en dit is de css path: #post-77 > div > div.timely.ai1ec-single-event.ai1ec-event-id-77.ai1ec-event-instance-id-1 > div.ai1ec-event-details.ai1ec-clearfix > div.ai1ec-time.ai1ec-row > div.ai1ec-field-value.ai1ec-col-sm-9.dt-duration
Beste Danny,
Ik heb verschillende codes gevonden in:
public/sites/www.trainingzuid.nl/wp-content/plugins/all-in-one-event-calendar/app/view/event/time.php
De eerste code is om de datum weg te laten (in dit geval 10 februari):
switch ( $start_date_display ) {
case ‘hidden’:
break;
case ‘short’:
case ‘long’:
$property = $start_date_display . ‘_date’;
$output .= $this->{‘get_’ . $property}( $start, $break_years );
break;
default:
$start_date_display = ‘long’;
}De 2e code is om de begin tijd te weergeven (in dit geval 9:10):
if ( ! $event->is_allday() ) {
if ( ‘hidden’ !== $start_date_display ) {
$output .= apply_filters(
‘ai1ec_get_timespan_html_time_separator’,
Ai1ec_I18n::_x( ‘ @ ‘, ‘Event time separator’ )
);
}
$output .= $this->get_short_time( $start );
}en die van de eindtijd weet ik niet zeker.
als ik die verwijder krijg ik een error op de page.Ik denk dat de code voor alles bij elkaar deze is:
if (
! (
$event->is_instant() ||
( $event->is_allday() && $start_ts === $end_ts )
)
) {
$output .= apply_filters(
‘ai1ec_get_timespan_html_date_separator’,
Ai1ec_I18n::_x( ‘ – ‘, ‘Event start/end separator’ )
);Alvast bedankt!
grtjs
JustinIk bekijk het morgen even 😉
en … graag gedaan hoor!
Grtjs, DannyHeel erg bedankt Danny!
Ik hoor het graag als je wat nodig hebtGroetjes,
JustinHad je al wat kunnen vinden Danny?
Ben net thuis van men werk 🙂
Zal het straks of morgenvroeg even bekijken.Top
Neem de tijd
Ben allang blij dat je me wilt helpen!Het is mogelijk maar dan dien je de code aan te passen van de plugins … en dat laatste is niet echt een aanrader omdat je dan telkens er updates zijn, je deze code opnieuw moet aanpassen (zie vorig voorbeeld).
Een globale variabele maken in de plugin die de datum plaatst:
function mijn_funcs(){ global $mfuncs; $mfuncs = array('my_date' => $de_datum_variabele); }
Ik zet deze in een array, omdat je dan meerdere waardes kunt gebruiken.
Daarna, kan je net zoals in het vorige voorbeeld deze toevoegen aan het subject:
$subject.’ [van ID:’.$myid.’]’
wordt dan:
$subject.’ [van ID:’.$myid.’]’.$GLOBALS[‘mfuncs’][‘my_date’]Dit is heel wat werk, maar dan zou je het kunnen oplossen met 4 lijntjes code.
Nogmaals, het vergt steeds weer opnieuw aanpassen bij elke update van een plugin en is dus niet echt een aanrader …
Grtjs, Danny
Moet ik deze code in de plugin van de mail of van de kalender verwerken?
Groet,
Justinglobal $mfuncs;
$mfuncs = array(‘my_date’ => $de_datum_variabele);
in de kalender (deze onthoud dan de datum als globale)$subject.’ [van ID:’.$myid.’]’.$GLOBALS[‘mfuncs’][‘my_date’]
Is het mail stukje eerder beschreven.Je kan testen met:
$mfuncs = array(‘my_date’ => “voorbeeld data”);en dit in het subject zetten, om te zien dat je globale variabele wordt gelezen.
Oke danny,
Maakt het nog uit op welke lijn ik het zet?
Ik heb nu het gene als volgende in mijn mail formulier maar dat werk niet. nu zien mensen de code staan bij het formulier.
<p>Uw naam (verplicht)
[text* your-name] </p><p>Uw e-mail (verplicht)
[email* your-email] </p><p>Onderwerp
[$mfuncs = array(‘my_date’ => “voorbeeld data”);* your-subject] </p><p>Uw bericht
[textarea your-message] </p><p>[submit “Verzenden”]</p>
Groet,
JustinDanny ik heb begrepen wat je ermee bedoeld.
Ik de
function mijn_funcs(){
global $mfuncs;
$mfuncs = array(‘my_date’ => $de_datum_variabele);
}Gewoon ergens in het time.php bestand geplaatst.
De code in de mail aangepast.
en $mfuncs = array(‘my_date’ => “voorbeeld data”); in het onderwerp gezet.
Echter zie ik nu: $mfuncs = array(‘my_date’ => “voorbeeld data”); [van id:…] in het onderwerp binnen komen.
Ik zie er geen datum bij staan.
Moet ik die code voor de kalender wel in het time.php bestand plaatsen?
of moet deze in een ander bestand van de kalender?Groet,
JustinDag Justin,
Ben al blij dat je er ‘echt’ mee bezig bent 😉
Geef me de exacte naam eens van de plugin die de datum daar zet.
Dan bekijk even een totaal oplossing (al weten we dat we bij elke update …)
Gtrjs, DannyHey Danny,
All in one event calendar
Gemaakt door time.ly
Thnx!!
Oke een andere maar werkende benadering:
../wp-content/plugins/all-in-one-event-calendar/app/view/event/single.php
De lege lijn: 139, zet volgende:if(!session_id()) session_start(); $my_date = $args['start']; if(!isset($_SESSION['my_date'])) { $_SESSION['my_date'] = $my_date; }
dit is na lijn 138 die eindigt met );
Voorbeeld 1Dan in:
/wp-content/plugins/contact-form-7/includes/mail.php
op lijn 43 (NA: $use_html = (bool) $template[‘use_html’]; )Plaats deze code:
if(!session_id()) session_start(); $xtra = " Start : ".$_SESSION['my_date'];
en als laatste verander je iets verder :
return wp_mail( $recipient, $subject, $body, $headers, $attachments );
naar:
return wp_mail( $recipient, $subject.$xtra, $body, $headers, $attachments );
Hier krijg je dan meteen de start datum en tijd in het onderwerp.
Succes!
Grtjs, Danny
- Het onderwerp ‘Een div class mee verzenden in een mail’ is gesloten voor nieuwe reacties.