Owl Carousel


Add a carousel to your website. Based on the Owl Carousel, a responsive and fully customizable carousel.

Special thanks to Bartosz Wojciechowski, Owl Carousel developer.


  • Image slide
  • HTML slide
  • WordPress Gallery compatible
  • Slide link
  • And of course, all the Owl Carousel options!

How to use

  1. Create a new Category
  2. Create new slides
  3. Include your carousel in any content (post, page, theme…)

You can add your carousel into any post with the following shortcode (or using the custom TinyMCE button):

To edit the carousel options (items per slide, auto play…) you just need to add options in the shortcode:

[owl-carousel category=”Uncategorized” items=”1″ autoPlay=”true” itemsDesktop=”1000,2″]
Notice the category option to display items from a specific category and also the itemsDesktop without the brackets (because it’s not possible to include brackets within a WordPress shortcode).

You can also use the default WordPress gallery like this (you need to enable this feature in the plugin’s parameters):

[gallery ids=”48,47,46,45,44″, items=”3″]

If you want to include Owl Carousel in your custom theme, please have a look at the do_shortcode WordPress function:

You can checkout the available options on the Owl carousel website:

And watch this video tutorial:

Owl Carousel version 2 is coming soon! This plugin will be compatible with the new version as soon as possible.

If you want to keep up to date with this plugin, you can have a look at my blog: http://blog.pierre-jehan.com


  • Front screenshot
  • Admin screenshot


Extract the zip file and upload the contents to the wp-content/plugins/ directory of your WordPress installation and then activate the plugin from the plugins page.


How can I add a link on Owl Carousel slide?

Paste the link in the “Owl Carousel URL” field when you choose the slide picture.


Great plugin that is now dead, but is still usable!

Guys this plugin is great! I use it on all sites, it renders perfectly and scales on all devices. You can swipe it on tablets/phones too.

It also works perfectly for those of you creating sites that you want google to index correctly.

The only down side is that it seems the plugin author is no longer updating this release.

So here’s a quick guide to integrating it in to your site.

To add the plugin to a page enter the shortcode
[owl-carousel category="minislider" autoPlay="true"]
The category is important here as that allows you to setup more than one slider per page, just group them by category.

Add more options to your shortcode from the list below like this:
[owl-carousel category="minislider" singleItem="true" items="1" autoPlay="true" navigation="false" pagination="false" slideSpeed="900" paginationSpeed="400"]

Other options for the shortcode are:

items 	5 	int 	This variable allows you to set the maximum amount of items displayed at a time with the widest browser width
itemsDesktop 	[1199,4] 	array 	This allows you to preset the number of slides visible with a particular browser width. The format is [x,y] whereby x=browser width and y=number of slides displayed. For example [1199,4] means that if(window<=1199){ show 4 slides per page} Alternatively use itemsDesktop: false to override these settings. Check my Custom Demo
itemsDesktopSmall 	[979,3] 	array 	As above.
itemsTablet 	[768,2] 	array 	As above.
itemsTabletSmall 	false 	array 	As above. Default value is disabled.
itemsMobile 	[479,1] 	array 	As above
itemsCustom 	false 	array 	This allow you to add custom variations of items depending from the width If this option is set, itemsDeskop, itemsDesktopSmall, itemsTablet, itemsMobile etc. are disabled For better preview, order the arrays by screen size, but it's not mandatory Don't forget to include the lowest available screen size, otherwise it will take the default one for screens lower than lowest available.
[[0, 2], [400, 4], [700, 6], [1000, 8], [1200, 10], [1600, 16]]
For more information about structure of the internal arrays see itemsDesktop. Check my Custom Demo
singleItem 	false 	boolean 	Display only one item. See demo
itemsScaleUp 	false 	boolean 	Option to not stretch items when it is less than the supplied items. See demo
slideSpeed 	200 	int 	Slide speed in milliseconds
paginationSpeed 	800 	int 	Pagination speed in milliseconds
rewindSpeed 	1000 	int 	Rewind speed in milliseconds
autoPlay 	false 	int/boolean 	Change to any integrer for example autoPlay : 5000 to play every 5 seconds. If you set autoPlay: true default speed will be 5 seconds.
stopOnHover 	false 	boolean 	Stop autoplay on mouse hover
navigation 	false 	boolean 	Display "next" and "prev" buttons.
navigationText 	["prev","next"] 	array 	You can cusomize your own text for navigation. To get empty buttons use navigationText : false. Also HTML can be used here
rewindNav 	true 	boolean 	Slide to first item. Use rewindSpeed to change animation speed.
scrollPerPage 	false 	boolean 	Scroll per page not per item. This affect next/prev buttons and mouse/touch dragging.
pagination 	true 	boolean 	Show pagination.
paginationNumbers 	false 	boolean 	Show numbers inside pagination buttons
responsive 	true 	boolean 	You can use Owl Carousel on desktop-only websites too! Just change that to "false" to disable resposive capabilities
responsiveRefreshRate 	200 	int 	Check window width changes every 200ms for responsive actions
responsiveBaseWidth 	window 	jQuery selector 	Owl Carousel check window for browser width changes. You can use any other jQuery element to check width changes for example ".owl-demo". Owl will change only if ".owl-demo" get new width.
baseClass 	"owl-carousel" 	string 	Automaticly added class for base CSS styles. Best not to change it if you don't need to.
theme 	"owl-theme" 	string 	Default Owl CSS styles for navigation and buttons. Change it to match your own theme
lazyLoad 	false 	boolean 	Delays loading of images. Images outside of viewport won't be loaded before user scrolls to them. Great for mobile devices to speed up page loadings. IMG need special markup class="lazyOwl" and data-src="your img path". See example.
lazyFollow 	true 	boolean 	When pagination used, it skips loading the images from pages that got skipped. It only loads the images that get displayed in viewport. If set to false, all images get loaded when pagination used. It is a sub setting of the lazy load function.
lazyEffect 	"fade" 	boolean / string 	Default is fadeIn on 400ms speed. Use false to remove that effect.
autoHeight 	false 	boolean 	Add height to owl-wrapper-outer so you can use diffrent heights on slides. Use it only for one item per page setting.
jsonPath 	false 	string 	Allows you to load directly from a jSon file. The JSON structure you use needs to match the owl JSON structure used here. To use custom JSON structure see jsonSuccess option.
jsonSuccess 	false 	function 	Success callback for $.getJSON build in into carousel. See demo with custom JSON structure here.
dragBeforeAnimFinish 	true 	boolean 	Ignore whether a transition is done or not (only dragging).
mouseDrag 	true 	boolean 	Turn off/on mouse events.
touchDrag 	true 	boolean 	Turn off/on touch events.
addClassActive 	false 	boolean 	Add "active" classes on visible items. Works with any numbers of items on screen.
transitionStyle 	false 	string 	Add CSS3 transition style. Works only with one item on screen. See Demo

