Using in My Calendar

Using My Tickets integrated into My Calendar is almost identical to using it with a custom post type, except that the event date, event time, and location data is pulled from your My Calendar event instead of from the post.

My Tickets and Recurring Events

At this time, I don’t recommend that you use My Tickets to sell tickets on recurring or grouped events in My Calendar; the way My Tickets handles event data is not compatible with complex events.

For singular events, it’s very straightforward.

When My Tickets is installed, it will replace the default ‘Registration’ section in your My Calendar Events Manager with the ticketing set up form (as documented in the custom post types form.)

I can’t see how to sell tickets from My Calendar!

It’s possible that you won’t be able to see this form when you first install My Tickets with My Calendar. My Calendar includes options to disable the registration input fields on both a global and an individual level, which can mean that these fields are hidden. If you can’t find the registration information panel under My Calendar > Add Events, there are two places to check.

  1. My Calendar > Settings > Input Settings Make sure that the “Registration” options are enabled for input.
  2. My Calendar > Add Event > Screen Options (Screen options are found in the top right corner of the screen.) Make sure that the registration input options are enabled for you, personally.

The add to cart form is automatically added to your standard details pop-up when viewing My Calendar in either List or Grid mode, and can also be added to Upcoming Events lists or any other custom template using the template tag {register}.

Notification Messages

Notification messages support twelve default template tags to provide information to your purchasers and administrators. You can add additional notification messages by using the My Tickets custom field api.

The content produced by some of these tags is simple strings, but others produce more complicated data. All of the tags automatically toggle their formats depending on whether you’re sending HTML or plaintext email.

A link to the user’s receipt.
For e-tickets or printable tickets, a list of the purchased tickets.
The purchaser’s name, as provided in the shopping cart.
The name of your site.
The purchase’s internal payment ID. (Probably only useful for admin messages!)
Purchase data: tickets purchased, how many, at what price.
The purchaser’s provided shipping address.
All transaction data from the payment gateway.
The payment gateway’s transaction ID.
For offline payments, the amount owed on the purchase.
The ticketing method chosen by the purchaser.

In general, I recommended that you at minimum provide your purchaser’s with their receipt link and their purchase data, regardless of the ticketing and payment methods you allow.

Main Settings

The main settings page for My Tickets is where you:

  • set your license key, entitling you to support and updates
  • determine whether to send email as HTML or plain text
  • designate the recipient of administrative email notifications and the sending address for notifications sent to purchasers
  • Write your notification messages for both administrators and purchaser
  • Determine which post types you would like to use for ticketing

The most significant section of this is the email notifications, which has it’s own article in this documentation. Otherwise, you need to know that you only need the license key in order to be eligible for support and updates (no support of any kind is provided without a license key).

My Tickets will work with any public post type, but the user interface for setting up your tickets is added as a meta box in the post editor administration. If you have a public post type that uses a custom interface, there’s no guarantee that you’ll be able to set up tickets for that post type.


There are three cases where email notifications can be sent for any purchase: successful purchases, failed purchases, and refunded purchases. Refunds can only be processed from the payment gateway at this time; there’s no mechanism to refund a purchase from within My Tickets. You’ll need to login to your payment processor to post a refund.

In all cases, an email will be sent both to the administrative recipient and to the purchaser. All messages can be customized, and can be sent either as plain text or as HTML. By default, they’re sent as very simple HTML.

For offline payments, the “Completed” message will actually be sent immediately, without waiting for payment. In the administration, the payment will be marked as “Pending” until you manually mark it as received. At that time, the purchaser will receive a second notification indicating that their payment is completed.

Ticket IDs are not generated until the payment is completed, so for any payment that hasn’t been completed, no tickets will exist.

Payment process

The payment form re-confirms the shopping cart, but without the options to change the number of tickets or remove a ticket. The payment fields required can vary widely; if the shipping option is enabled, the purchaser’s address will be required. will request the usual credit card information, etc.

Credit card numbers are never saved to your site by any payment gateway developed by or sold by Joe Dolson Accessible Web Design; but I can’t make guarantees about any payment gateways you have custom developed or purchase elsewhere.

Example of Payment Form

Shopping Cart

