Home › Forums › Ticket Products › Event Tickets Plus › Customise Ticket Email
- This topic has 26 replies, 2 voices, and was last updated 8 years, 7 months ago by
Hassan Jiwani.
-
AuthorPosts
-
August 12, 2017 at 9:36 am #1334494
Hassan Jiwani
Participant1) How can I add my Logo on the Email Ticket to the top
2) How do i set the page size to A4, so its easier for customers to print their ticket?August 14, 2017 at 7:01 am #1334936Victor
MemberHiĀ Hassan!
Thanks for reaching out to us! š
Let me help you with those topics.
1. You can add your logo to the ticket email by customizing the email.php template file. We have a great article that explains how to do that here >Ā https://theeventscalendar.com/knowledgebase/themers-guide/
2. Unfortunately, there is no direct way of doing this as CSS styles are sometimes stripped out by certain email application and webmail providers, such as Gmail, so there isnāt any guaranteed way to force custom styles to render across all platforms. We do have an extension that will allow your users to download the ticket as a PDF, making it easier to print. See it here >Ā https://theeventscalendar.com/extensions/view-print-download-pdf-tickets/
I hope that helps! Is there anything else I can help you with? Let me know.
Best,
VictorAugust 15, 2017 at 3:02 am #1335346Hassan Jiwani
ParticipantWhat other plugin can i use apart from DK PDF plugin?
as my header image is not appearing, and the custom template i created for the ticket email the things i changed are not appearing in the PDF, its showing the original template.August 15, 2017 at 8:06 pm #1335861Victor
MemberHiĀ Hassan!
Unfortunately, the extension only works with the DK PDF plugin.
I’m sorry you are experiencing problems with your custom ticket email template.
Are you able to see your customized ticket email template in the email sent? Are you making a template override for it? If so, could you please share it with us so I can make some tests on my end and see if I can find anything?
Thanks,
VictorAugust 16, 2017 at 4:09 am #1335936Hassan Jiwani
ParticipantYes I followed the instructions and did an email template overide.
Here Attached is a print screen of the email,
and here is what it looks like in pdfAugust 16, 2017 at 6:50 am #1335979Victor
MemberHiĀ Hassan!
Thanks for sharing those screenshots.
That is something the PDF plugin itself is not picking up when generating the PDF ticket. Could you please share with us the code you are using to customize the ticket email?
We are limited in how much support we can give for custom development questions like this, but I’d be happy to take a look at your code to make some tests and help as much possible.
Let me know about it.
Best,
VictorAugust 16, 2017 at 7:09 am #1335991Hassan Jiwani
Participant<?php
/**
* Tickets Email Template
* The template for the email with the purchased tickets when using ticketing plugins (Like WooTickets)
*
* Override this template in your own theme by creating a file at [your-theme]/tribe-events/tickets/email.php
*
* This file is being included in events/lib/tickets/Tickets.php
* in the function generate_tickets_email_content. That function has a $tickets
* array with elements that have this fields:
* $tickets[] = array( ‘event_id’,
* ‘ticket_name’
* ‘holder_name’
* ‘order_id’
* ‘ticket_id’
* ‘security_code’)
*
* @package TribeEventsCalendar
* @version 4.5.3
*
*/
?>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html;charset=UTF-8″ /><p style=”text-align: center;”><span style=”font-size: 14pt;”>Your Event Ticket Portal To The Best Events In Town</span>
<title><?php esc_html_e( ‘Your tickets’, ‘event-tickets’ ); ?></title>
<meta name=”viewport” content=”width=device-width” />
<style type=”text/css”>
h1, h2, h3, h4, h5, h6 {
color : #0a0a0e;
}a, img {
border : 0;
outline : 0;
}#outlook a {
padding : 0;
}.ReadMsgBody, .ExternalClass {
width : 100%
}.yshortcuts, a .yshortcuts, a .yshortcuts:hover, a .yshortcuts:active, a .yshortcuts:focus {
background-color : transparent !important;
border : none !important;
color : inherit !important;
}body {
background : #ffffff;
min-height : 1000px;
font-family : sans-serif;
font-size : 14px;
}.appleLinks a {
color : #006caa;
text-decoration : underline;
}@media only screen and (max-width: 480px) {
body, table, td, p, a, li, blockquote {
-webkit-text-size-adjust : none !important;
}body {
width : 100% !important;
min-width : 100% !important;
}body[yahoo] h2 {
line-height : 120% !important;
font-size : 28px !important;
margin : 15px 0 10px 0 !important;
}table.content,
table.wrapper,
table.inner-wrapper {
width : 100% !important;
}table.ticket-content {
width : 90% !important;
padding : 20px 0 !important;
}table.ticket-details {
position : relative;
padding-bottom : 100px !important;
}table.ticket-break {
width : 100% !important;
}td.wrapper {
width : 100% !important;
}td.ticket-content {
width : 100% !important;
}td.ticket-image img {
max-width : 100% !important;
width : 100% !important;
height : auto !important;
}td.ticket-details {
width : 33% !important;
padding-right : 10px !important;
border-top : 1px solid #ddd !important;
}td.ticket-details h6 {
margin-top : 20px !important;
}td.ticket-details.new-row {
width : 50% !important;
height : 80px !important;
border-top : 0 !important;
position : absolute !important;
bottom : 0 !important;
display : block !important;
}td.ticket-details.new-left-row {
left : 0 !important;
}td.ticket-details.new-right-row {
right : 0 !important;
}table.ticket-venue {
position : relative !important;
width : 100% !important;
padding-bottom : 150px !important;
}td.ticket-venue,
td.ticket-organizer,
td.ticket-qr {
width : 100% !important;
border-top : 1px solid #ddd !important;
}td.ticket-venue h6,
td.ticket-organizer h6 {
margin-top : 20px !important;
}td.ticket-qr {
text-align : left !important
}td.ticket-qr img {
float : none !important;
margin-top : 20px !important
}td.ticket-organizer,
td.ticket-qr {
position : absolute;
display : block;
left : 0;
bottom : 0;
}td.ticket-organizer {
bottom : 0px;
height : 100px !important;
}td.ticket-venue-child {
width : 50% !important;
}table.venue-details {
position : relative !important;
width : 100% !important;
}a[href^=”tel”], a[href^=”sms”] {
text-decoration : none;
color : black;
pointer-events : none;
cursor : default;
}.mobile_link a[href^=”tel”], .mobile_link a[href^=”sms”] {
text-decoration : default;
color : #006caa !important;
pointer-events : auto;
cursor : default;
}
}@media only screen and (max-width: 320px) {
td.ticket-venue h6,
td.ticket-organizer h6,
td.ticket-details h6 {
font-size : 12px !important;
}
}@media print {
.ticket-break {
page-break-before : always !important;
}
}<?php do_action( ‘tribe_tickets_ticket_email_styles’ );?>
</style>
</head>
<body yahoo=”fix” alink=”#006caa” link=”#006caa” text=”#000000″ bgcolor=”#ffffff” style=”width:100% !important; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; margin:0 auto; padding:20px 0 0 0; background:#ffffff; min-height:1000px;”>
<div style=”margin:0; padding:0; width:100% !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:14px; line-height:145%; text-align:left;”>
<center>
<?php
do_action( ‘tribe_tickets_ticket_email_top’ );$count = 0;
$break = ”;
foreach ( $tickets as $ticket ) {
$count ++;if ( $count == 2 ) {
$break = ‘page-break-before:always !important;’;
}$event = get_post( $ticket[‘event_id’] );
$header_id = Tribe__Tickets__Tickets_Handler::instance()->get_header_image_id( $ticket[‘event_id’] );
$header_img = false;
if ( ! empty( $header_id ) ) {
$header_img = wp_get_attachment_image_src( $header_id, ‘full’ );
}$venue_label = ”;
$venue_name = null;if ( function_exists( ‘tribe_get_venue_id’ ) ) {
$venue_id = tribe_get_venue_id( $event->ID );
if ( ! empty( $venue_id ) ) {
$venue = get_post( $venue_id );
}$venue_label = tribe_get_venue_label_singular();
$venue_name = $venue_phone = $venue_address = $venue_city = $venue_web = ”;
if ( ! empty( $venue ) ) {
$venue_name = $venue->post_title;
$venue_phone = get_post_meta( $venue_id, ‘_VenuePhone’, true );
$venue_address = get_post_meta( $venue_id, ‘_VenueAddress’, true );
$venue_city = get_post_meta( $venue_id, ‘_VenueCity’, true );
$venue_state = get_post_meta( $venue_id, ‘_VenueStateProvince’, true );
if ( empty( $venue_state ) ) {
$venue_state = get_post_meta( $venue_id, ‘_VenueState’, true );
}
if ( empty( $venue_state ) ) {
$venue_state = get_post_meta( $venue_id, ‘_VenueProvince’, true );
}
$venue_zip = get_post_meta( $venue_id, ‘_VenueZip’, true );
$venue_web = get_post_meta( $venue_id, ‘_VenueURL’, true );
}// $venue_address_style: make sure no double-quotes in the content
$venue_address_style = “display:block; margin:0; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:13px;”;$venue_map_url = ”;
if ( true === tribe_show_google_map_link( $event->ID ) && $venue_id ) {
$venue_map_url = esc_url( tribe_get_map_link( $venue_id ) );
}if ( empty( $venue_map_url ) ) {
$venue_address_tag = ‘span’;
} else {
$venue_address_tag = ‘a’;
$venue_address_style .= ‘ color:#006caa !important; text-decoration:underline;’;
}}
$start_date = null;
/**
* Filters whether or not the event start date should be included in the ticket email
*
* @var boolean Include start date? Defaults to false
* @var int Event ID
*/
$include_start_date = apply_filters( ‘event_tickets_email_include_start_date’, false, $event->ID );if ( $include_start_date && function_exists( ‘tribe_get_start_date’ ) ) {
$start_date = tribe_get_start_date( $event, true );
}if ( function_exists( ‘tribe_get_organizer_ids’ ) ) {
$organizers = tribe_get_organizer_ids( $event->ID );
}$event_link = function_exists( ‘tribe_get_event_link’ ) ? tribe_get_event_link( $event->ID ) : get_post_permalink( $event->ID );
?>
<table class=”content” align=”center” width=”620″ cellspacing=”0″ cellpadding=”0″ border=”0″ bgcolor=”#ffffff” style=”margin:0 auto; padding:0;<?php echo $break; ?>”>
<tr>
<td align=”center” valign=”top” class=”wrapper” width=”620″>
<table class=”inner-wrapper” border=”0″ cellpadding=”0″ cellspacing=”0″ width=”620″ bgcolor=”#f7f7f7″ style=”margin:0 auto !important; width:620px; padding:0;”>
<tr>
<td valign=”top” class=”ticket-content” align=”left” width=”580″ border=”0″ cellpadding=”20″ cellspacing=”0″ style=”padding:20px; background:#f7f7f7;”>
<?php
if ( ! empty( $header_img ) ) {
$header_width = esc_attr( $header_img[1] );
if ( $header_width > 580 ) {
$header_width = 580;
}
?>
<table border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%”>
<tr>
<td class=”ticket-image” valign=”top” align=”left” width=”100%” style=”padding-bottom:15px !important;”>
” width=”<?php echo esc_attr( $header_width ); ?>” alt=”<?php echo esc_attr( $event->post_title ); ?>” style=”border:0; outline:none; height:auto; max-width:100%; display:block;” />
</td>
</tr>
</table>
<?php
}
?>
<table border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%” align=”center”>
<tr>
<td valign=”top” align=”center” width=”100%” style=”padding: 0 !important; margin:0 !important;”>“><?php echo $event->post_title; ?>
<?php if ( ! empty( $start_date ) ): ?>
<span style=”color:#0a0a0e !important”><?php echo $start_date; ?></span>
<?php endif; ?>
</td>
</tr>
</table>
<table class=”whiteSpace” border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%”>
<tr>
<td valign=”top” align=”left” width=”100%” height=”30″ style=”height:30px; background:#f7f7f7; padding: 0 !important; margin:0 !important;”>
<div style=”margin:0; height:30px;”></div>
</td>
</tr>
</table>
<table class=”ticket-details” border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%” align=”center”>
<tr>
<td class=”ticket-details” valign=”top” align=”left” width=”100″ style=”padding: 0; width:100px; margin:0 !important;”><?php esc_html_e( ‘Ticket #’, ‘event-tickets’ ); ?>
<span style=”color:#0a0a0e !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:15px;”><?php echo $ticket[‘ticket_id’]; ?></span>
</td>
<td class=”ticket-details” valign=”top” align=”left” width=”120″ style=”padding: 0; width:120px; margin:0 !important;”><?php esc_html_e( ‘Ticket Type’, ‘event-tickets’ ); ?>
<span style=”color:#0a0a0e !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:15px;”><?php echo $ticket[‘ticket_name’]; ?></span>
</td>
<td class=”ticket-details” valign=”top” align=”left” width=”120″ style=”padding: 0 !important; width:120px; margin:0 !important;”><?php esc_html_e( ‘Purchaser’, ‘event-tickets’ ); ?>
<span style=”color:#0a0a0e !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:15px;”><?php echo $ticket[‘holder_name’]; ?></span>
</td>
<td class=”ticket-details new-row new-left-row” valign=”top” align=”left” width=”120″ style=”padding: 0; width:120px; margin:0 !important;”><?php esc_html_e( ‘Security Code’, ‘event-tickets’ ); ?>
<span style=”color:#0a0a0e !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:15px;”><?php echo $ticket[‘security_code’]; ?></span>
</td>
</tr>
</table>
<table class=”whiteSpace” border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%”>
<tr>
<td valign=”top” align=”left” width=”100%” height=”30″ style=”height:30px; background:#f7f7f7; padding: 0 !important; margin:0 !important;”>
<div style=”margin:0; height:30px;”></div>
</td>
</tr>
</table>
<?php
if ( $venue_name || ! empty( $organizers ) ) {
?>
<table class=”ticket-venue” border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%” align=”center”>
<tr>
<?php
if ( $venue_name ) {
?>
<td class=”ticket-venue” valign=”top” align=”left” width=”300″ style=”padding: 0 !important; width:300px; margin:0 !important;”><?php esc_html_e( $venue_label, ‘event-tickets’ ); ?>
<table class=”venue-details” border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%” align=”center”>
<tr>
<td class=”ticket-venue-child” valign=”top” align=”left” width=”130″ style=”padding: 0 10px 0 0 !important; width:130px; margin:0 !important;”>
<span style=”color:#0a0a0e !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:13px; display:block; margin-bottom:5px;”><?php echo $venue_name; ?></span>
<<?php echo $venue_address_tag; ?> style=”<?php echo esc_attr( $venue_address_style ); ?>” <?php if ( ‘a’ === $venue_address_tag ) { printf( ‘href=”%s”‘, $venue_map_url ); } ?>>
<?php echo $venue_address; ?><br />
<?php
if ( $venue_city && ( $venue_state || $venue_zip ) ) :
printf( ‘%s, %s %s’, $venue_city, $venue_state, $venue_zip );
else:
echo $venue_city;
endif;
?>
</<?php echo $venue_address_tag; ?>>
</td>
<td class=”ticket-venue-child” valign=”top” align=”left” width=”100″ style=”padding: 0 !important; width:140px; margin:0 !important;”>
<span style=”color:#0a0a0e !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:13px; display:block; margin-bottom:5px;”><?php echo $venue_phone; ?></span>
<?php if ( ! empty( $venue_web ) ): ?>
” style=”color:#006caa !important; display:block; margin:0; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:13px; text-decoration:underline;”><?php echo $venue_web; ?>
<?php endif ?>
</td>
</tr>
</table>
</td>
<?php
}//end ifif ( ! empty( $organizers ) ) {
?>
<td class=”ticket-organizer” valign=”top” align=”left” width=”140″ style=”padding: 0 !important; width:140px; margin:0 !important;”><?php echo tribe_get_organizer_label( count( $organizers ) < 2 ); ?>
<?php foreach ( $organizers as $organizer_id ) { ?>
<span
style=”color:#0a0a0e !important; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:15px; display:block; padding-bottom:5px;”><?php echo tribe_get_organizer( $organizer_id ); ?></span>
<?php } ?>
</td>
<?php
}//end if
?>
</tr>
</table>
<?php
}//end if
?>
<table border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%” align=”center”>
<tr>
<td class=”ticket-footer” valign=”top” align=”left” width=”100%” style=”padding: 0 !important; width:100%; margin:0 !important;”>
” style=”color:#006caa !important; display:block; margin-top:20px; font-family: ‘Helvetica Neue’, Helvetica, sans-serif; font-size:13px; text-decoration:underline;”><?php echo home_url(); ?>
</td>
</tr>
</table>
</td>
</tr>
</table>
<?php do_action( ‘tribe_tickets_ticket_email_ticket_bottom’, $ticket ); ?>
<table class=”whiteSpace” border=”0″ cellpadding=”0″ cellspacing=”0″ width=”100%”>
<tr>
<td valign=”top” align=”left” width=”100%” height=”100″ style=”height:100px; background:#ffffff; padding: 0 !important; margin:0 !important;”>
<div style=”margin:0; height:100px;”></div>
</td>
</tr>
</table>
</td>
</tr>
</table>
<?php
}//end foreachdo_action( ‘tribe_tickets_ticket_email_bottom’ );
?>
</center>
</div>
</body>
</html>August 17, 2017 at 5:30 am #1336675Victor
MemberHi Hassan!
It seems that the code got broken by the editor, so could you please place the code into a zip file and attach it to the post?
Or, you could also save it in a Google Drive and share the link with us.
Thanks,
VictorAugust 17, 2017 at 6:05 am #1336697Hassan Jiwani
ParticipantSee Attached
August 17, 2017 at 8:54 pm #1337187Victor
MemberHi Hassan!
Thanks for sending over the zip file. I will make some tests in my own local installation and will get back to you with the results.
I’d appreciate your patience.
Thanks,
VictorAugust 25, 2017 at 1:26 am #1340167Hassan Jiwani
ParticipantIts been Over a week?
August 25, 2017 at 7:56 am #1340255Victor
MemberThis reply is private.
August 25, 2017 at 8:34 am #1340274Hassan Jiwani
ParticipantI replaced: public_html/wp-content/themes/ticketbox/tribe-events/tickets/email.php
There Must be something wrong with the file you sent me, it appears like this, even the ticket doesn’t show:
August 25, 2017 at 11:17 am #1340410Victor
MemberThis reply is private.
August 31, 2017 at 12:33 pm #1343324Hassan Jiwani
Participantis there any way i can centerise my logo?
-
AuthorPosts
- The topic ‘Customise Ticket Email’ is closed to new replies.

