Timetable & Event Schedule

Free WordPress Schedule plugin will help you create a clean-looking calendar of events with custom column names, details, event head avatars and background colors. A user-friendly toolkit is provided - add your events, configure settings and your timetable is ready.

WordPress Schedule Plugin Highlights

responsive designResponsive Design

WordPress Timetable plugin provides your audience with a proper tablet and mobile viewing of the timetable and upcoming events widgets.

It offers you more freedom of responsive design customization implemented by two alternatives: you can set it to either standard table view or responsive modern list view for mobiles. This setting can be applied in the timetable shortcode.

custom categoriesToolkit of Shortcode Settings

The toolkit doesn’t require any cross-functional or coding skills.

Timetable responsive schedule for WordPress added via TinyMCE is supplied with parameters to help you maximum adjust the timetable to your needs and website design. Each set is accompanied with sufficient clarifications to ensure you coordinate and edit your events fast without additional help.

various menu designsFull Control of Event Parameters

WordPress scheduling plugin works perfectly for various classes, trainings, workshops, conferences, formal parties, concerts, non-profits, and nearly any other type of event as a set of event details for the timetable is rather universal. Using the WP schedule plugin, you can edit the needed parameters your visitors expect to see while searching for the needed event: title, subtitle, time, event head, images, detailed event description, and time slots (if there are many for one event).

import|export menu itemsWordPress Schedule Plugin Easy Event Filtering

The search results can be easily refined using the filters by events. The functionality of the plugin allows you to apply two filter styles: tabs to show all events at a time or drop-down list. The site visitors can easily filter the timetable to display the only events they are interested in. It’s very reliable in terms of navigation and guarantees the website visitors good times.

unlimited delicious imagesUpcoming Events

The Upcoming events widget helps to keep the sidebar of your site clutter-free and to present all the future events in a stylish and elegant list style. It’ll duplicate design settings of the actual timetable, but will look more compact. The widget is entirely hidden when no upcoming events are scheduled. This feature increases the usability of the timetable and helps to guide the site visitors faster.

helpful widgetsPowerful Schedule Functionality

Ease of navigation, fast-loading events and clean design are key factors able to increase a happy user experience; a lot of shortcode options ensure that your timetable runs so and is customized the way you want. For example, you can manually adjust the row height to size the timetable according to the number of events and information output into one event cell, link particular events to external websites, and even automatically export/import timetable data during backup or changing hosting.

sell food and beverages onlineFlexible Timeframes of WordPress Schedule Plugin

The left ‘time’ column can show up to 15 minutes accurate time apart from standard hourly and half-hourly time frames. It lets you make the timetable more visually balanced and attractive depending on the number of events and row height set within the shortcode. If any unexpected delays or changes take place, your timetable can bend easily in one direction or another thanks to a couple of quick time edits in the shortcode settings.

Integrated with MotoPress BuilderProfessional Support

If you believe the timetable lacks any necessary feature, give us this good food for thought. Our professionals want to improve the plugin in terms of essential functionality and of course solve all possible problems along the way. The process starts simple, contact our support representatives and they won’t you keep waiting. The plugin is fully compatible with MotoPress WordPress Page Builder and also with WordPress Slider.

Download Demo Content (xml)


We only started collecting reviews from March, 2018.

You must log in to submit a review.

