Tribe__Tickets__Privacy::rsvp_exporter( $email_address, int $page = 1 )

Exporter for Events Ticket RSVP Attendee


Parameters

$email_address

(Required)

$page

(int) (Optional)

Default value: 1


Top ↑

Return

(array)


Top ↑

Source

File: src/Tribe/Privacy.php

	public function rsvp_exporter( $email_address, $page = 1 ) {
		$number = 500; // Limit us to avoid timing out
		$page   = (int) $page;

		$export_items = array();

		// Get the attendees RSVPs for the given email.
		$rsvp_attendees = new WP_Query( array(
			'post_type'      => Tribe__Tickets__RSVP::ATTENDEE_OBJECT,
			'meta_key'       => '_tribe_rsvp_email',
			'meta_value'     => $email_address,
			'page'           => $page,
			'posts_per_page' => $number,
			'orderby'        => 'ID',
			'order'          => 'ASC',
		) );

		foreach ( $rsvp_attendees->posts as $attendee ) {

			$item_id = "tribe_rsvp_attendees-{$attendee->ID}";

			// Set our own group for RSVP attendees
			$group_id = 'rsvp-attendees';

			// Set a label for the group
			$group_label = __( 'Event Tickets RSVP Attendee Data', 'event-tickets' );

			$data = array();

			$data[] = array(
				'name'  => __( 'RSVP Title', 'event-tickets' ),
				'value' => get_the_title( $attendee->ID ),
			);

			$data[] = array(
				'name'  => __( 'Full Name', 'event-tickets' ),
				'value' => get_post_meta( $attendee->ID, '_tribe_rsvp_full_name', true ),
			);

			$data[] = array(
				'name'  => __( 'Email', 'event-tickets' ),
				'value' => get_post_meta( $attendee->ID, '_tribe_rsvp_email', true ),
			);

			$data[] = array(
				'name'  => __( 'Date', 'event-tickets' ),
				'value' => $attendee->post_date,
			);

			/**
			 * Allow filtering for the rsvp attendee data export.
			 *
			 * @since 4.7.6
			 * @param array  $data      The data array to export
			 * @param object $attendee  The attendee object
			 */
			$data = apply_filters( 'tribe_tickets_personal_data_export_rsvp', $data, $attendee );

			$export_items[] = array(
				'group_id'    => $group_id,
				'group_label' => $group_label,
				'item_id'     => $item_id,
				'data'        => $data,
			);
		}

		// Tell core if we have more comments to work on still
		$done = count( $rsvp_attendees->posts ) < $number;

		return array(
			'data' => $export_items,
			'done' => $done,
		);
	}

Top ↑

Changelog

Changelog
Version Description
4.7.5 Introduced.