Iniciar un proyecto

Añadir los asistentes de FooEvents a la factura PDF de WooCommerce

Para mostrar en nuestra factura PDF de WooCommerce los nombres de los asistentes de FooEvents, la franja y la fecha de la reserva, lea los datos de los asistentes guardados en los metadatos del pedido y adapte la plantilla de la factura. El nombre y los apellidos proceden de los datos del pedido de FooEvents. Para ello, añada el código de abajo al archivo functions.php de su tema hijo:

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