The shopping cart shows a variety of information about the events, including the title, date, and time. If the event came from My Calendar, it’s not always possible to provide a link back to the event, in which case the title will be unlinked. For posts and post types, there will always be a link back to the post permalink with the title.

Events that have featured images will also include the image for that event in the shopping cart.

At the first stage of the shopping cart, purchasers need to add their name, email address, ticket type, and choose their preferred payment gateway. If only one payment gateway is configured, the cart will automatically be set to that gateway.

Simple gateways (like the provided PayPal standard gateway) don’t require any additional name or email information; gateways that do require that information will have it automatically entered from the previous fields, so users don’t need to enter the information twice.

All tickets in a given cart need to use the same type of ticket.

Shopping Cart example

Add to cart forms

Add to Cart form example

The form to add an event to your cart can be automatically added to any My Calendar event or to any type of post or Page in WordPress. There are plugin settings that impact what will be shown, but in general it will include:

  1. A notice indicating any current restrictions. In the shown example, the event is happening too soon for tickets to be shipped by mail – when you’ve configured a number of days it general takes for tickets to be shipped by mail, that option will be automatically restricted if an event is happening too soon for the tickets to be shipped.
  2. The number of tickets remaining for the event.
  3. Fields to select the number of tickets for each ticket type, along with the price of that ticket. In this example, the tickets are being sold using “continuous” counting, so the number of tickets remaining is displayed above the ticket types. If this was being sold using “discrete” counting, the number of tickets remaining for each ticket type would be shown.
  4. An Add to Cart button

Alternate add to cart form, with discrete counting and single-purchase only.

When the event is added to the cart, a notice is displayed that indicates that the cart has been updated and providing a link to the shopping cart page for the user to complete their purchase.

Additionally, if you’re using the Quick Cart (which can be added to a theme filter, via a widget, or via the shortcode “[quick-cart]”), the number of tickets in the cart and the total price of those tickets will be updated at the same time.

The “Add to Cart” form is not the only way to add tickets to a cart. You can also add tickets to a cart using a link. The format for an add to cart link is /cart_page/?mt_add_to_cart=true&event_id=POSTID&ticket_type=TYPE&count=COUNT.

Try it: Add 2 adult tickets to demo event.

Ticket Types

Shows the select menu for choosing ticket types.My Tickets supports four types of tickets: e-tickets, printable, will call, and postal, to try and best integrate with your event work flow. The type of ticket purchased is determined at the time of payment, so it’s not possible to mix and match events and ticket types: all events need to be sold with the same available types of ticketing.

E-tickets are intended to be presented at the event using a mobile device. You can use your own mobile phone with any QR code reader to scan the ticket and verify it.

Printable tickets are the same as e-tickets, except that they’re designed to be printed. You can also scan the QR code on a printable ticket to verify it.

Will Call assumes that you produce your tickets as a separate process, and will simply produce a report of purchasers to check against and prepare tickets for pick-up. You can produce a list of ticket purchasers and the tickets they purchased from the reporting tab in the My Tickets settings.

Postal tickets assume that you will print a ticket for the purchaser and ship it to them. My Tickets allows you to set a single price for shipping that will be added to an order; it doesn’t provide any method to automatically produce shipping costs. As an administrator, you’ll have access to view the printable ticket for any purchaser, so you can use that to print a ticket if you wish, or produce tickets using a completely independent process.

You can enable any combination of tickets and the purchaser choose the type of ticket they want to purchase.

E-tickets and printable tickets can be extensively customized using theme template files. The templating in My Tickets includes a library of templating functions that you can use in your ticket templates.


receiptImmediately following a completed cart submission, purchaser will receive a notification from your web site about their purchase. The information included in that notification email is set in settings, but it should always include a link to the purchase receipt.

Purchases that were made using an off-line payment type will still receive a receipt link, but in the ‘Payment’ section of the receipt, it will indicate that the payment has not yet been completed. Once you mark the purchase as Completed in the Payments section of the WordPress admin, the receipt will include those payment details.

The text “Add your business name and address to the post content” is customized by editing the WordPress Page My Tickets creates for your receipts. This is recommend content, standard for a receipt; but you can add any information you need onto your receipts.

Receipts can be extensively customized using theme template files. The templating in My Tickets includes a library of templating functions that you can use in your receipt or ticket templates.