Title: NEO Bootstrap Carousel
Author: PixelsPress
Published: <strong>2016-07-31</strong>
Last modified: 2026-06-14

---

Search plugins

![](https://ps.w.org/neo-bootstrap-carousel/assets/banner-772x250.png?rev=3572139)

![](https://ps.w.org/neo-bootstrap-carousel/assets/icon-256x256.png?rev=1464343)

# NEO Bootstrap Carousel

 By [PixelsPress](https://profiles.wordpress.org/pixelspress/)

[Download](https://downloads.wordpress.org/plugin/neo-bootstrap-carousel.1.7.0.zip)

 * [Details](https://tt.wordpress.org/plugins/neo-bootstrap-carousel/#description)
 * [Reviews](https://tt.wordpress.org/plugins/neo-bootstrap-carousel/#reviews)
 *  [Installation](https://tt.wordpress.org/plugins/neo-bootstrap-carousel/#installation)
 * [Development](https://tt.wordpress.org/plugins/neo-bootstrap-carousel/#developers)

 [Support](https://wordpress.org/support/plugin/neo-bootstrap-carousel/)

## Description

NEO Bootstrap Carousel is a lightweight, production-ready WordPress slider plugin
built on the Bootstrap 3 carousel framework. Create unlimited, fully responsive 
image slideshows or dynamic post-based carousels and embed them anywhere on your
site with a simple shortcode or Gutenberg block.

Originally built by [PixelsPress](https://pixelspress.com), NEO Bootstrap Carousel
is developed and maintained by [Mohsin Rafique](https://mohsinrafique.com), a seasoned
WordPress and PHP engineer. The plugin is trusted by thousands of WordPress sites
worldwide for its simplicity, reliability, and performance.

[Online Demo](https://pixelspress.com) | [Documentation & Knowledge Base](https://pixelspress.com/docs/neo-bootstrap-carousel/)

#### Why NEO Bootstrap Carousel?

Most slider plugins are bloated, slow, and overly complex. NEO Bootstrap Carousel
takes a different approach: deliver a fast, accessible, and standards-compliant 
carousel using the battle-tested Bootstrap framework.

 * **Lightweight** – No jQuery UI, no bloated libraries, just Bootstrap + Animate.
   css
 * **Zero configuration** – Install, add slides, paste shortcode, live in under 
   2 minutes
 * **Two slide sources** – Media Library images or dynamic posts, WooCommerce products,
   and custom post types
 * **Gutenberg ready** – Native block editor support, no shortcode memorisation 
   needed
 * **Theme-agnostic** – Works with any WordPress theme, Bootstrap or otherwise
 * **PHP 8.4 ready** – Fully tested on PHP 8.4 with strict type safety
 * **WordPress 7.0 compatible** – jQuery 4.0 compatibility shims included
 * **Touch-enabled** – Swipe navigation on mobile via bundled Hammer.js touch carousel
 * **Accessible** – Keyboard navigation, ARIA roles, screen reader labels

#### Slide Sources

**Media Library** – Upload and manage slides directly from the WordPress Media Library
with drag-and-drop ordering.

**Posts, Products & Custom Post Types** – Automatically pull slides from the featured
images of any public content type. Pick the Content Type (Posts, WooCommerce Products,
or any registered custom post type), then choose what to show:

 * Most Recent – Latest 3 published items
 * Most Popular – Top 3 by comment count (WooCommerce products ordered by total 
   sales)
 * Sticky Posts – WordPress sticky posts (core Post type only)
 * Random – 3 randomly selected items
 * Specific Category – Items from a chosen taxonomy term (post category, product
   category, or a CPT taxonomy)
 * AJAX-powered live reload when switching content sources (no page refresh needed)

#### Slide Customisation

 * Title and Caption per slide (editable from the admin panel)
 * Caption Animations powered by Animate.css (30+ animation styles)
 * Dark or Light Overlay per slide with adjustable opacity (5% to 100%)
 * Custom URL per slide – link slides to any internal or external page
 * Link Target per slide – open slide links in the same window or a new tab
 * Per-carousel Slide Interval and Caption Animation overrides – leave empty to 
   inherit the global Design settings
 * Drag-and-drop reordering of slides within the admin panel

#### Navigation and Controls

 * Arrow Navigation (Previous / Next) – toggle on or off globally
 * Indicator Dots (bullet navigation) – toggle on or off globally
 * Keyboard Navigation – Left/Right arrow keys to navigate slides
 * Touch/Swipe Support – Native swipe gestures on mobile and tablet devices
 * Auto-play with configurable interval (default: 5 seconds)
 * Pause on Hover – carousel pauses when the mouse hovers over it
 * Wrap Mode – enable or disable infinite looping of slides

#### Integration

 * Shortcode: `[neo_carousel_shortcode id="123"]`
 * Gutenberg Block: NEO Bootstrap Carousel block with visual dropdown selector
 * Widget areas: paste the shortcode into any sidebar or footer widget
 * Multiple carousels per page supported

#### Settings

 * **General Settings** – Toggle captions, arrows, and indicator controls globally
 * **Design Settings** – Choose from 30+ Animate.css animation styles for captions
   and set the default Slide Interval (ms) for all carousels
 * **Advanced Settings** – Show or hide carousel content on mobile devices

#### Documentation and Support

Full, step-by-step documentation lives in the online Knowledge Base:

[https://pixelspress.com/docs/neo-bootstrap-carousel/](https://pixelspress.com/docs/neo-bootstrap-carousel/)

It covers everything from your first carousel to advanced use:

 * **Getting Started** – install, activate, and build your first carousel
 * **Building Carousels** – media and post/product slides, captions, overlays, and
   links
 * **Displaying Carousels** – the shortcode, the block, and widget areas
 * **Settings and Customization** – caption animations, slide interval, and mobile
   display
 * **Troubleshooting** – fixes for the most common issues
 * **Developers** – hooks, filters, and how to customise the carousel output in 
   code

#### Credits

 * [Twitter Bootstrap](https://getbootstrap.com/) – Carousel framework by @mdo and
   @fat
 * [Animate.css](https://animate.style/) – CSS animations by Daniel Eden
 * [Hammer.js](https://hammerjs.github.io/) – Touch gesture recognition
 * [Select2](https://select2.org/) – Enhanced select dropdowns

#### Translators

Please contribute to translate our plugin. Contact at `mohsin.rafique@gmail.com`.

## Screenshots

[⌊Welcome Page - Getting started guide with quick links to create and configure 
sliders⌉⌊Welcome Page - Getting started guide with quick links to create and configure
sliders⌉[

**Welcome Page** – Getting started guide with quick links to create and configure
sliders

[⌊Add Slider - Add new slides from the WordPress Media Library⌉⌊Add Slider - Add
new slides from the WordPress Media Library⌉[

**Add Slider** – Add new slides from the WordPress Media Library

[⌊Slide Editor - Configure title, caption, overlay, and URL per slide⌉⌊Slide Editor-
Configure title, caption, overlay, and URL per slide⌉[

**Slide Editor** – Configure title, caption, overlay, and URL per slide

[⌊Media Slides - Drag-and-drop ordering with overlay controls⌉⌊Media Slides - Drag-
and-drop ordering with overlay controls⌉[

**Media Slides** – Drag-and-drop ordering with overlay controls

[⌊Post Slides - Automatic slides from recent, popular, or category posts⌉⌊Post Slides-
Automatic slides from recent, popular, or category posts⌉[

**Post Slides** – Automatic slides from recent, popular, or category posts

[⌊Settings - General, Design, and Advanced settings tabs⌉⌊Settings - General, Design,
and Advanced settings tabs⌉[

**Settings** – General, Design, and Advanced settings tabs

[⌊Sliders List - All sliders at a glance with shortcodes⌉⌊Sliders List - All sliders
at a glance with shortcodes⌉[

**Sliders List** – All sliders at a glance with shortcodes

## Blocks

This plugin provides 1 block.

 *   NEO Bootstrap Carousel

## Installation

#### Automatic installation (Recommended)

 1. Log in to your WordPress admin panel.
 2. Navigate to **Plugins > Add New**.
 3. Search for **NEO Bootstrap Carousel**.
 4. Click **Install Now**, then **Activate**.
 5. Go to **NEO Bootstrap Carousel > Sliders** to create your first carousel.

#### Manual installation

 1. Download the plugin ZIP from the [WordPress Plugin Directory](https://wordpress.org/plugins/neo-bootstrap-carousel/).
 2. Extract and upload the `neo-bootstrap-carousel` folder to `/wp-content/plugins/`.
 3. Activate the plugin from **Plugins** in your WordPress admin panel.
 4. Navigate to **NEO Bootstrap Carousel > Sliders** to get started.

#### Getting started

After activating the plugin, navigate to **NEO Bootstrap Carousel** in the WordPress
admin sidebar. You will see the Welcome page with three quick-start boxes:

 1. **Add New Slider** – Takes you directly to the slider editor
 2. **Configure General Settings** – Set up caption, arrow, and indicator visibility
 3. **Configure Design Settings** – Choose a caption animation style

#### Creating a Media Slider

A Media slider uses images from the WordPress Media Library. You have full control
over each slide’s title, caption, overlay, and destination URL.

 1.  Go to **NEO Bootstrap Carousel > Sliders > Add Slider**.
 2.  Enter a title for your slider (e.g., “Homepage Banner”).
 3.  Under “Choose Slide Source”, select **Media**.
 4.  Click the **Add Slide to Slider** link to open the Media Library.
 5.  Select one or more images, then click **Add to Slider**.
 6.  For each slide, configure:
 7.   * **Title** – The headline text displayed on the slide
      * **Description** – The caption text displayed below the title
      * **URL** – Link the slide to any internal page or external URL
      * **Alt Text** – Alternative text for accessibility and SEO
      * **Overlay** – Choose Dark or Light to add a colour overlay on the slide image
      * **Overlay Opacity** – Set the overlay transparency from 5% to 100% (in 5% increments)
 8.  Drag and drop slides to reorder them – the order in the admin panel matches the
     order on the frontend.
 9.  Click **Publish** (or **Update** for existing sliders).

After publishing, the Shortcode meta box on the right sidebar displays the shortcode
for this slider.

#### Creating a Posts Slider

A Posts slider automatically pulls slides from the featured images of your published
content – blog posts, WooCommerce products, or any custom post type. The carousel
updates automatically as your content changes.

 1.  Go to **NEO Bootstrap Carousel > Sliders > Add Slider**.
 2.  Enter a title for your slider (e.g., “Latest Blog Posts”).
 3.  Under “Choose Slide Source”, select **Posts**.
 4.  In the **Content Type** dropdown, choose the source: Posts, WooCommerce Products,
     or any registered custom post type.
 5.  In the **Content to Show** dropdown, choose one of five options:
 6.   * **Most Recent** – The 3 most recently published items
      * **Most Popular** – The 3 items with the highest comment count (products are
        ordered by total sales)
      * **Sticky Posts** – All posts marked as “Sticky” in WordPress (core Post type
        only)
      * **Random** – 3 randomly selected items (changes on each page load)
      * **Specific Category** – Items from a taxonomy term you select (post category,
        product category, or a CPT taxonomy)
 7.  If you select “Specific Category”, a second dropdown appears where you can choose
     the term.
 8.  The slide preview updates automatically via AJAX when you change the Content Type
     or Content to Show option – no page refresh needed.
 9.  Click **Publish**.

Note: Items must have a **Featured Image** set to appear as slides. Items without
a featured image are skipped.

#### Embedding a Slider

Once a slider is published, you can embed it anywhere on your site using one of 
three methods.

**Shortcode (Classic Editor or any page/post):**

Copy the shortcode from the Shortcode meta box on the slider edit screen, or find
it in the Sliders list view.

    ```
    [neo_carousel_shortcode id="123"]
    ```

Replace 123 with your slider’s post ID. You can also customise behaviour:

    ```
    [neo_carousel_shortcode id="123" interval="3000" wrap="true"]
    ```

Shortcode attributes:

 * `id` (required) – The slider post ID
 * `interval` – Auto-play interval in milliseconds (default: 5000)
 * `pause` – Bootstrap pause option (default: null)
 * `wrap` – Enable infinite slide looping (default: true)

**Gutenberg Block (Block Editor):**

 1. In the page or post editor, click the + button to add a new block.
 2. Search for **NEO Bootstrap Carousel**.
 3. Add the block to your content area.
 4. In the block inspector (right sidebar), select your slider from the dropdown list.

**Widget area:**

Add a Shortcode (or Text) widget to any sidebar or footer area and paste the slider
shortcode into it.

> Embedding a carousel from a theme template file and other advanced usage is covered
> in the [Knowledge Base](https://pixelspress.com/docs/neo-bootstrap-carousel/).

#### Configuring Settings

Navigate to **NEO Bootstrap Carousel > Settings** to configure global carousel behaviour.
Settings are organised into three tabs.

**General Settings** – Controls the visibility of carousel UI elements across all
sliders:

 * **Show Caption** – Display the title and caption text on slides (default: On)
 * **Show Arrows** – Display the Previous / Next arrow controls (default: On)
 * **Show Controls** – Display the indicator dots below the slides (default: Off)

**Design Settings** – Set the default Slide Interval (ms) for all carousels (default
5000; individual carousels and the shortcode interval attribute can override it)
and choose from 30+ Animate.css animation styles for slide captions:

 * Attention Seekers: bounce, flash, pulse, rubberBand, shake, swing, tada, wobble,
   jello
 * Bouncing: bounceIn, bounceInDown, bounceInLeft, bounceInRight, bounceInUp
 * Fading: fadeIn, fadeInDown, fadeInLeft, fadeInRight, fadeInUp
 * Flipping: flipInX, flipInY
 * Rotating: rotateIn, rotateInDownLeft, rotateInDownRight, rotateInUpLeft, rotateInUpRight
 * Sliding: slideInUp, slideInDown, slideInLeft, slideInRight
 * Zooming: zoomIn, zoomInDown, zoomInLeft, zoomInRight, zoomInUp
 * Specials: lightSpeedIn, rollIn

**Advanced Settings:**

 * **Show Content on Mobile** – Toggle visibility of slide title and caption on 
   small screens (default: On). When disabled, only the slide image is shown on 
   mobile devices.

## FAQ

### Is NEO Bootstrap Carousel responsive?

Yes. The carousel is fully responsive and adapts to all screen sizes including mobile
devices and tablets. Touch/swipe navigation is enabled automatically on touch devices.

### Does it work with non-Bootstrap themes?

Yes. The plugin bundles its own carousel CSS, so it works with any WordPress theme.
Bootstrap-based themes benefit from native styling integration.

### Can I have multiple carousels on the same page?

Yes. Each carousel uses a unique ID, so you can embed as many carousels as needed
on a single page using separate shortcodes or Gutenberg blocks.

### How do I create a Media slider?

Go to **NEO Bootstrap Carousel > Sliders > Add Slider**, select “Media” as the slide
source, then click “Add Slide to Slider” to pick images from your Media Library.
Configure title, caption, overlay, and URL for each slide, then publish.

### How do I create a Posts slider?

Go to **NEO Bootstrap Carousel > Sliders > Add Slider**, select “Posts” as the slide
source, pick a Content Type (Posts, WooCommerce Products, or any custom post type),
then choose a Content to Show option: Most Recent, Most Popular, Sticky Posts, Random,
or Specific Category. Items must have a Featured Image set to appear as slides.

### How do I embed a slider in a page or post?

Two ways: (1) Paste the shortcode `[neo_carousel_shortcode id="123"]` into any page,
post, or text widget. (2) Add the NEO Bootstrap Carousel Gutenberg block and select
your slider from the dropdown.

### How do I change the slide order?

When editing a slider with Media source, simply drag and drop the slides to reorder
them in the admin panel.

### Can I link slides to other pages?

Yes. When using Media source, each slide has a URL field where you can enter any
internal or external URL. When using Posts source, slides automatically link to 
their respective post permalinks.

### How do I change the animation style?

Go to **NEO Bootstrap Carousel > Settings > Design** and choose from 30+ Animate.
css animation styles for your caption animations.

### How do I hide captions on mobile?

Go to **NEO Bootstrap Carousel > Settings > Advanced** and toggle the “Show Content
on Mobile” option off.

### Where can I find documentation?

The full Knowledge Base is at [https://pixelspress.com/docs/neo-bootstrap-carousel/](https://pixelspress.com/docs/neo-bootstrap-carousel/)
with step-by-step guides for getting started, building and displaying carousels,
settings, troubleshooting, and developer customisation.

### How do I report bugs or suggest features?

Check the [Knowledge Base](https://pixelspress.com/docs/neo-bootstrap-carousel/)
first – the Troubleshooting section solves the most common issues. To report a bug
or request a feature, email [mohsin.rafique@gmail.com](https://tt.wordpress.org/plugins/neo-bootstrap-carousel/mohsin.rafique@gmail.com?output_format=md)
or open a thread on the [WordPress support forum](https://wordpress.org/support/plugin/neo-bootstrap-carousel/).

## Reviews

![](https://secure.gravatar.com/avatar/6da0c7b25504df8e9b47adfb06c15284ccf5f200085ce3e9ec269d91fc017f78?
s=60&d=retro&r=g)

### 󠀁[Exceptional & Very Nice Carousel Slider WordPress Plugin](https://wordpress.org/support/topic/exceptional-very-nice-carousel-slider-wordpress-plugin/)󠁿

 [hakimchamon](https://profiles.wordpress.org/hakimchamon/) 2020-06-29

Exceptional & Very Nice Carousel Slider Wordpress Plugin. Its Very Helpful To Me
To Use In My Website. Thanks.

![](https://secure.gravatar.com/avatar/b6193fdacfa366e9f6fce2794118e67ae3351797d565230c46d3f8591d5e7a2c?
s=60&d=retro&r=g)

### 󠀁[not support PHP](https://wordpress.org/support/topic/not-support-php/)󠁿

 [coffeeantv](https://profiles.wordpress.org/coffeeantv/) 2018-02-11

Good plugin, but don’t have support for PHP install

![](https://secure.gravatar.com/avatar/89923b91df5e1735c3696d01b56dcfe8bb50846b1c10b2fdaf93319396c5ef03?
s=60&d=retro&r=g)

### 󠀁[Good Carousel](https://wordpress.org/support/topic/good-carousel/)󠁿

 [armnaj](https://profiles.wordpress.org/armnaj/) 2017-04-26

Thank You for your good job guys. I am really liked your plugin. Thank You.

 [ Read all 3 reviews ](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/)

## Contributors & Developers

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

Contributors

 *   [ PixelsPress ](https://profiles.wordpress.org/pixelspress/)
 *   [ Mohsin Rafique ](https://profiles.wordpress.org/mohsinrafique/)

[Translate “NEO Bootstrap Carousel” into your language.](https://translate.wordpress.org/projects/wp-plugins/neo-bootstrap-carousel)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/neo-bootstrap-carousel/),
check out the [SVN repository](https://plugins.svn.wordpress.org/neo-bootstrap-carousel/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/neo-bootstrap-carousel/)
by [RSS](https://plugins.trac.wordpress.org/log/neo-bootstrap-carousel/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.7.0 – 2026-06-14

**New Features**
 * Additional slide sources – the “Posts” source now has a Content
Type selector, so a carousel can pull slides from any public custom post type or
WooCommerce Products, not just blog posts. The Most Recent / Most Popular / Random/
Specific Category modes all carry over: “Specific Category” adapts to the chosen
type’s taxonomy (post categories, product categories, or a CPT taxonomy), “Most 
Popular” orders WooCommerce products by total sales, and “Sticky Posts” stays limited
to the core Post type. * Global Slide Interval (ms) setting under Settings > Design–
sets the default slide duration for every carousel on the site. Resolution order:
an explicit “interval” shortcode attribute wins, then the per-carousel value, then
this global setting, then 5000 ms. * Per-carousel Slide Interval and Caption Animation
overrides – a new “Carousel Settings” side box on the slider edit screen lets each
carousel set its own slide duration and caption animation (including “No animation”).
Leave a field empty to inherit the global Settings > Design value. * Custom slide
Link Target – each slide (Media and Posts sources) can now open its link in the 
same window (default) or a new tab; new-tab links receive rel=”noopener noreferrer”.*
Two new developer filters: nbc_slide_post_types (the selectable content types) and
nbc_post_type_taxonomy (the taxonomy used for the “Specific Category” filter).

**Improvements**
 * Documentation – the plugin now links to a full online Knowledge
Base (https://pixelspress.com/docs/neo-bootstrap-carousel/) for step-by-step guides,
settings reference, and troubleshooting. The README is now a focused, user-facing
overview; the developer reference (hooks, filters) lives in the Knowledge Base. *
System Status screen now reports Max Input Vars (warns when PHP’s limit could silently
drop slides while saving a large slider), the bundled jQuery version, HTTPS status,
and WP Debug Mode. * Asset cache-busting – the admin and public JavaScript and CSS
are now versioned by file modification time, so updates reach browsers without waiting
for a version bump or a manual cache clear. * Settings screen layout – the tab content
header bar (e.g. “General Settings” with the Save Changes button) now matches the
height of the vertical tab items beside it on the General, Design, and Advanced 
tabs. * Select2 “Loading more results” and “Searching” messages no longer show corrupted(
double-encoded) ellipsis characters.

**Changed**
 * Renamed the “System Requirements” admin page to “System Status” –
it now reports the live, evaluated state of the install (pass / fail / info checks
and WordPress.org connectivity) instead of a static requirements list. The menu 
slug, page class, CSS hook (neo-bootstrap-carousel-system-status), and the nbc_system_status_sections
filter were renamed to match. * WPCS cleanup of the placeholder index.php guard 
files and uninstall.php – the whole plugin now passes the WordPress Coding Standard
with zero errors. * Normalised typographic characters (em/en dashes, curly quotes,
arrows, ellipses) to plain ASCII across all plugin files, and kept README.txt and
README.md in sync.

**Security**
 * The Design settings save handler now sanitizes its fields server-
side before saving (animation style via sanitize_html_class, interval via absint)
instead of storing the raw submitted values.

**Performance**
 * The System Status connectivity check and the admin header “Latest
version” line now share a single request to api.wordpress.org cached for 12 hours,
replacing an uncached remote call that ran on every admin page load.

**Fixes**
 * Per-slide Overlay and Overlay Opacity were reset when the slide list
reloaded after changing “Content to Show” (e.g. Most Popular). The reload now carries
the on-screen values and merges them with the saved slide data server-side. * The
slide-list AJAX handler now recovers the carousel ID from the edit-screen referer
when the request does not include it, so saved Overlay settings still render even
with an outdated cached admin script. * The System Status connectivity check previously
read an option that was never set and showed an inverted pass / fail icon; it now
reflects the real result. * The System Status Memory Limit threshold was lowered
from 256MB to 64MB (WordPress’s recommended minimum) so healthy sites are no longer
flagged, and two requirement-description typos were corrected.

#### 1.6.0 – 2026-05-24

 * Feature: Lazy loading for slide images – only the first slide loads immediately,
   remaining slides load on-demand during transition
 * Feature: Post to Show options – Most Popular, Sticky Posts, Random, Specific 
   Category (with AJAX reload)
 * Compat: WordPress 7.0 and jQuery 4.0 compatibility verified
 * Fix: Overlay and Overlay Opacity settings not saving (PHP 8 strict type comparison
   with pipe-delimited data)
 * Fix: Inline script block moved to wp_add_inline_script() (HTML5 best practice,
   removes CDATA wrapping)
 * Fix: jQuery 4.0 compatibility shims added – $.proxy, $.support.transition, $.
   fn.emulateTransitionEnd polyfilled
 * Fix: jQuery 4.0 compatibility shim added to Select2 for deprecated $.isFunction,
   $.isArray, $.trim
 * Fix: jQuery version gate removed from bundled Bootstrap carousel JS (allows jQuery
   4+)
 * Fix: Implicit nullable type parameter fixed for PHP 8.4 (shortcode $content)
 * Fix: Loose equality (==) replaced with strict (===) in admin JS
 * Fix: filter_input(INPUT_GET) replaced with $_GET + sanitize_text_field() in 5
   admin files
 * Fix: Caption animation function moved from inline script to main JS file (nbcDoAnimations)
 * Fix: Template uses require instead of require_once (supports multiple carousels
   per page)
 * Fix: Neo_Bootstrap_Carousel_i18n class renamed to Neo_Bootstrap_Carousel_I18n(
   PSR naming)
 * Fix: WordPress global $post_id override resolved in post-display meta box partial
 * Fix: Undefined variable warnings resolved with @var annotations across all template
   partials
 * Fix: WPCS compliance improvements across 15+ files (sanitization, escaping, alignment,
   formatting)
 * Fix: PHPDoc parse error and post-increment corrected in settings tab menu filter
 * Fix: Share The Love SVG icons not visible on Welcome page (CSS overflow/positioning
   fix)
 * Refactor: Changelog admin page now reads from README.txt (single source of truth)
 * Refactor: Help/FAQ admin page now reads from README.txt (single source of truth)
 * Feature: System Status page – added PHP version, WordPress version, plugin version,
   max execution time, and GD/Imagick checks
 * Tweak: README.txt Tested up to updated to 7.0

#### 1.5.1 – 2026-04-08

 * Fix: Next/Previous arrow navigation not working due to touch carousel removing
   Bootstrap data-API click handler
 * Fix: Clicking arrow controls was appending carousel ID as URL hash
 * Fix: License header corrected to GPL-2.0-or-later (consistent with LICENSE.txt)

#### 1.5.0 – 2026-04-07

 * Compatibility: WordPress 6.9 and PHP 8.4 verified
 * Fix: $(window).load() replaced with $(window).on(‘load’) for jQuery 3.x compatibility
 * Fix: flush_rewrite_rules() removed from init hook (was running on every page 
   load)
 * Fix: filter_input_array() second argument added to resolve PHP 8.1 deprecation
 * Fix: wp-editor Gutenberg block dependency replaced with wp-block-editor (deprecated
   WP 5.8+)
 * Fix: Block editor script dependencies removed from public page enqueue
 * Fix: wp_get_attachment_url() extra argument removed (function only accepts 1 
   param)
 * Fix: Null-safety check added for wp_get_attachment_image_src() return value
 * Fix: wp_safe_redirect() now followed by exit for correct redirect behaviour
 * Fix: nbc_shortcode() now returns empty string instead of null when no slides 
   found
 * Fix: Slide overlay inline style value is now properly escaped
 * Fix: Gutenberg render callback moved into class as static method (coding standards)
 * Fix: Hardcoded plugin version in default_configurations() replaced with VERSION
   constant
 * Tweak: README.txt headers updated (Tested up to: 6.9, Requires PHP: 8.0)

#### 1.4.3 – 2020-04-30

 * Note: Overall code improvements using WordPress Coding Standards

#### 1.4.2 – 2019-11-04

 * Feature: Added Gutenberg Block
 * Note: Improved code.

#### 1.4.1 – 2019-03-13

 * Note: Used CDATA inside JavaScript Tag
 * Fix: Resolve caption keep showing on slider even when it is disabled from settings
   panel

#### 1.4.0 – 2019-03-13

 * Tweak: Improved Admin UI/UX
 * Note: PHP 7.2 compatible
 * Fix – Hide empty elements of carousel If no slider is define

#### 1.3.2 – 2018-06-19

 * Fix – When hide display navigation, It hide direction arrows too which is fixed
   now
 * Fix – Slide URL label was wrong, when adding a new slide. It is fixed now.

#### 1.3.1 – 2017-11-08

 * Fix – Resolved plugin carousel height conflict with Bootstrap based themes.

#### 1.3 – 2017-11-08

 * Feature – You can add 3 recent posts
 * Feature – Added a link field in media slides to link slides to internal/external
   pages/posts.
 * Note – Structure Improvement.
 * Note – CSS Improvement for better loading speed.
 * Note – At activation hook, defined the default settings of the plugin
 * Note – Removed pause slide

#### 1.2.1 – 2016-12-30

 * Note – Security implemented.
 * Fix – Resolved Delete Slide bug

#### 1.2.0 – 2016-10-30

 * Feature – Added Slide Overlay with Opacity Control Attribute
 * Feature – Added Less Files
 * Tweak – Complete structure revised.
 * Fix – Resolved the unsaved title & description content bug.

#### 1.1.2

 * Fix – Undefined variable version and plugin name in class class-neo-bootstrap-
   carousel-shortcode.php

#### 1.1.1 – 2016-08-27

 * Feature – Added More Animations to Caption & Description

#### 1.1.0 – 2016-08-08

 * Feature – Added Animations to Caption & Description
 * Tweak – Changed Slider Content Area Layout at Admin Panel

#### 1.0.0 – 2016-07-30

 * Initial version

## Meta

 *  Version **1.7.0**
 *  Last updated **2 атна ago**
 *  Active installations **20+**
 *  WordPress version ** 4.8 or higher **
 *  Tested up to **7.0**
 *  PHP version ** 8.0 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/neo-bootstrap-carousel/)
 * Tags
 * [bootstrap carousel](https://tt.wordpress.org/plugins/tags/bootstrap-carousel/)
   [carousel](https://tt.wordpress.org/plugins/tags/carousel/)[responsive slider](https://tt.wordpress.org/plugins/tags/responsive-slider/)
   [slideshow](https://tt.wordpress.org/plugins/tags/slideshow/)[wordpress slider](https://tt.wordpress.org/plugins/tags/wordpress-slider/)
 *  [Advanced View](https://tt.wordpress.org/plugins/neo-bootstrap-carousel/advanced/)

## Ratings

 4 out of 5 stars.

 *  [  2 5-star reviews     ](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/?filter=3)
 *  [  1 2-star review     ](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/neo-bootstrap-carousel/reviews/)

## Contributors

 *   [ PixelsPress ](https://profiles.wordpress.org/pixelspress/)
 *   [ Mohsin Rafique ](https://profiles.wordpress.org/mohsinrafique/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/neo-bootstrap-carousel/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://pixelspress.com)