Démarrer un projet

Ajouter les participants FooEvents à la facture PDF WooCommerce

Pour afficher dans notre facture PDF WooCommerce les noms des participants FooEvents, le créneau et la date de réservation, récupérez les données des participants enregistrées dans les métadonnées de la commande et adaptez le modèle de facture. Le prénom et le nom viennent des données de commande de FooEvents. Ajoutez pour cela le code ci-dessous au fichier functions.php de votre thème enfant :

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);