The authors website is no longer loading, so use the wayback archive to view an old version here: http://web.archive.org/web/20150206061228/http://owlgraphic.com/owlcarousel/index.html

Simple and easy

Really nice and easy to use plugin. It would be nice if this plugin is updated. Since it has been 2 years since the last update.

Also, a nice feature would be to add the owl=”true” parameter when the WP gallery is created, either by default, or as an option that can be turned on/off.

Great Work !

Btw, for everyone that is looking, here are the owl carousel options that can be set within the shortcode. Note: I tested this only while using WP gallery shortcode. You can find this list in:

wp-content/plugins/owl-carousel/js/script.js – line 55

var parameterArray = {
ADDCLASSACTIVE: “addClassActive”,
AFTERACTION: “afterAction”,
AFTERINIT: “afterInit”,
AFTERLAZYLOAD: “afterLazyLoad”,
AFTERMOVE: “afterMove”,
AFTERUPDATE: “afterUpdate”,
AUTOHEIGHT: “autoHeight”,
AUTOPLAY: “autoPlay”,
BASECLASS: “baseClass”,
BEFOREINIT: “beforeInit”,
BEFOREMOVE: “beforeMove”,
BEFOREUPDATE: “beforeUpdate”,
ITEMS: “items”,
ITEMSCUSTOM: “itemsCustom”,
ITEMSDESKTOP: “itemsDesktop”,
ITEMSDESKTOSMALL: “itemsDesktopSmall”,
ITEMSMOBILE: “itemsMobile”,
ITEMSSCALEUP: “itemsScaleUp”,
ITEMSTABLET: “itemsTablet”,
ITEMSTABLETSMALL: “itemsTabletSmall”,
JSONPATH: “jsonPath”,
JSONSUCCESS: “jsonSuccess”,
LAZYLOAD: “lazyLoad”,
LAZYFOLLOW: “lazyFollow”,
LAZYEFFECT: “lazyEffect”,
MOUSEDRAG: “mouseDrag”,
NAVIGATION: “navigation”,
NAVIGATIONTEXT: “navigationText”,
PAGINATION: “pagination”,
PAGINATIONNUMBERS: “paginationNumbers”,
PAGINATIONSPEED: “paginationSpeed”,
RESPONSIVE: “responsive”,
RESPONSIVEBASEWIDTH: “responsiveBaseWidth”,
RESPONSIVEREFRESHRATE: “responsiveRefreshRate”,
REWINDNAV: “rewindNav”,
REWINDSPEED: “rewindSpeed”,
SCROLLPERPAGE: “scrollPerPage”,
SINGLEITEM: “singleItem”,
SLIDESPEED: “slideSpeed”,
STARTDRAGGING: “startDragging”,
STOPONHOVER: “stopOnHover”,
THEME: “theme”,
TOUCHDRAG: “touchDrag”,
TRANSITIONSTYLE: “transitionStyle”,

So, in the shortcode use them like this:
[gallery owl=”true” navigation=”true” pagination=”false” link=”none” columns=”1″ size=”full” ids=”120,121,122″]

And a full list and the manner in which the owl options are applied you can find here: http://www.owlcarousel.owlgraphic.com/docs/api-options.html

I think this should be part of the plugin documentation. 😀

Read all 14 reviews

Contributors & Developers

“Owl Carousel” is open source software. The following people have contributed to this plugin.



  • Fix line break in image description (thanks to simplemachines for spotting this bug)
  • Restore original Post Data after custom loop (thanks to pratham2003 for spotting this bug)
  • Add a css class on each carousel (owl-carousel-[category-name])


  • Fix typo with itemsDesktopSmall option (thanks to maxdamage80 for spotting this bug)
  • Change “Carousel Items” to “Carousel Slides”


  • Change default items order in parameters
  • Remove version 0.3 to 0.4 fix for custom taxonomy


  • Fix JS error (jQuery selector)
  • Fix database connection for version update
  • Add new feature: URL link for each slide


  • Fix admin errors due to js enqueue


  • Add lazy load compatibility (special thanks to Alexandre BOURLIER for this feature)
  • Fix custom responsive support
  • Add Carousel column in the admin table
  • Add a new “random” parameter to Owl Carousel (random slide order)


  • Add save_parameter.php file


  • Fix custom category


  • WordPress gallery support
  • Custom category
  • Fix slide limit