Getting Started
Create your first slider, save its settings, open the builder, and follow the normal project workflow.
Getting Started
Create Your First Slider
- Go to
Zoro Sliderin the WordPress admin. - Click
New Slider. - Enter a slider name and optional alias.
- Save the new slider.
- Open the builder for that slider.
Manage a Slider From the Dashboard
From the dashboard, each slider can be managed directly.
Common actions include:
- build or reopen the slider in the builder
- open slider settings
- clone the slider
- preview the slider
- open the embed manager
- export the slider
- delete the slider
Recommended flow:
- create the slider
- open
Slider Settings - open the builder
- add slides and layers
- preview
- embed or export
For the dashboard management actions in a dedicated quick-start format, see Manage Sliders.
Basic Workflow
The normal workflow is:
- create the slider
- define its source, size, and layout in
Slider Settings - add slides
- define each slide background in
Slide Settings - add layers to each slide
- style and animate the layers in
Layer Settings - save
- preview
- publish with a shortcode or PHP snippet
More detail:
- global slider controls: Slider Options
- slide background controls: Slide Options
- layer controls: Layer Options
- publishing: Publishing and Shortcodes
- create a slider in several ways: Create New Slider
- create slides: Create New Slide
- clone slides: Clone New Slide
- add layers: Add Layer to a Slide
- clone layers: Clone Layer
Manual Sliders vs Source-Driven Sliders
You can build a slider in three common ways:
Manual / Builder Slides: build each slide by hand inside the builderPosts: build a slide layout once, then let the slider repeat that layout for queried postsJSON import: build a slide layout once, then let the slider repeat that layout for JSON feed itemsYouTube Playlist: build a slide layout once, then let the slider repeat that layout for videos returned by a YouTube playlist
Additional source integrations may be introduced in later releases. Only the four source types above are part of the current documented release.
Use Manual / Builder Slides when:
- each slide needs unique design or copy
- you are building a hero banner, promo slider, or custom presentation
Use Posts when:
- you want a blog/news slider
- you want a portfolio or team carousel from a custom post type
- you want a testimonial rotator from post entries
Use JSON import when:
- your content comes from a custom endpoint or static JSON file
- you want to reuse one layout for external product, campaign, or feed data
- you need a slider that is not tied directly to WordPress posts
Use YouTube Playlist when:
- you want a slider that pulls directly from a YouTube playlist
- you want one slide design to repeat automatically for many videos
- you want to show a playable video inside an
HTMLlayer by using{{video_embed}}
Create Your First Post-Driven Slider
If you want the slider to pull from WordPress posts automatically:
- create a new slider
- open
Slider Settings - set
Source TypetoPosts - choose the
Post Type - narrow the source with
Categories - define sorting and count options
- open the builder and design the slide using placeholders
- save and preview
Typical placeholders include:
{{post_title}}{{post_excerpt}}{{post_date}}{{post_author}}{{post_link}}{{featured_image}}
For the full source settings, see Slider Options. For placeholder usage, see Layer Options.
Create Your First JSON-Driven Slider
If you want the slider to pull from a JSON feed:
- create a new slider
- open
Slider Settings - set
Source TypetoJSON import - enter the
JSON URL - set the
Data Path - configure the field mappings
- open the builder and design the slide using placeholders
- save and preview
Typical JSON placeholders include:
{{title}}{{description}}{{image_url}}{{link_url}}
Cross-source placeholders can still be used too, for example:
{{post_title}}{{post_excerpt}}{{featured_image}}
For the full JSON source settings, see Slider Options.
Create Your First YouTube-Driven Slider
If you want the slider to pull from a YouTube playlist:
- create a new slider
- open
Slider Settings - set
Source TypetoYouTube Playlist - enter the
Playlist ID / URL - enter the
API Key - set
Max Videos - open the builder and design the slide using placeholders
- save and preview
Typical YouTube placeholders include:
{{title}}{{description}}{{video_url}}{{featured_image}}{{channel_title}}{{published_at}}
For playable videos inside the slide, use:
{{video_embed}}
Place {{video_embed}} inside an HTML layer so the player can fill the layer frame properly.
First Builder Selection Tasks
After you add a few layers, test the builder selection workflow early:
- click one layer to make it active
- hold
Shiftand click one or two more layers - press
Ctrl + Gto group them - drag one grouped member and confirm the group moves together
- press
Ctrl + Gagain to ungroup
This is a good first test when you are building layouts from separate layers such as shapes, captions, text, icons, and buttons.
Also test the canvas context menu early:
- right-click a layer
- confirm that actions like hide, lock, clone, settings, delete, and style tools are available
This helps you learn the fastest layer-management workflow before the slide becomes more complex.
[screenshot_here]
Choose the Right Layer Type
The builder now separates three text-related layer types:
Text: plain text onlyCaption: styled caption presets such asAlpha,Bravo,Charlie, andDeltaHTML: custom markup when you intentionally need HTML inside one layer
Use this rule of thumb:
- choose
Textfor normal copy and headings - choose
Captionwhen you want the caption-style treatments - choose
HTMLonly when you really need markup structure
Create Your First Slide
After the slider exists, create the first slide from the builder:
- open the slider builder
- click
Create a new slidewhen starting from an empty slider, or useAdd Slide - the builder opens
Manage Slides - the new slide becomes the active working slide
Once the slide exists, continue immediately with:
- open
Slide Settings - choose a background style such as color, image, featured image, JSON image, or video
- add one or more layers
For slide-specific details, see Slide Options.
Add Your First Layer
To add a layer:
- select the active slide
- open the
Add Layermenu - choose a layer type such as
Text,Caption,Image,Shape,Button, orIcon - place the layer on the canvas
- open
Layer Settingsand configure the content and style
A practical first composition is:
- add a
Shapelayer for a panel or card base - add a
CaptionorTextlayer for the heading - add a second
Textlayer for supporting copy - add a
Buttonlayer for the call to action
For the full layer reference, see Layer Options.
Understand the Editing Hierarchy
Before working deeply in the builder, it helps to keep the editing hierarchy clear:
Slider: controls the global behavior of the whole slider.Slide: controls one scene or frame inside the slider.Layer: controls the individual content elements placed inside a slide.
This means:
- if you want to change autoplay, layout, thumbnails, dots, or transitions, you are working at slider level
- if you want to change a background image or background video, you are working at slide level
- if you want to move text, resize an image, style a button, or animate an icon, you are working at layer level
[screenshot_here]
Recommended First Settings
For a first project, start with:
layout:fixed- a clear
widthandheight transition: a simple horizontal move or fadeautoPlay: enabled if the slider should rotate automaticallypauseOnHover: enabled for desktop-friendly interaction
Test Advanced Actions
After your first slider is working, test the Advanced tab on a single button or text layer before using it in a larger project.
Recommended test order:
- test a built-in click action
- test a custom event
- test an inline callback
- test an external callback
This makes it easier to tell whether a problem is caused by the event trigger, the action type, or the callback code.
Example: Custom Event With Event Name
To test a custom event:
- select a layer in the builder
- open
Layer Settings > Advanced > Actions - set
EventtoCustom Event - set
Event NametopromoOpen - set
Actionto something visible such asGo to Next Slide - save the slider
- preview the slider
- trigger the event from the browser console
Example console test:
jQuery('#your-layer-id').trigger('promoOpen');
Vanilla JavaScript version:
document.getElementById('your-layer-id')?.dispatchEvent(new Event('promoOpen'));
If the event is attached correctly, the layer action will run immediately when the custom event is triggered.
You can also trigger the event from your own script:
jQuery(function ($) {
$('#open-promo-button').on('click', function () {
$('#your-layer-id').trigger('promoOpen');
});
});
Vanilla JavaScript version:
document.getElementById('open-promo-button')?.addEventListener('click', function () {
document.getElementById('your-layer-id')?.dispatchEvent(new Event('promoOpen'));
});
Compatibility note:
- the jQuery version is the most reliable test method for ZoroSlider custom layer events because the slider action system uses jQuery-based event binding internally
- the vanilla
dispatchEvent()version is useful when you prefer native browser events in your own scripts
[screenshot_here]
Example: Inline Callback Function
Use Inline when you want the callback code to live inside the layer action itself.
Test setup:
- set
EventtoClick - set
ActiontoCallback Function - set
Callback TypetoInline - paste a small JavaScript snippet into
Callback Function - save and preview
Example Callback Function value:
console.log('Inline callback fired');
alert('Inline callback fired');
You can also use a function declaration and call it:
function myInlineTest() {
console.log('Inline test function ran');
}
myInlineTest();
Best practice:
- keep inline callbacks short
- use them mainly for testing or very small interactions
- move stable production logic to
Externalcallbacks
[screenshot_here]
Example: External Callback Function
Use External when the callback should come from your theme, a custom plugin, or another script loaded on the page.
Important rule:
- the callback name must be a global function name available on
window
Test setup:
- set
EventtoClick - set
ActiontoCallback Function - set
Callback TypetoExternal - set
Callback NametomyZoroLayerCallback - set
Callback Argstohello, 2, true, #target-block - save and preview
- make sure the function exists on the page
Example external function:
<script>
function myZoroLayerCallback(message, count, enabled, selector) {
console.log('External callback fired');
console.log(message, count, enabled, selector);
}
</script>
Example Callback Args field value:
hello, 2, true, #target-block
The plugin will pass those values into the function in that order.
Best practice:
- prefer
Externalfor reusable logic - keep the function name simple, such as
myZoroLayerCallback - avoid namespaced strings such as
MyApp.callbacks.openPanel
[screenshot_here]