Skip to main content

Switcher

  • Version 1.5.0

    November 13, 2025
    • new
      YOOtheme Pro 5 Ready!
    • new
      Joomla! 6 Ready!
    • new
      PHP 8.5 Ready!
    • new
      Partial Builder Updates: Switchers now update instantly in the YOOtheme Pro builder without a full page reload.
    • new
      Dynamic initialization of newly added switchers via AJAX/fetch.
    • new
      Custom fields initialization helper for performance boost.
    • added
      Added navigation scrolling.
    • added
      Sticky horizontal navigation (activates after reaching navigation breakpoint).
    • added
      'Blend with page content' option.
    • added
      Support for YOOtheme Pro 5 margin options (with full YOOtheme Pro 4 backward compatibility).
    • added
      'Self-healing' logic to automatically disable unused custom grids and fieldsets for a performance boost.
    • added
      Content field color option.
    • added
      Content field HTML element options.
    • added
      Shrink thumbnav option.
    • added
      Element-level default aria-label and title for item links with per-item override capability
    • added
      Autoplay progress bar height option.
    • added
      Item link aria-label and title settings.
    • added
      Range slider to control the number of custom fieldsets and grids.
    • added
      CSS BEM classes for all HTML elements.
    • added
      'Old CSS classes' compatibility layer (will be removed in v1.6.0).
    • added
      FormListener PHP class for dynamic fields/settings processing.
    • added
      NodePropsHelper PHP class to handle props updates.
    • added
      Fallback logic and sanitization for various fields.
    • added
      Dashed border to settings 'navigator' dropdown for better visibility.
    • added
      data-nosnippet to the Modal ID hint message.
    • added
      Dedicated class for lightbox links.
    • JS
      Complete rewrite of the core JavaScript.
    • JS
      Moving from procedural code to a modern, object-oriented Singleton architecture.
    • JS
      Significant gains in performance, stability, and extensibility.
    • JS
      Complete Refactor: Rewritten to a modern Singleton architecture (FSSwitcherManager) for better performance and stability.
    • JS
      Dynamic Initialization: Uses a MutationObserver to instantly initialize new switchers added via AJAX, fetch, or dynamically in the YOOtheme Pro Builder.
    • JS
      Separated observer for YOOtheme Builder canvas updates.
    • JS
      Smarter Autoplay: Autoplay now automatically pauses when the browser tab is inactive or hidden, saving resources. It also pauses if the switcher is out of view or in a hidden element.
    • JS
      Resource Friendly: Eliminated memory leaks and duplicate event listeners through a proper cleanup infrastructure.
    • JS
      Improved Hash Navigation: Enhanced URL hash fragment handling for reliable scrolling and state-matching.
    • JS
      Custom Toggle Sync: Custom toggles now correctly inherit the switcher's active state on page load.
    • JS
      Enhanced Debugging: Added a new logging system that can be enabled from the browser console.
    • JS
      Improved Touch: Better differentiation between drag/swipe and click gestures on mobile.
    • JS
      Modernized Selectors: Switched from class-based to more efficient data-attribute selectors.
    • JS
      Smooth Progress Bar: Uses requestAnimationFrame for smoother autoplay progress bar animations.
    • JS
      Enforced true singleton through private constructor and static instance.
    • JS
      Explicit UIKit availability check before initialization prevents runtime errors.
    • JS
      Public API: getSwitcher(); getToggle(); refresh(); pauseAll(); destroy();
    • JS
      Comprehensive JSDoc type definitions.
    • JS
      Method Organization: grouped by responsibility: Initialization, Event Handling, Autoplay Logic, Utilities, Public API.
    • JS
      IIFE Scope: proper encapsulation within IIFE to prevent global pollution.
    • JS
      Data Storage: from global scope variables to class properties in `Map` collections.
    • JS
      Efficient DOM Queries: cached element references in `Map` structures.
    • fixed
      Margin logic for title, meta, and content fields to correctly respect the selected style and HTML element.
    • fixed
      Autoplay progress bar display when the switcher is inside a dropdown menu.
    • fixed
      Hash links to scroll to the accordion tab instead of the entire accordion.
    • changed
      Moved Autoplay settings into a dedicated panel.
    • changed
      Moved all custom fieldsets and grids into dedicated settings panels to improve UI.
    • changed
      Consolidated item 'Sublayout' and 'Fields' tabs into the 'Content' tab.
    • changed
      Renamed the element 'Grids' tab to 'Fields'.
    • changed
      Settings 'navigator' dropdown now always resets to 'show all' for better UX.
    • changed
      Sublayout display is now enabled by default.
    • changed
      Sublayout display checkbox moved to the item content tab.
    • changed
      Swipe gestures on mobile are now disabled by default.
    • changed
      Item link quick attribute toggles moved directly under the link field for easier access.
    • changed
      Refactored the installer, replacing installer.php with script.php for better compatibility checks.
    • changed
      Refactored LESS files to use new BEM CSS classes.
    • changed
      Reorganized item template files and folder structure for better maintainability.
    • changed
      Simplified element templates with improved rendering performance using early-return patterns.
    • changed
      Enhanced template code readability with simplified conditional logic.
    • changed
      Updated all templates to modern PHP syntax (ternaries, shorthands).
    • changed
      Replaced hardcoded field definitions with configuration variables to reduce file size.
    • changed
      Standardized plugin namespace to align with Joomla conventions.
    • changed
      Simplified class structure, module loading logic, and removed unused imports.
    • changed
      Enhanced inline documentation tooltips for element settings labels.
    • changed
      Refined element settings display logic with clearer conditional display rules.
    • changed
      The hover thumbnail image now remains visible when its item is active.
    • changed
      Improved element props naming.
    • changed
      Refactored text truncation and character limit functionality.
    • changed
      Minified fs-switcher.js and updated code references to the optimized script.
    • changed
      Unset obsolete props from the element during the update process.
    • changed
      Updated CSS classes hints.
    • changed
      Enhanced element UI/UX with better visual feedback.
    • changed
      Improved element code documentation.
    • changed
      Adjusted schema and metadata files.
    • removed
      Custom grid settings overrides.
    • removed
      Custom grid column settings overrides.
    • removed
      Custom grid image settings overrides.
  • Version 1.3.2

    April 26, 2025
    • Enhancement
      Back button issue in sublayout navigation, which skipped the parent item and opened the element panel. Requires YOOtheme Pro 4.5.x.
    • changed
      Minimum required YOOtheme Pro version updated to 4.5
  • Version 1.3.1

    April 25, 2025
    • added
      Helper to easily display the Modal IDs for each item
    • added
      Option to control the modal stacking behavior
    • added
      Modal close button size and position options
    • changed
      Grouped item link and image settings into a dedicated settings panel for easier management
    • changed
      Clarified the instructions for integrating sublayouts with modals
    • changed
      Fine-tuned the conditions for element settings for better control
    • changed
      Improved the user interface and experience for element settings
  • Version 1.3.0

    April 25, 2025
    • changed
      Menu dropdown no longer automatically closes when using the Switcher within
    • changed
      Improved PHP logic for generating `tab_link` values
    • changed
      Refactored hash handling and improve switcher navigation behavior
    • changed
      Correctly handles non-ASCII hash links using `decodeURIComponent()`
    • changed
      Clearer labels and descriptions for the element settings
    • changed
      Minimum required YOOtheme Pro version updated to 4.2
    • changed
      Minimum required Joomla! version updated to 4.4
    • changed
      Minimum required WordPress version updated to 6.6
  • Version 1.2.3

    November 27, 2024
    • changed
      Dedicated option to enable scroll on tab change
  • Version 1.2.2

    November 22, 2024
    • added
      Option to automatically connect the sublayout modal to a link
    • added
      Scroll-to-top functionality when switching tabs
    • added
      "3X-Large" heading style
    • fixed
      Visibility issues with modal content when section animations are enabled
    • fixed
      Issue where accordion autoplay conflicted with hash links
    • changed
      Enhanced the UI/UX of the element settings
    • changed
      Refactored link-handling logic for improved performance and maintainability
  • Version 1.2.1

    August 14, 2024
    • added
      Change active class in custom navigation while autoplay is enabled
  • Version 1.2.0

    July 06, 2024
    • new
      WordPress update server integration
    • added
      Tab cutsom link field
    • added
      Automatic active class assignment to custom navigation items when switching tabs
    • fixed
      Scrolling to element issues while using a custom navigations
    • fixed
      Disabling option to keep all items closed for the Accordion navigation style while using autoplay
    • changed
      Removed inline JavaScript
    • changed
      Combined all JavaScript features into a single file
    • changed
      Improved switcher hover mode
    • changed
      Rewrited Autoplay JavaScript function
    • changed
      Rewrited URL hash handling JavaScript function to activate switcher tab on page load
    • changed
      Added exclusion list for system builder element IDs when connecting custom navigation by ID
    • changed
      Detect and ignore dragging function when using custom switcher navigation in slider mode
    • changed
      Added a 100ms delay for hover mode
    • changed
      Autoplay pause on hover now excludes switcher navigation area
    • changed
      Enhanced autoplay progress bar animation smoothness and value calculation
    • changed
      Modernized Joomla! plugin
    • changed
      Utilized DatabaseInterface in Joomla! plugin
    • changed
      Integrated Providers in Joomla! plugin
    • changed
      Minimum YOOtheme Pro version requirement: 4.1
  • Version 1.1.3

    December 20, 2023
    • fixed
      Item custom ID, class, and attributes in accordion mode
  • Version 1.1.2

    December 04, 2023
    • added
      "fs-no-scroll" class support to disable scrolling while using custom navigation
    • added
      Ability to toggle specific switcher elements by ID while using custom navigation
    • fixed
      Fixed missing navigation label
    • fixed
      Fixed displaying label instead of title in accordions
    • fixed
      Fixed thumbnav hover animation toggle trigger from image only
  • Version 1.1.1

    December 02, 2023
    • added
      More title, meta, and content text styles
  • Version 1.1.0

    November 18, 2023
    • new
      Joomla! 5 support
    • added
      Image and lightbox focal point options
    • added
      Item HTML element option
    • added
      Dynamic content support at element level
    • added
      Element transform
    • changed
      Minimum PHP version requirement: 8.1
    • changed
      Minimum Joomla! version requirement: 4.3
    • changed
      Minimum YOOtheme Pro version requirement: 4.0
  • Version 1.0.8

    November 17, 2023
    • added
      Auto-scroll to a switcher element while using custom navigation
    • added
      Auto-scroll on the page load to a switcher element if URL hash is present
    • added
      Image title field
    • added
      Item HTML element option
    • fixed
      Lightbox and modal button conflict
    • changed
      Faster element UI
    • changed
      Improved UX for custom fields settings
    • changed
      Enhanced visibility for item override settings
    • changed
      Reduced element input fields delay
    • changed
      Code optimizations for improved performance
    • changed
      Relocated item ID, class, and attribute settings to the advanced tab
  • Version 1.0.7

    Februaty 18, 2023
    • added
      Automatically setting the active class to custom navigation items when the switcher tab is toggled
  • Version 1.0.6

    Februaty 07, 2023
    • added
      Switcher autoplay progress bar container background option
    • changed
      Updated speed of switcher autoplay progress bar
  • Version 1.0.5

    Februaty 07, 2023
    • new
      Switcher autoplay progress bar
    • new
      Switching tabs with external buttons (custom navigation)
    • added
      Switcher autoplay progress bar position option
    • added
      Switcher autoplay progress bar color option
    • added
      Switcher autoplay progress bar margin option
    • added
      Sublayouts container margin top option
    • fixed
      Active switcher tab by URL not working on the inactive browser tab
    • fixed
      Switcher autoplay not starting in the inactive browser tab
    • fixed
      Switcher hover navigation mode not changing to the next item on autoplay
    • changed
      Tab switcher by URL now ignores case-sensitive links
  • Version 1.0.4

    January 18, 2023
    • added
      Unique switcher item link class for accurate navigation click trigger integration in hover mode
  • Version 1.0.3

    January 11, 2023
    • new
      Sublayouts
    • new
      Modal builder
    • new
      Hover navigation mode
    • new
      Enabled triggering switcher item link click on navigation click in hover navigation mode
    • added
      Custom grids positions: image cell top/bottom
    • added
      Support for 20 additional meta fields
    • added
      Support for 2 new meta fields display positions
    • added
      Image attributes: loading -> eagerly, fetch priority -> high, decoding -> async, cache -> disable
    • added
      Link enhancements: Title field, Aria label field, Class field, Attributes (nofollow, noreferrer, noopener, prefetch), Custom attributes
    • added
      Toggle option for all element links with the uk-toggle attribute
    • added
      Modal ID field
    • added
      Modal header field
    • added
      Custom fields panel offset and grid match options
    • changed
      Item title is not required to display the switcher item
    • changed
      Optimized settings UX
    • changed
      Code optimization
  • Version 1.0.2

    October 02, 2022
    • added
      Thumbnav hover image
    • added
      Thumbnav text label
    • added
      Thumbnav text label position: left, top, bottom
    • added
      Thumbnav text label breakpoint
    • added
      PHP 8.1 support
    • fixed
      Autoplay on YOOtheme Pro 3.x
  • Version 1.0.1

    April 21, 2022
    • new
      Active tab by URL hash location
    • new
      Autoplay for all types of navigation
    • added
      Autoplay interval
    • added
      Autoplay pause on hover, touch
    • added
      Touch devices swiping disable option
    • fixed
      Custom grids column and row gap item override default value
  • Version 1.0.0

    February 07, 2022
    • new
      Lightbox gallery
    • new
      Accordion navigation
    • new
      Thumbnav icons
    • new
      Navigation sticky mode support in left and right position
    • new
      Panel options for nested fieldsets
    • new
      Automatic unused nested grids disable option
    • added
      Support for 4 additional nested grids
    • added
      Support for 2 new nested grid positions
    • added
      Support for 10 additional text fields
    • added
      Support for 20 additional image/icon fields
    • added
      Support for 20 additional link fields
    • added
      Link and image attributes fields
    • added
      Overriding options on the item settings tab
    • added
      Item ID, class and attributes fields
    • added
      Limit text output for element title, content, meta, and all custom text fields
    • added
      Title attribute field for link and image in the element settings
    • added
      Title and image link hover transition options
    • added
      Title, meta, content, image and link visibility options
    • added
      All types of grid and image settings for each nested grid
    • added
      Mixed width options for nested grids
    • added
      Visibility breakpoints for nested grids
    • changed
      Optimized element settings
  • Version 1.1.1

    October 12, 2025
    • added
      Support for YOOtheme Pro 5 margin options, with backward compatibility for YOOtheme Pro 4.
    • added
      NodePropsHelper class to handle props updates.
  • Version 1.1.0

    September 26, 2025
    • new
      YOOtheme Pro 5 ready!
    • new
      Joomla! 6 ready!
    • new
      PHP 8.5 ready!
    • changed
      Installer refactor: replaced installer.php with robust script.php, enhancing dependency management and compatibility checks.
    • changed
      Standardized plugin namespace to align with Joomla conventions.
    • changed
      Simplified class structure, streamlined module loading logic, and removed unused imports.
    • changed
      Adjusted schema and metadata files.
    • changed
      Enhanced code readability and maintainability by polishing templates and simplifying logic.
    • changed
      Minified fs-switcher.js and updated code references to the optimized script.
  • Version 1.0.4

    April 26, 2025
    • new
      Added 29 language translations
    • changed
      Menu dropdown no longer automatically closes when using the Switcher within
    • changed
      Refactored hash handling and improve switcher navigation behavior
    • changed
      Correctly handles non-ASCII hash links using `decodeURIComponent()`
    • changed
      Minimum required YOOtheme Pro version updated to 4.5
    • changed
      Minimum required WordPress version updated to 6.6
  • Version 1.0.3

    November 27, 2024
    • added
      Scroll-to-top option when switching tabs
  • Version 1.0.2

    August 02, 2024
    • fixed
      Accordion thumbnav icon display
  • Version 1.0.1

    September 21, 2024
    • added
      Progress bar display position option
  • Version 1.0.0

    August 14, 2024
    • new
      Thumbnav Grid
    • new
      Accordion navigation Images
    • added
      Accordion hover thumbnail image
    • added
      Use hover thumbnail image when item is active option
    • added
      Use hover thumbnail image when item is active option
    • added
      Thumbnail image visibility option
    • added
      Thumbnail image border option
    • added
      Thumbnail label text align option
    • added
      Thumbnail label visibility option
    • changed
      Simplified settings UI
  • Version 1.3.1

    October 12, 2025
    • added
      Support for YOOtheme Pro 5 margin options, with backward compatibility for YOOtheme Pro 4.
    • added
      NodePropsHelper class to handle props updates.
  • Version 1.3.0

    September 26, 2025
    • new
      YOOtheme Pro 5 ready!
    • new
      Joomla! 6 ready!
    • new
      PHP 8.4 ready!
    • changed
      Text fields (title, meta, content, custom fields) now correctly render "0" as valid content.
    • changed
      Installer refactor: replaced installer.php with robust script.php, enhancing dependency management and compatibility checks.
    • changed
      Standardized plugin namespace to align with Joomla conventions.
    • changed
      Simplified class structure, streamlined module loading logic, and removed unused imports.
    • changed
      Adjusted schema and metadata files.
    • changed
      Enhanced code readability and maintainability by polishing templates and simplifying logic.
    • changed
      Replace rendering conditional blocks with ternary operators.
    • changed
      Reduce redundancy and improve code conventions across all templates.
    • changed
      Add inline comments for better code understanding and maintainability.
    • changed
      Optimize function expressions and array handling to match modern PHP practices.
    • changed
      Added support for JSON-based language file handling with dynamic translation loading.
  • Version 1.2.1

    April 27, 2025
    • added
      Heading 3X-Large style
    • changed
      Minimum Joomla! version requirement: 4.4
    • changed
      Minimum Joomla! version requirement: 4.4
    • changed
      Minimum required WordPress version updated to 6.6
    • changed
      Minimum required YOOtheme Pro version updated to 4.5
  • Version 1.2.0

    July 29, 2024
    • new
      WordPress update server integration
    • changed
      Modernized Joomla! plugin
  • Version 1.1.2

    October 08, 2023
    • added
      Nested grid top divider
    • added
      Nested grid masonry pack mode
    • added
      Nested grid margin bottom option
    • added
      Nested grid parallax justify, start, and end options
    • added
      Nested grid text align and fallback
    • added
      Nested grid visibility
    • added
      Item max width option
    • added
      Meta decoration options
    • added
      Content limit output
    • added
      Content force align left option
    • added
      Image title field
    • added
      Link title field
    • added
      Link aria-label
    • added
      Item ID, class, and attributes
    • changed
      Nested grid CSS classes
    • changed
      Code optimization
    • changed
      Element UI improvement
    • changed
      Minimum YOOtheme Pro version requirement: 4.1
  • Version 1.1.1

    September 04, 2023
    • new
      Joomla! 5 support
    • changed
      Minimum PHP version requirement: 8.1
    • changed
      Minimum Joomla! version requirement: 4.3
    • changed
      Minimum YOOtheme Pro version requirement: 4.0
  • Version 1.1.0

    July 07, 2023
    • new
      YOOtheme Pro 4 support
    • added
      Dynamic content source at the element level
    • added
      Item HTML element option
    • added
      Image focal point option
    • added
      Option to remove left or right padding for section/row
    • added
      Inline CSS useful classes hints
    • added
      Element transform
    • changed
      Optimized settings UX
    • changed
      Minimum PHP version requirement: 7.4
    • changed
      Minimum Joomla! version requirement: 3.10
    • changed
      Minimum WordPress version requirement: 6.0
    • changed
      Minimum YOOtheme Pro version requirement: 3.0
  • Version 1.0.0

    September 15, 2021
    • added
      Initial Release