174 Replies to “Timetable & Event Schedule

  1. I think i have a bug, (tested on 2 German-Wordpress Sites), the Time is correct demure in the WordPress Config Site. After the Event is gone, the Event (Time 19:00) in the Widget (“All upcoming Events”) is still displayed (after 22:00 and 23:00).

      1. Sorry i have say in my first post, if i set in UTC is the same. Alle Upcoming Events only leave the Day is over. But the Event is from 7.00 – 19.00 a clock.

  2. A nice plugin, have most of the features I needed.
    I am having a problem loading the timetable with a Theme that use AJAX tho.
    when I refresh the page manually the timetable shows as it should but when I click on link or menu for the timetable page which the theme load the content via AJAX, the table won’t show. all the table elements have style=”display:none;” and I think the js remove the style for the first table with an id of “#all” on document ready the problem is this is loaded with ajax so no on document ready even will fire.
    can you suggest where to start so the plugin can support ajax theme.

    1. Could you provide example of schedules? Also could you try to disable filter by events or change the way of filter from drop down to tabs for example.

      1. Thanks for the quick reply.
        I have tried setting “Filter events style” from Dropdown to Tabs and None but that doesn’t work. The problem is with the plugin functions.js and or event.js script not running on ajax content load.
        when I remove the style=”display:none;” from action-shortcode-functions.php on line 103, multiple tables will be shown for each “Event category” which are listed in the filter dropdown menu. now the JavaScript task was to hide all the other tables other than the active “Event category” from the dropdown menu.

        ps I didn’t understand what you mean by example of schedules. The time table shows fine, this is just a problem with ajax loading.

          1. Is it some custom theme installed on your WordPress? Is there option to disable ajax page preloading within theme preferences?

          2. yes its a custom theme and there is option to disable the ajax and with ajax disabled the timetable work just like any other none ajax theme because every page is loaded as if manually loading the page.
            as a temporary fix, its not really a fix but in action-shortcode-functions.php on line 103 i change the
            “style=”display:none” to
            if($post != ‘all’) {echo ‘style=”display:none;’;}
            At least now, even on ajax load it show the first table(#all) but without the filtering capability and also I think some css is missing because some cells overlap on mouse over.

            ps you won’t see the change on the demo site, I am trying it locally

  3. Hey.
    I found an error when I add a link to the event description and save it. After that, the link changes from < a href="/team/elena/" rel="nofollow"> Elena </a> to <a> Elena </a>. I hope, the code will be displayed here normally. If not, try to explain otherwise. When you save single or double quotes, a backslash is automatically added to the description field.

  4. Hello, first of all, thank you very much for this plugin, it is very useful!

    I am trying to import the xlm with the events exported from another WordPress installation but, although it does not give any errors, only imports the first column (Monday) and no more columns or events matter.

    The xml seems to be fine. Do you know what may be happening?

    Thank you!

    R. Marcos

    1. Hello Rodrigo,
      Thank you for contacting us. Probably the import is not possible due to low execution time set up on your server. You may send your XML file to our support team to test it locally.

  5. WHen I add the widget to a footer and have it set to Today’s Upcoming Events, it appears that it is showing events using a different time zone. For example, at 11 pm EST, the current event is a program called Key Life but the widget is showing the program Truth for Life which comes on at 6 pm EST. Is there a time zone setting for the plugin somewhere? I don’t see one anywhere.

    1. Hello Darrell,
      Thank you for your question. Timetable plugin inherits a timezone indicated in your WordPress settings (Dashboard>Settings>General>Timezone).
      Try to pick a proper timezone and let us know if it’s helpful.

  6. Is there any way to change the row increments from hourly to on the half hour or 15 minutes? I have a class that begins at 4:45–6pm, but having it fill the entire 4–6 slots is confusing…

    1. Hi Ivana,
      The row increment can be changed to half hour or 15 minutes in the settings of the shortcode when you are adding a timetable to the page (the field Time frame for event)

  7. How can I show current day schedule? It only displays static content which has been selected in the short code. Suppose today is Wednesday it should automatically show the schedule of Wednesday.

    1. Hi,
      It is possible to show ongoing/upcoming events using TitmeTable widget that can be added to widget areas like sidebar, etc.

      1. I don’t want it in the widget areas(not in footer or sidebar, etc). On the main page(main content) it should be displayed.

        1. Hi Roshan,
          At the moment it is possible via widgets only. You can try using third party plugins that allow to add widgets to page content to show upcoming/ongoing events.

          1. Hi,
            All the events and columns should be added manually. Or you can import previously created events and columns using this plugin from other WordPress site.

  8. Hi!
    I was wondering whether it would be possible to show the event details as a hover-reveal as opposed to clicking to a new page to obtain the information?

  9. i can’t add the shortcode, i need to close visual editor for time-table configuration and when i click “add timetable” it does nothing. please help

  10. I really like the timetable. How do you make all row heights the same height? I am setting the row to 120 but only the first row displays resized, the rest of the rows only expand when you hover over.


    1. Hi,
      The row height is supposed to influence all the rows. most likely the styles of your theme interfere with the rows. This can be checked by switching the theme to any other WordPress theme

  11. This plugin is great, thank you. Is there a way to change the order of the dropdown to be alphabetical instead of in chronological order of the events? With a lot of events, chronological order doesn’t make much sense when someone is looking for a specific event.

  12. How can I change the hours in the left hand column to show the half hours? I have classes that start on the hour and the half hour. Also, any idea why my grid isn’t centered? And finally, how can I make my grid more mobile responsive? You can’t see any of the times when you look at it on a phone. http://cfbd.elliepetrov.co/schedule/

    1. Hi Ellie,
      The time frame for row can be changed in the shortcode settings when you are adding a timetable to a page. You need to use the dropdown of the Time Frame for Event field.
      In the Mobile Behavior filed you can choose the layout for smaller devices, e.g. change it to List.
      You can add this code under Appearance > Customize > Additional CSS to even the columns:
      .mptt-shortcode-table {
      table-layout: fixed;
      width: 100%;

  13. Hi, How can I control the height of the rows? I want all the text to show (only one row visible right now and the rest is hidden and shows when I hover it)

  14. Hello, is there a way to have each Day’s column split into 2 columns.
    So, for a 6 day week there would be 12 columns? The header of each day would have a colspan of 2.
    This is because that in each hour there are 2 lessons happening simultaniously.

    1. Hi Dan,
      Unfortunately, it is not possible to split columns. If there are simultaneous events, they will share a timeslot vertically. You may want to increase the row height in the shortcode settings to avoid confusion. Otherwise you can create two different timetables or 12 columns in one timetable.

      1. Is there a way to make the rows stretch to show multiple events? I realize that way, vertically the time would be variable, but with the times displayed this should be fine. Thank you

          1. Thanks! I was really looking for something that would “stretch” the timeslots, so that they would get longer as needed (sort of like the mobile display). But, fiddling with the row height, I got it to work.

  15. Hi Fabrizio,
    It is a timetable plugin and not a calendar, if the dance lesson happens on the same week days and at the same times then you can just create columns as weekdays. So you would not need to add a new timetable for each week.

  16. Hi there, experimenting with the Timetable plugin in combination with the Divi theme. Seems to work great however, when I click on an event, i’m missing some page elements like my main menu etc. Basically only the event details are visibale but apart from the footer, all other elements are gone. Any tips how i can combine this plugin best with divi ?

  17. Thank you for the clarification.
    The plugin will display precisely only the events that follow the frames that you state in the Time Frame of Event field in the shortcode. There are only 1 h, 30 mins and 15 mins frames available. So this makes your events look confusing. You can either set the time frame to 15 mins to make it less confusing or hide the time column.

    1. The event just had its end yesterday.. maybe for next year we will find a new solution to get the timetable more efficient! Thanks anyway for your job and your answers! 🙂

  18. Hi Nicola,
    I see there many events withing that time period and some starts earlier and and others – later. It looks properly. I ask you to email us in case I missed something and explain it more detailed. Screenshots are appreciated.

  19. Hello, I really like your plugin, it’s easy to use and read. I have 2 events that run from 5:30-6:15. I’ve tried adjusting the times so they don’t overlap completely, but only one shows up. Is there a way to fix it?

  20. There is a bug when using your splendid plugin on a 24h timetable.. around the 12pm events there is an error and the timeline 12-13 is not correct.. any suggestion? Thanks for the useful tool you realized!

    1. Hi Nicola,
      This is one-day timetable and it is not adjusted fr 2-days events. You can make the timeslot end at 12pm or 11:59pm but write true duration in the description. Thank you for your time and feedback

  21. I really love this plug in ! Is it possible to add additional filters such as by
    1-Location, ie Studio’s name or by region, city
    2-Price Range
    3-Level of Difficulties?

    I wan to use this plug in to build a platform for users to search dance/yoga studio in my country. If there is a pro version that allows me to do advance filter and even sign up and payment. Please let me know!

    1. Hi Jason,
      Thank you for using TimeTable plugin.You can tie events to categories and tags and create different timetables at separate pages or using third party tabs, etc. Unfortunately there is no Pro version of this plugin however we’ll keep your suggestions in mind. Thank you!

      1. can you elaborate your solution please? I need extra filters. Also, I need importing through excel file if you can guide me

        1. Hi,
          With your comment we will increase the priority of excel import and filters feature for future updates.
          The solution above means that you need to tie your events to specific categories and then add multiple timetables (one for each category). Depending on the number of categories you may end up with too many timetables on one page. To present it in a better format, you can place each timetable in tabs created with a third-party plugin.

  22. Hello. I’ve set up a calendar using Timetable. However, I can’t seem to change the font and size of font. I can’t find anything in the documentation for this. Can you point me in the correct direction, please?

    1. Hi Robert,

      Timetable plugin enqueues style of your theme to look a part of it. And fonts are defined by your theme. You should override style of TimeTable or apply custom styles to edit font.
      For example you can create custom class ‘custom-font-table’ where you indicate custom font and apply it for your timetable shortcode via parameter CSS class:
      .custom-font-table {
      font-family: Verdana;
      font-size: 1.5em;

  23. Hi there! Thank you for the great plugin! Would it be possible to filter the timetable not by event but by category? I use the event location (yoga class rooms in different quarters of the city) as the categories and it would be great if the people could filter the timetable for the yoga classes in the place near where they live. Thanks for your reply! Lisa

    1. Hi,
      Thank you for kind feedback) It is one of most wanted features that is not available now. However you can add timetable shortcde of each category and add those shortcodes to Tabs element using our WordPress Page Builder or third party plugin that add Tabs. Thus you will have tab for each category with proper shortcode.

    1. Hi Heico,
      There is parameter to hide empty hours – ‘Do not display empty rows’. You can simply re-add shortcode again but this time enabling this attribute or find this part in shortcode hide_empty_rows=”0″ and change its value from 0 to 1.

  24. We are using this plugin for showing schedules of exercises in our nonprofit organization. But when two events are taking place at the same time the timetable doesn’t show it correctly. Would it be possible to add something like “Room” or “Place” for each Timeslot so we would be able to show schedules for each room? Categories doesn’t help in this case as we have exercises which take place in different rooms.

    1. Hello Jan,
      When 2 or more events take place at same time the events should be places one over another – vertically. That’s why we recommend to increase height of the row in shortcode preferences.

    1. Hi Ivan,
      Currently it is possible to add Events from back-end only. If you do now ant your visitors to see some information at your back-end you can use third-party plugin to control permissions for user roles. Thus they will be able to reach Events only at your dashboard.

  25. Hi I have 4 terms in the year with the same event running at slightly different times or days each term. I have terms as categories so I can make a page/tab per term but it still means that I have to make a seperate event with the same name for each of the terms. What I need is a taxonomy for time slots so that I can elect to display certain ones for any given calenda. Is this possible or is there a work around?

    1. Hi Ben,
      Could you clarify what you mean under terms? Do you have live example as I’m not sure I understand your question correctly. You can also email us all the details.

  26. I’ve added a new event after using the plugin for several months now. But it doesn’t show up on my calendar. I checked everything and this event is the same as the original 3. What am I missing in terms of having a new event show on the calendar?

      1. Thanks. But can you clue me in on exactly where I would find the event ID? Also, I don’t see where I can grab the shortcode. The plugin came with a child theme and it was already set up, so I can see the shortcode, but don’t see where it was originally generated.

        1. Hi Don,
          Please refer to our documentation to learn how to add/generate shortcode of timetable.
          You can learn ID of Event by going to Events>select event post to edit. When editor of certain Event Post is loaded you can take a look at link in the address form of your browser. You’ll see there e.g. ‘post=6297’ part. Where is ‘6297’ it is an ID of event.

  27. Hi. I donwloaded the plugin but when I use it my URL chagens. It adds “#not-set:all” to the URL.
    Now I also had an older version (1.7.8). I replaced the newest one with 1.7.8 and this problem is solved….. Clean URL!

    So not really a question, but a remark. For the ones who want to know 😉

  28. Is there any way to get the current event? I’d like to show the current event on the top of every page in my theme.

    1. Hi Gary,
      I’m sorry but I’m not sure I got your request correctly. Could you describe or explain more detailed? You can also email us providing examples or screenshots.

      1. Is there a php function or something to get the id of the current event(s)? I’m making a website for a radio station and would like to show who’s show is currently ‘On Air’.

        1. We need to understand the way you want to output the event to answer your question. Please email us all the details so we could assist you. Thank you.

          1. his questions is pretty straightforward. I’d like to know aswell how to display the current event. You have it on your demo site but i cant seem to find how do do that

          2. Hi Mario,
            In order to show ongoing events you should make sure that all your columns are of ‘Day’ type. Please check it and let us know if it helps.

  29. Hi,

    When I import a timetable I’ve noticed that, for every other row, the block to the left of each column event is differently colored than the rest. I’ve looked through the documentation and shortcodes to see if there was a way to change this, and have been unable to locate this particular class/setting. Is there a way to disable/change this? Thank you in advance.

    1. Hi Elizabeth,
      Thank you for using TimeTable plugin. The table preview depends on theme style. You can apply custom styles to modify it. You can email us the page example with schedule added and we’ll try to assist you with it.

  30. Hi. I donwloaded it but when I use it my URL chagens. The widget add “#not-set:all” at the end.

    1. Hi,
      This part is used to filter the timetable by events. We’ll provide alternate solution for this in further updates. Thank you for your interest.

      1. I see. But looking other pages that use this plugin, in theirs the url doesn’t show “#not-set:all” at the end, why in mine it shows?

  31. Hi,

    I have a problem displaying the timtable. I’ve created a unique page to show it and when I linked it from any other pages of the same site the timetable doesn’t appear, and I have to refresh the web. How can I solve it?

    Thank you for you atention. Very good plugin!

  32. Hi,

    I’m having trouble displaying the event categories on my page. Anyway I can display the categories at the bottom of the timetable, similar to your demo?

    Kind regards,

      1. Sorry, I still do not understand. Is there a way I can display the categories on the page same page as the timetable? e.g. will be how your demo has categories listed beneath your timetable.

  33. Hi, Good plugin. Thnx! Question… When I go to the event discription page I get a large ‘Event Timeslots’ above the text. Is there a way to remove this or change this text?

    1. Hi,
      Yes, sure you can remove it by overriding templates
      You can try to copy /wp-content/plugins/mp-timetable/templates/theme/event-timeslots.php file to /wp-content/themes/your_theme_folder/mp-timetable/theme/event-timeslots.php and edit it to remove required strings.

    1. Hello,
      There is available column with hours only. You can add custom column with custom time slots and place it to be the first one. Could you specify what text you want to place instead of hours?

  34. Hello Jordan,
    Thank you for your ideas. Currently you can try to add separate TimeTables and add them to Tabs element with MotoPress Visual Editor or using other solutions. We’ll keep in mind your suggestion.

  35. No, it’s not true. We hold the copyright to our plugin. We already have review results from wordpress.org staff, where it’s confirmed that no part of the code was copied and those complaints are groundless.

    1. Hi Plick,
      Seems like it was marked as spam due to the links you add. If you have any difficulties you can email us directly or submit a request to support team. Thank you.

  36. Hi there, plugin came packaged with a theme. Works great but how do you translate it ?
    Like timetable/event/ -> planning/cours/ and Monday -> Lundi …

  37. Hi,
    I want to see the time table on the mobile screen.
    I set it to [responsive = “0”].
    However, only the horizontal scroll bar appears on the mobile screen.
    What should I do?

    1. Hi Andy,
      Unfortunately it is not possible to override mobile layout currently. We’ll try to add it to templates folder within further updates to make it possible to override it with your changes.

    2. I’m sorry I’ve made a research and found that it is possible indeed. You would need to remove action mptt_shortcode_template_content_responsive_table and add your own modifying its layout.

  38. Hi,
    I see not the full timeschedule, i see from 7h till 21h but i have much more events after 21h. It’s for a radio scheduele
    How i fix that ?

    1. Hi Marian,
      If you mean filter dropdown box above the TimeTable so it is not possible yet. I’ve added your request to our features’ list. Thank you for your idea.

  39. Hi,
    I Added a class to my widget in order to display the event name in an inline-block with a min width.
    Is there a way to add my customization to my child theme, or easier, any chance you will add a class the the event name in the widget. See screenshot:

    Thank you

  40. Hi,
    Is it possible to provide me with the code to add the sidebar widget directly into my template?
    and also, possible to import from a simple excel / csv file?

    Thank you,

  41. Any resource, or information about template overrides. I want to customize the front end appearance of the plugin. Where sould I start.

  42. Hi,
    I am setting up a schedule for acting classes. It is pretty straightforward. I use categories for type of acting and events for specific classes. I have one problem however, several classes take place at the same time but in onother room. Those classes get listed below echother in stead of next to eachother. Any ideas on this? Can you help me out?
    Thanks in advance!

    1. Hi,
      We have selected this layout as it is more convenient in case when you add more than 2 or 3 events to take part at the same date and time. Your visitors would not be able to read any information if events are placed in columns. It is better for readability to place events below each other.
      You can also increase the height of cell if there are many events.
      Thank you for understanding.

      1. Hi,
        Thanks for your answer.
        Would it be possible to use a time table for each room. So, in my case 3 timetables with information per room. (Preferably with shared events and categories).
        Are there any hooks or filters that I can use to accomplish this? Can you give me some coding hints?

        1. Hi,
          You can simply create three different pages for your rooms and put different timetables to each of them filtering by categories. If you need more details submit a request to our support team. Thank you.

  43. Hi!
    A kind question – I want to display different concurrent events. Below them I want _one_ entry “coffeebreak”. In HTML it would be

    Event 1
    Event 2
    Event 3
    Event 4


    Is this possible? I have searched in the documentation but I didn’t find anything about this specific requirement.

  44. Hi,
    Firts of all, congrats and thanks for this useful plugin.
    I suggest: It would be really useful, if the widget could be displayed as a monthly calendar with it’s respective events. I need the events to be linked to entries, and I have a lot of events that occupy a lot of space of the right side. And I think that my students would feel more useful to see all the days of their courses in a monthly calendar, at the widget.
    Thanks again.

  45. And I have and another issue, which just came up, with the sidebar widget. Can you please please please provide me an email, to send you full details, for both of my issues? Ty.

  46. Hello all. Thank you for this AWESOME plugin. I have a serious problem, but I couldn’t find the email to send you my exact problem with the plugin. I have tried anything you can imagine, before trying to contact you. It seems like a bug or an error which I cannot find it.

  47. Didn’t find an ability to delete time slot. Can you please help me? Or if it’s really undeletable, could you kindly add such functionality?

      1. What about if you click on one of the square events, the page it goes to next. Is there the ability to edit layout content there? Perhaps use s 3rd party PayPal checkout there?

  48. Hi! I’ve been checking this plugin in order to use it for a music festival timetable. Is there any option to change the period day? I mean, can I change when the day is over? Some bands are playing at 1 am and the calendar shows them on the next day.

    1. Hi Jose. Now it’s not possible to change the date in the way you described. 1 am is the new day. You can set event time to 12 pm and add the appropriate note in a timeslot description (or even totally hide the left Hours column within shortcode settings). This is the only solution I can provide you with at the moment.

Leave a Reply

Your email address will not be published. Required fields are marked *