We'll create fresh WordPress site with Timeline Express installed. You have 20 minutes to test the plugin after that site we'll be deleted.
Timeline Express is the best WordPress timeline plugin, which allows you to create a beautiful animated vertical timeline on your site. Populate your site with announcements, set the date and Timeline Express will load the latest and greatest announcements in proper chronological order.
Use the included shortcode ([timeline-express]
) to place Timeline Express timeline anywhere on your site.
If you’re looking for power, flexibility and top tier support – look no further.
Timeline Express Features
[timeline-express]
)Pro Features
- Setup multiple timelines and assign announcements to any, or all, of the timelines.
- Tighter layout, less distance between each announcement on the timeline.
- Create and assign categories to your announcements.
- Timeline sorting features. Sort timelines by categories, timeline or a combination of the two.
- Priority support, code snippets provided when needed etc.
Timeline Express has been successfully used on a number small and large scale sites. Our users have created a number of amazing things with our plugin.
Timeline Express has been used to create:
The small list above demonstrates the flexibility and power behind Timeline Express. Check out our documentation for some helpful code snippets,
Timeline Express Add-Ons
We have built out some powerful add-ons that extend Timeline Express beyond it’s core capabilities. Many of the add-ons have been user requested features, which we’ve spun off into add-ons. If your looking for some advanced feature that you don’t see in the base plugin, checkout a list of our add-ons.
- Timeline Express – HTML Excerpts
- Timeline Express – No Icons
- Timeline Express – White Label Branding
- Timeline Express – Single Column Timeline
- Timeline Express – Timeline Post Types
- Timeline Express – Historical Dates
- Timeline Express – AJAX Limits
- Timeline Express – Twitter Feed
- Timeline Express – Toolbox
Timeline Express Translations
Timeline Express comes ready for translation! With all of the proper i18n functions in place, 100% of our plugin is ready for translation. If you’re multi-lingual, and interested in translating the plugin into one of the languages not yet available, we’re willing to pass a long Single Site license of Timeline Express Pro, which is good for one full year. We’re huge fans of the open source community, and believe that this plugin should be available to everyone, in their native language. If this is something you would be interested in, please get in touch with us on our Contact Page.
The Timeline Express polyglot project can be found here.
Looking for additional documentation? Check out the knowledge base.
Multi-lingual Sites & Timeline Express
Timeline Express has been thoroughly tested with some of the top rated, and widely used translation plugins.
Two multi-lingual plugins which we are fully, 100% compatible with are WPML and Polylang.
Timeline Express may be compatible with other multi-lingual plugins, we just haven’t thoroughly tested it with otheres. If you find it’s compatible with other plugins, please get in touch and let us know and we can add it to this list.
This plugin was originally inspired by the great folks at CodyHouse.io.
Have an idea for a feature you want to see added to Timeline Express? We love hearing about new ideas! You can get in contact with us through the contact form on our website, WP Timeline Express.
Developer Documentation
Hooks + Filters
Use Custom Images Instead of Font Awesome Icons (New v1.1.6.7)
Users can now use the custom announcement image in place of the font awesome icons by using the following filter. Huge thanks to Pete Nelson for the pull request and making this possible and available for everyone.
Filter – timeline-express-custom-icon-html
Usage Example: https://gist.github.com/EvanHerman/6bbc8de82f34b4cb3c5c
Use Alternate Image Size For Announcements (New v1.1.5.5)
By default Timeline Express generates a custom image size to use within the timeline. If you would like to use another image size, you can use the following filter.
Example:
function change_timeline_express_announcement_image_size( $image_size ) {
$image_size = 'full';
return $image_size;
}
add_filter( 'timeline-express-announcement-img-size' , 'change_timeline_express_announcement_image_size' );
Define your own custom fields to use in Announcement posts (New v1.1.5)
Users can now add custom fields to Timeline Express announcement posts. This allows for greater control over the announcements and the front end display. Using this hook in conjunction with a custom single announcement template will give you the greatest control.
Example:
function add_custom_timeline_express_field( $custom_fields ) {
$custom_fields = array(
array(
'name' => __( 'Example Text Field', 'timeline-express' ),
'desc' => __( 'this is an example user defined text field.', 'timeline-express' ),
'id' => 'announcement_user_defined_text',
'type' => 'text_medium',
),
array(
'name' => __( 'Example WYSIWYG', 'timeline-express' ),
'desc' => __( 'this is an example wysiwyg field.', 'timeline-express' ),
'id' => 'announcement_user_defined_wysiwyg',
'type' => 'wysiwyg',
),
array(
'name' => __( 'Example Email Field', 'timeline-express' ),
'desc' => __( 'this is an example user defined email field.', 'timeline-express' ),
'id' => 'announcement_user_defined_money',
'type' => 'text_email',
)
);
return $custom_fields;
}
add_filter( 'timeline_express_custom_fields' , 'add_custom_timeline_express_field' );
This example would add 3 new fields below the ‘Announcement Image’ field on the announcement post.
The first field is a simple text field. The second field is an example WYSIWYG, and the third is an email field.
Note: You can add as many fields as you would like, and display them on the front end using the get_post_meta() function.
Customize the ‘announcement’ slug (New v1.1.4)
Users can now define their own slug for announcement posts using the provided filter 'timeline-express-slug'
. This alters the URL structure of the announcement, possibly for SEO purposes. You would enter the following code into your active themes functions.php file.
After you enter the code into the functions.php file, you’ll want to refresh your permalinks. You can do so by going to ‘Settings > Permalinks’ and simply clicking save. That will prevent the 404 page you may see upon altering the slug.
Example:
// alter '/announcement/' to be '/event/'
function timeline_express_change_announcement_slug( $slug ) {
$slug = 'event';
return $slug;
}
add_filter('timeline-express-slug', 'timeline_express_change_announcement_slug' );
This example would change the default /announcement/
slug, to /event/
.
Alter the ‘Read More’ button text (New v1.1.3.1)
Users can now alter the ‘Read More’ button text using the provided gettext filter and the ‘timeline-express’ text domain.
Example:
// alter 'Read more' to say 'View Announcement'
function timeline_express_change_readmore_text( $translated_text, $untranslated_text, $domain ) {
switch( $untranslated_text ) {
case 'Read more':
$translated_text = __( 'View Announcement','timeline-express' );
break;
}
return $translated_text;
}
add_filter('gettext', 'timeline_express_change_readmore_text', 20, 3);
This example would alter ‘Read more’ to say ‘View Announcement’.
Add custom classes to the ‘Read More’ button (New v1.1.3.1)
Users can now add custom classes to the ‘Read More’ announcement button. This allows for greater control in fitting the Timeline into your currently active theme.
Parameters :
$button_classes = default button classes assigned to the ‘Read More’ button
Example:
// add a custom class to the Timeline Express readmore link
function timeline_express_custom_readmore_class( $button_classes ) {
return $button_classes . 'custom-class-name';
}
add_filter( 'timeline-express-read-more-class' , 'timeline_express_custom_readmore_class' );
This example would print the following ‘Read More’ button HTML onto the page :
<a href="http://site.com/link-to-announcement" class="cd-read-more btn btn-primary custom-class-name">Read more</a>
Setup a custom date format for front end display (New v1.0.9)
New in version 1.0.9 is the localization of dates on the front end. The date format is now controlled by your date settings inside of ‘General > Settings’.
If, for one reason or another, you’d like to specify a different date format than provided by WordPress core you can use the provided filter timeline_express_custom_date_format
.
The one parameter you need to pass into your function is $date_format, which is (as it sounds) the format of the date.
Some formatting examples:
m.d.Y
– 11.19.2014d-m-y
– 11-19-14d M y
– 19 Nov 2014D j/n/Y
– Wed 11/19/2014l jS \of\ F
– Wednesday 19th of NovemberExample:
function custom_te_date_format( $date_format ) {
$date_format = "M d , Y"; // will print the date as Nov 19 , 2014
return $date_format;
}
add_filter( 'timeline_express_custom_date_format' , 'custom_te_date_format' , 10 );
y – Numeric representation of a year, two digits.
D – Textual representation of a day, three letters Mon through Sun.
Y – Numeric representation of a year, four digits.
S – English ordinal suffix for the day of the month. Consist of 2 characters st, nd, rd or th.
F – Textual representation of a month, January through December.
M – Textual representation of a month, three letters Jan through Dec.
view more date formatting parameters
Load Your Own Single Announcement Template File (New v1.0.8)
By default all single announcements will try and load a single.php template file. If that can’t be found, we’ve done our best to implement a template for you. If your unhappy with the template file we’ve provided you have two options. Your first option is to copy over the single-announcement-template directory contained within the plugin into your active themes root. This will trigger the plugin to load that file instead. You can then customize this file to your hearts content without fear of losing any of your changes in the next update.
Your next option is to use our new filter for loading your own custom template file. If for whatever reason you’ve designed or developed your own single.php file which you would rather use, or you just want to use your themes page.php template instead, you can use the provided filter to change the loaded template. Here is an example ( you want to drop this code into your active theme’s functions.php file ) :
Example:
// By default Timeline Express uses single.php for announcements
// you can load page.php instead
// just change page.php to whatever your template file is named
// keep in mind, this is looking in your active themes root for the template
function custom_timeline_express_template_file( $template_file ) {
$template_file = 'page.php';
return $template_file;
}
add_filter( 'timeline_express_custom_template' , 'custom_timeline_express_template_file' , 10 );
Specify Font Awesome Version (New 1.1.7.8)
Users can now specify which version of font awesome to load from the font awesome CDN. Alternatively, if the font awesome version is not found – the bundled fall back (version 4.6.1) will be used.
Example:
// use a different version of Font Awesome
function timeline_express_alter_font_awesome_version( $version ) {
$version = '4.4.0';
return $version;
}
add_filter( 'timeline_express_font_awesome_version', 'timeline_express_alter_font_awesome_version' );
The above example will load font awesome version 4.4.0 instead of the current stable version from the font awesome CDN.