Aggiungere i dati dei partecipanti FooEvents al plugin WooCommerce PDF Invoice
Per mostrare nella nostra fattura PDF WooCommerce i nomi dei partecipanti FooEvents, la fascia di prenotazione e la data, devi recuperare i dati dei partecipanti salvati nei meta dell’ordine e modificare di conseguenza il template della fattura. Assicurati di recuperare nome e cognome del partecipante dai dati dell’ordine FooEvents. Per farlo aggiungi il codice qui sotto al functions.php del tuo child theme:
global $fooeventsLoopCount;
$fooeventsLoopCount = 0;
add_filter('woocommerce_pdf_invoices_item_meta', function($val, $item, $order_data) {
global $fooeventsLoopCount;
$meta = $order_data->get_meta('WooCommerceEventsOrderTickets');
if(!is_array($meta) || empty($meta)) {
return '';
}
$metaMapped = array();
foreach($meta as $met) {
foreach($met as $me) {
$metaMapped[] = $me;
}
}
$val = '';
$kosten = $item->get_meta('pa_kosten');
if($kosten == "nein") {
$val .= 'Kein Mitglied
';
} else {
$val .= 'Mitglied
';
}
$data = $metaMapped[$fooeventsLoopCount];
if(!is_array($data)) {
return $val;
}
if(isset($data['WooCommerceEventsBookingOptions']) && !empty($data['WooCommerceEventsBookingOptions'])) {
$val .= 'Teilnehmer: ' . $data['WooCommerceEventsAttendeeName'] . ' ' . $data['WooCommerceEventsAttendeeLastName'] . '
';
$val .= 'Datum: ' . $data['WooCommerceEventsBookingOptions']['date_label'] . '
';
$val .= 'Ort: ' . $data['WooCommerceEventsBookingOptions']['slot_label'] . '
';
$fooeventsLoopCount += 1;
}
$val .= '';
return $val;
}, 20, 3);