Title: Logo Slider – Infinite Carousel &amp; Marquee Block
Author: Dennis Buchwald
Published: <strong>September 18, 2025</strong>
Last modified: October 14, 2026

---

Search plugins

![](https://ps.w.org/infinite-logo-carousel-block/assets/banner-772x250.png?rev=
3545160)

![](https://ps.w.org/infinite-logo-carousel-block/assets/icon-128x128.gif?rev=3545160)

# Logo Slider – Infinite Carousel & Marquee Block

 By [Dennis Buchwald](https://profiles.wordpress.org/dbwmediadennis/)

[Download](https://downloads.wordpress.org/plugin/infinite-logo-carousel-block.2.5.0.zip)

 * [Details](https://en-au.wordpress.org/plugins/infinite-logo-carousel-block/#description)
 * [Reviews](https://en-au.wordpress.org/plugins/infinite-logo-carousel-block/#reviews)
 *  [Installation](https://en-au.wordpress.org/plugins/infinite-logo-carousel-block/#installation)
 * [Development](https://en-au.wordpress.org/plugins/infinite-logo-carousel-block/#developers)

 [Support](https://wordpress.org/support/plugin/infinite-logo-carousel-block/)

## Description

**Logo Slider** is a powerful and user-friendly Gutenberg block that displays your
logos in an elegant, infinitely scrolling carousel. Perfect for showcasing client
logos, partner brands, sponsors, or any collection of logos on your WordPress website.

#### Key Features

 * **Infinite Scrolling** – Seamless, continuous loop without interruption
 * **Multi-Row Layout** – Spread large logo sets across 2-4 rows with alternating
   scroll direction
 * **Static Logo Grid** – All logos at once, wrapped and centred, without motion
 * **Spotlight Mode** – Show one logo at a time in a single slot: the logos take
   turns with a fade, a slide or a hard cut. Ideal next to a headline, or for a 
   handful of strong reference logos
 * **Spotlight Color Cycle** – Tint the spotlight logos in one brand color, or let
   them rotate through a whole color set. Set in the same “Logo Color” place as 
   every other color mode
 * **Capsule Style** – Rounded containers behind logos: filled (uniform or alternating
   checkerboard) or outline, with an optional glow effect
 * **Hover-Pause** – Animation automatically pauses on mouse hover
 * **Customizable Speed** – Choose between slow, medium, and fast scrolling
 * **Flexible Logo Spacing** – Small, medium, or large gaps between logos
 * **Optional Logo Links** – Link each logo individually, with page search and an
   optional new tab per logo
 * **Easy Logo Management** – Drag & drop upload, reorder, replace and remove logos
   in the sidebar, with a hint for logos that have no alt text
 * **Edge Fade** – Transparent fade that works on any background (images and gradients
   included), or a classic color overlay
 * **Reverse Direction** – Let the logos run from left to right
 * **Logo Color Mode** – Convert all logos to black, white, grayscale or a custom
   tint color, all from one selector
 * **Adjustable Logo Height** – Set custom height from 30px to 150px
 * **Mobile Logo Height** – Optional separate logo height for phones, or fully automatic
   scaling
 * **Balanced Logo Sizes** – Optionally equalize the visual weight of wide and compact
   logos automatically
 * **Text Marquee Block** – Second block: infinitely scrolling text ticker for reviews,
   badges or announcements, each item optionally linked
 * **Accessible Motion** – Pause button (on by default for new carousels), pauses
   on keyboard focus and while off screen (WCAG 2.2.2)
 * **Right-to-Left Ready** – Seamless loop on Hebrew, Arabic and other RTL pages
 * **Works with Optimization Plugins** – Layout-critical CSS travels with the block,
   so delayed stylesheets (WP Rocket, Hummingbird, …) cannot break the layout
 * **Alt Texts from the Media Library** – Missing alt texts are filled in from the
   attachment while the page renders, so alt texts maintained in the media library
   reach the front end without touching the block
 * **Screen Reader Friendly Loop** – The repeated logo sets are hidden from assistive
   technology, so a client name is announced once instead of once per copy
 * **Lazy Loading** – Logos load lazily by default and are only measured once the
   carousel comes into view, which keeps them off the critical path
 * **Grayscale Mode** – Logos run desaturated for a calm, uniform look
 * **Original Colors on Hover** – Optional: logos return to their original colors
   on hover, combinable with every color mode
 * **Wide & Full Alignment** – Native Gutenberg wide/full-width support
 * **Responsive Design** – Perfect display on all devices and screen sizes
 * **SEO-Friendly** – Clean, semantic HTML markup
 * **Lightweight** – Optimized for performance with minimal impact
 * **No jQuery Required** – Pure JavaScript for better performance

#### Perfect For

 * Corporate websites showcasing clients or partners
 * Portfolio sites displaying brand collaborations
 * Event websites showing sponsors
 * E-commerce stores featuring brand partnerships
 * Non-profit organizations displaying supporters
 * Agency websites showcasing client logos
 * News/Media sites showing affiliations
 * Any website needing a professional logo showcase

#### How It Works

 1. Add the Logo Slider block to any page or post
 2. Upload your logos (supports JPG, PNG, SVG, WebP)
 3. Pick a display mode: one scrolling row, several rows, or Spotlight (one logo at
    a time)
 4. Customize speed, spacing, colors and appearance
 5. Optionally add links to each logo
 6. Publish and enjoy your professional logo carousel

#### Customization Options

**Speed Settings:**
 – Slow (40 seconds per loop) – Medium (25 seconds per loop)–
Fast (15 seconds per loop)

**Spacing Options:**
 – Small (20px between logos) – Medium (40px between logos)–
Large (60px between logos)

**Display Modes:**
 – Single Row – one continuously scrolling row – Multiple Rows–
2 to 4 rows, alternating direction, uniform or varied speed – Spotlight – one logo
at a time in the same slot – Static Grid – all logos at once, no motion

**Spotlight Settings:**
 – Time per logo (0.5 to 10 seconds) – Transition: Fade,
Slide up or Hard cut – Order: as added or random – Alignment: left, center or right

**Visual Options:**
 – Edge fade: transparent (any background) or a color overlay,
or off – Logo color mode: Original, Black, White, Grayscale or Custom Color; in 
Spotlight mode also a Color cycle – Original colors on hover, combinable with every
color mode – Capsule style behind the logos: filled, alternating or outline, with
optional glow – Custom top/bottom margins – Adjustable logo height (30px to 150px),
with an optional separate height for phones

#### Developer Friendly

Built with modern development practices:
 – Uses WordPress Gutenberg best practices–
Clean, well-documented code – Translation ready – Follows WordPress coding standards–
Compatible with WordPress 6.6+

### Source Code

The source code for this plugin is available at:
 https://github.com/dbwmedia/Infinite-
Logo-Carousel-Block

Build instructions:
 1. Clone the repository 2. Run npm install 3. Run npm run build

### Privacy Policy

This plugin does not collect, store, or transmit any personal data. It does not 
set any cookies and does not connect to any external services. All logos and settings
are stored locally in your WordPress database.

### License

This plugin is licensed under the GPL v2 or later.

This program is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software Foundation;
either version 2 of the License, or (at your option) any later version.

## Blocks

This plugin provides 1 block.

 *   Logo Slider Professional infinity logo carousel with customizable speed, spacing
   and hover-pause. Perfect for client, partner or sponsor logos.

## Installation

#### Automatic Installation

 1. Go to your WordPress Dashboard
 2. Click on “Plugins” > “Add New”
 3. Search for “Infinite Logo Carousel Block”
 4. Click “Install Now” and then “Activate”
 5. The block is now ready to use in the Gutenberg editor

#### Manual Installation

 1. Download the plugin ZIP file
 2. Go to WordPress Dashboard > Plugins > Add New
 3. Click “Upload Plugin” and choose the downloaded ZIP file
 4. Click “Install Now” and then “Activate”
 5. Start using the Infinite Logo Carousel block in your pages or posts

#### After Activation

 1. Create or edit a page/post
 2. Click the “+” button to add a new block
 3. Search for “Infinite Logo Carousel”
 4. Add the block and start uploading logos
 5. Customize settings in the block sidebar

## FAQ

### How many logos can I add?

There’s no hard limit. We recommend 5-20 logos for optimal performance and user 
experience. The carousel automatically adjusts for smooth infinite scrolling regardless
of the number.

### Can I change the animation speed?

Yes! You can choose between three predefined speeds: Slow (40s), Medium (25s), or
Fast (15s) for a complete loop.

### Does it work on mobile devices?

Absolutely! The carousel is fully responsive and works perfectly on all devices 
and screen sizes.

### Can I link the logos to websites?

Yes, each logo can be linked individually: open the “Logos” panel in the block sidebar,
type a URL or search for one of your pages. Choose “Open in new tab” per logo, or
set the target for all logos under “Link Settings”. Only web, e-mail and phone links
are allowed; anything else is removed on the page.

### How do I fade out the edges?

Under “Edge Fade” choose “Transparent” – the logos themselves fade out, so it works
on any background, images and gradients included. “Color overlay” paints the edges
in one color of your choice (capsules with a glow always use the color overlay, 
so the glow is not cut off).

### The carousel looks broken with WP Rocket, Hummingbird or another optimization plugin.

Since 2.4.0 the layout-critical CSS travels with the block itself, so a delayed 
stylesheet can no longer stack the logos on top of each other. If you also delay
JavaScript until user interaction, the carousel starts moving at the first interaction;
to start it right away, exclude `infinite-logo-carousel-block/build/frontend.js`
from “Delay JavaScript”.

### Does it work on right-to-left (Hebrew, Arabic) pages?

Yes. The loop is seamless on RTL pages since 2.4.0, and text in the Text Marquee
keeps its right-to-left direction.

### My logos have no alt text in the front end. What now?

Since version 2.3.0 the plugin fills missing alt texts in while the page is rendered:
it reads the alt text from the attachment in the media library. Maintain the alt
text there and reload the page – no need to open or re-save the block. An alt text
you typed into the block itself always wins, it is never overwritten. If an image
has no alt text anywhere, it is rendered without an alt attribute (an empty alt 
would tell screen readers the logo is decorative) and falls back to the attachment
title. The “Logos” panel in the block sidebar shows how many logos still have no
alt text.

### Is the carousel usable with a screen reader?

Yes. The seamless loop repeats every logo several times; only the first set carries
alt text, all copies are hidden from assistive technology and their links are out
of the tab order. A client name is therefore announced exactly once. You can give
the whole carousel a name under “Accessibility & Loading” -> “Screen reader label”,
for example “Our clients”. The carousel pauses while a logo link has keyboard focus,
new carousels come with a pause button, and visitors who ask their system to reduce
motion get a static grid of all logos instead of a moving row.

### When do the logo images load?

Lazily, which is what you want for a carousel below the fold. The animation is only
measured once the carousel comes close to the viewport, and the images it needs 
are loaded at that moment. If your carousel sits at the very top of the page, switch
on “Load images immediately” under “Accessibility & Loading”. The plugin also adds
a srcset, so a small logo does not download a large file.

### What is the Spotlight mode?

Instead of a scrolling row it shows one logo at a time in a single slot. The logos
hand over on a timer, so a single strong reference logo carries the whole spot. 
You set the time per logo, the transition (fade, slide up, hard cut), the order 
and the alignment in the “Spotlight” panel. It works well next to a headline and
needs only a handful of logos to look complete.

### Can I show the spotlight logos in my brand colors?

Yes. Under “Logo Display” choose “Custom Color” for a single color, or “Color cycle”
to give every logo its own color in turn – add as many colors as you like and the
logos rotate through them. In spotlight mode the color is applied through a mask,
so the logos take exactly the color you picked. This works with logos that have 
a transparent background (PNG, SVG, WebP).

### What does the “Logo Color” option do?

This setting lets you convert all logos to a uniform look – Black, White, Grayscale
or a Custom Color of your choice. It’s particularly useful when you have colorful
logos but want a consistent appearance. In Spotlight mode the same selector also
offers a Color cycle, which gives every logo its own color in turn. Add “Original
colors on hover” below it if the logos should show their real colors when a visitor
points at them.

### Can I use SVG logos?

Yes! The carousel supports all common image formats including SVG, PNG, JPG, and
WebP.

### Does it slow down my website?

No, the carousel is optimized for performance. It uses pure CSS animations and vanilla
JavaScript, making it very lightweight.

### Is it compatible with page builders?

The block is designed for the Gutenberg editor. For other page builders like Elementor
or Divi, you can use it within a WordPress block widget or shortcode block.

### Can I have multiple carousels on one page?

Yes, you can add as many Infinite Logo Carousel blocks as you need on a single page,
each with different settings and logos.

### How do I make all logos the same height?

Use the “Logo Size” setting in the block sidebar. You can set a maximum height from
30px to 150px, and all logos will scale proportionally.

### Can I set a different logo size for mobile devices?

Yes. In the “Logo Size” panel, enable “Custom height on phones” and pick a fixed
logo height for screens narrower than 600px. Without it, the height you set in the
editor is treated as the desktop maximum and logos scale down automatically on smaller
screens.

### My logos look too small or too big on mobile. How can I fix that?

Enable “Custom height on phones” in the “Logo Size” panel and set exactly the height
you want for phones. The desktop size stays untouched.

### What is the Text Marquee block?

A second block included since v2.0: an infinitely scrolling text ticker for reviews,
badges, offers or announcements (“★ 5.0 Google Reviews ★ Since 2015 ★ …”). It uses
the same smooth animation engine as the Logo Slider, with its own text size, colors,
separator and speed settings.

### Can I link the text in the Text Marquee?

Yes, since 2.5.0. Select the Text Marquee block: under every text item there is 
a “Link (optional)” field. Type a URL or search for one of your pages, and tick “
Open in new tab” if the link should open separately.

### Can I show the original logo colors on hover?

Yes. In the “Logo Display” panel, enable “Original colors on hover”. It works with
every color mode — so you can show all logos in black, white, grayscale or a custom
tint, and reveal the original colors when a visitor hovers over a logo.

### Is it GDPR compliant?

Yes, the plugin doesn’t collect, store, or transmit any personal data. It’s completely
GDPR compliant.

## Reviews

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

### 󠀁[Sehr nice](https://wordpress.org/support/topic/sehr-nice/)󠁿

 [robinherbeck](https://profiles.wordpress.org/robinherbeck/) June 18, 2026

Hatte bis jetzt noch keine Probleme damit läuft schon sehr lange sehr smooth 🙂

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

### 󠀁[Beautiful and clean](https://wordpress.org/support/topic/beautiful-and-clean-8/)󠁿

 [Tim](https://profiles.wordpress.org/timwakeling-1/) May 13, 2026

Does exactly what it promises to do without fuss. No going to separate setup pages
in the admin to add logos, you just do it from the block editor directly. Much smoother
and works really well.

 [ Read all 1 review ](https://wordpress.org/support/plugin/infinite-logo-carousel-block/reviews/)

## Contributors & Developers

“Logo Slider – Infinite Carousel & Marquee Block” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ Dennis Buchwald ](https://profiles.wordpress.org/dbwmediadennis/)

[Translate “Logo Slider – Infinite Carousel & Marquee Block” into your language.](https://translate.wordpress.org/projects/wp-plugins/infinite-logo-carousel-block)

### Interested in development?

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

## Changelog

#### 2.5.0

 * NEW: Links in the Text Marquee. Every text item can link to a page or URL (with
   page search), optionally in a new tab. Props to rahulkapoordelhi86 for the idea!
 * Links are announced and focusable once; the copies of the loop stay out of the
   tab order. Only web, e-mail and phone links are allowed on the page.
 * Existing marquees keep working unchanged – nothing needs to be re-saved.

#### 2.4.0

 * FIXED: On right-to-left pages (Hebrew, Arabic, …) the carousel ran through its
   logos once and then left an empty row. The loop is now seamless in every language;
   text inside the items keeps its right-to-left direction. Props to polinar for
   reporting!
 * FIXED: With optimization plugins that delay the stylesheet (WP Rocket, Hummingbird,…)
   the logos briefly stacked up at full size. The layout-critical CSS now travels
   with the block.
 * FIXED: A short row (few narrow logos or text items) left a gap on very wide screens.
   Missing copies are added automatically.
 * FIXED: Before the script had measured the row, the CSS animation jumped at the
   loop seam for some logo counts.
 * FIXED: Logos repeated inside the first set (alternating capsules with an odd 
   logo count) were announced twice by screen readers.
 * FIXED: Every logo link was named “Logo Link” for screen readers, overriding the
   logo’s alt text. The alt text is now the link name; logos without any alt text
   fall back to their media library title.
 * FIXED: Swiping over the carousel on a phone paused and resumed it. Only a real
   tap does now.
 * FIXED: Black, white, grayscale and custom logo colors looked different depending
   on the page (an inline !important overrode them). They now look the same everywhere,
   as the editor shows them.
 * SECURITY: Logo links are limited to web, e-mail and phone URLs on output; unknown
   link targets get rel=”noopener”.
 * NEW: Static Logo Grid layout, and block variations “Logo Wall”, “Logo Spotlight”
   and “Logo Grid” in the inserter.
 * NEW: Transparent edge fade that works on any background. New carousels use it
   by default.
 * NEW: Reverse direction, “None” as top/bottom margin, “Open in new tab” per logo.
 * NEW: Logo management in the sidebar: drag & drop upload, reorder, replace, page
   search for links, and a hint for logos without alt text.
 * IMPROVED: Accessibility – the carousel pauses while a logo has keyboard focus,
   new carousels show the pause button by default, the button has a translated name,
   a clear focus ring and 3:1 contrast, and hidden spotlight logos can no longer
   receive focus.
 * IMPROVED: Performance – srcset for logo images, the animation pauses while the
   carousel is off screen, the front-end script only loads on pages with a block,
   and the alt text lookup no longer queries per logo.
 * IMPROVED: Missing alt texts are written to the PHP error log only with WP_DEBUG_LOG
   enabled.
 * IMPROVED: window.ilcbInit() starts carousels added to the page later (AJAX, page
   builders).
 * CHANGED: Requires WordPress 6.6 or newer.
 * Existing carousels keep working unchanged – nothing needs to be re-saved.

#### 2.3.0

 * FIXED: Alt texts maintained in the media library never reached the front end.
   The block saves its markup once, so an alt text added to the attachment afterwards
   was ignored – the images went out with alt=””. Missing alt texts are now filled
   in from the attachment while the page renders, for existing content too, without
   opening a single block. An alt text entered in the block is never overwritten.
 * FIXED: An image with no alt text anywhere is rendered without an alt attribute
   instead of alt=””, and is named in the PHP error log. An empty alt tells assistive
   technology that an image is decorative, which a client logo is not.
 * FIXED: Screen readers announced every logo once per copy. The seamless loop repeats
   each set several times; those copies are now hidden from assistive technology(
   aria-hidden) and their links leave the tab order, so each name is announced exactly
   once. Applies to existing content as well.
 * FIXED: Logos were forced to load eagerly, which put a carousel below the fold
   in competition with the content above it. Images are lazy again by default. The
   scroll animation is only measured once the carousel comes into view, so the measuring
   bug that eager loading used to paper over cannot come back.
 * NEW: “Load images immediately” for a carousel that really does sit above the 
   fold (off by default).
 * NEW: Optional screen reader label for the carousel, e.g. “Our clients”. Left 
   empty, no landmark is added.
 * IMPROVED: With “reduce motion” enabled the carousel now shows every logo once
   as a static grid, instead of a stopped row that cut off most of the logos.
 * IMPROVED: Images carry decoding=”async”.
 * Existing blocks keep working and are migrated silently – no “unexpected or invalid
   content” in the editor.

#### 2.2.1

 * IMPROVED: The spotlight settings now live in their own “Spotlight” panel instead
   of being tucked into the layout options.
 * IMPROVED: One place for the logo color again. The spotlight color modes (“Custom
   Color” for a single color, “Color cycle” for a rotating set) joined the existing
   Logo Color selector under “Logo Display”, so there is no second color control
   any more.
 * IMPROVED: Settings without an effect in spotlight mode (carousel speed, edge 
   overlay) are hidden while that mode is active.
 * Saved content is unchanged – this release only touches the editor sidebar.

#### 2.2.0

 * NEW: Spotlight display mode — instead of a scrolling carousel, one logo at a 
   time takes the stage and the logos hand over on a timer. Adjustable hold time,
   three transitions (fade, slide up, hard cut), fixed or random order and left/
   center/right alignment.
 * NEW: Color cycle for the spotlight — tint every logo in one brand color, or let
   the logos rotate through a set of colors. The tint is applied through a mask,
   so the logos take the exact color you picked.
 * Accessibility: with “reduce motion” enabled the spotlight shows all logos side
   by side instead of hiding everything but one; the pause button and hover-pause
   work in spotlight mode too.
 * Fully backward-compatible — existing sliders produce identical output without
   re-saving.

#### 2.1.0

 * NEW: “Original colors on hover” is now an independent toggle in the Logo Display
   panel. It works with every color mode — Black, White, Grayscale and Custom Color—
   and also inside capsules.
 * CHANGED: The Grayscale mode is now purely a color mode. If you used it in 2.0
   and want the color-on-hover effect, enable the new toggle below the color selector.

#### 2.0.0

 * NEW: Text Marquee block — an infinitely scrolling text ticker (reviews, badges,
   offers) powered by the same seamless engine as the Logo Slider. Custom separator,
   text size, colors, uppercase mode, direction and speed.
 * NEW: Optional pause/play button on both blocks — visitors can stop the animation
   at any time (WCAG 2.2.2 accessibility)
 * NEW: Grayscale logo mode — logos run desaturated and regain their full color 
   on hover
 * NEW: Live preview in the editor — the block now shows the real animated carousel
   while you edit, including capsules, balance mode and all spacing options
 * NEW: Wide and full alignment support for both blocks
 * IMPROVED: Modernized block registration (block.json, block API v3) — ready for
   the iframed post editor
 * CHANGED: Requires WordPress 6.0 or higher
 * Fully backward-compatible — existing sliders render identically; saved content
   is migrated automatically the next time you edit it

#### 1.8.0

 * NEW: Balance Logo Sizes — optional area-based size equalization. Wide wordmark
   logos render slightly smaller, compact/square logos slightly larger, so every
   logo carries similar visual weight in the carousel.
 * NEW: “Extra Large” preset and free custom pixel value for the gap between logos(
   up to 200px)
 * NEW: “Extra Large” preset and free custom pixel value for the row gap in multi-
   row layout (up to 150px)
 * Fully backward-compatible — existing blocks produce identical output without 
   re-saving

#### 1.7.0

 * NEW: Mobile Logo Height — optionally set a fixed logo height for phones (screens
   narrower than 600px) instead of the automatic scaling. Capsule padding follows
   the mobile height proportionally.
 * IMPROVED: The uniform item width on phones (introduced in 1.5.3) is now applied
   only in capsule mode. Plain logo sliders keep their natural gap-based spacing
   on mobile again.
 * IMPROVED: Complete German translation — including the plugin description on the
   Plugins screen and all strings added in 1.6.0. Bundled translations are now loaded
   reliably.
 * CHANGED: Plugin website moved to dennisbuchwald.de/apps/logo-slider

#### 1.6.1

 * FIXED: Carousel flashing at wrong speed on initial page load. Caused by `loading
   ="lazy"` on images delaying width measurement. Images now use `loading="eager"`
   so the animation starts at the correct speed immediately. Existing posts are 
   automatically fixed without re-saving. Props to Bernd for reporting!

#### 1.6.0

 * NEW: Logo Color mode — choose Original, Black, White or a Custom Color to tint
   all logos uniformly
 * NEW: Custom Color picker for logo tinting (CSS filter approximation — works with
   any image format)
 * NEW: Capsule Logo Color control now available for ALL capsule styles (uniform,
   alternating, outline)
 * NEW: “Original Colors” option for filled capsules — keep your logos unchanged
   inside capsules instead of the automatic black/white contrast
 * IMPROVED: “Logo Display” panel now uses a dropdown instead of a single toggle,
   replacing the old “Convert to Black” option
 * Fully backward-compatible — existing blocks produce identical output without 
   re-saving

#### 1.5.3

 * IMPROVED: Mobile carousel now shows ~2 uniform capsules per row instead of one
   oversized capsule. Below 600 px viewport the slider locks each item to a fluid
   width (`clamp(140px, 46vw, 220px)`) and lets the logo image shrink with `object-
   fit: contain`, so very wide logos (5:1+) no longer fill an entire phone row. 
   Desktop behaviour is unchanged.

#### 1.5.2

 * IMPROVED: Logo size now scales down automatically on small viewports. The height
   you pick in the editor (30–150 px) is treated as the desktop ceiling — on phones
   and tablets the rendered logo (and its capsule padding) shrink with the viewport
   via a single `clamp(28px, 12vw, your-height)` formula, so capsules no longer 
   overflow a phone screen with large logo heights.
 * No save-format change — existing logo blocks render with the new responsive behaviour
   without any update on your part.

#### 1.5.1

 * FIXED: Unwanted thin border around the slider container on some themes (caused
   by theme/WP-core resets that auto-apply `border-style: solid` whenever the inline
   style contains the substring “border-width” — our `--capsule-border-width` custom
   property accidentally matched)
 * IMPROVED: Capsule glow now extends vertically beyond the slider edge instead 
   of being cut off (uses `overflow: clip` + `overflow-clip-margin-block` to keep
   horizontal logo clipping strict while allowing the glow to bleed out top and 
   bottom)

#### 1.5.0

 * NEW: Outline capsule style – transparent capsules with a colored border instead
   of a filled background
 * NEW: Optional glow effect for capsules with adjustable intensity – ideal for 
   neon-style logo walls
 * NEW: Adjustable outline border width (Thin / Medium / Thick / Custom)
 * NEW: Logo color control for the outline style (Original / White / Black)
 * FIXED: Capsule logo contrast now works correctly when capsule colors use theme
   palette variables
 * CHANGED: Plugin renamed to “Logo Slider – Infinite Carousel & Marquee Block” 
   for clarity and discoverability

#### 1.4.0

 * NEW: Capsule style – place each logo inside a rounded background container
 * NEW: Corner style with Square / Rounded / Pill presets plus a custom radius
 * NEW: Uniform or alternating (checkerboard) capsule backgrounds with custom colors
 * NEW: Capsule logos render monochrome and automatically contrast their background
 * NEW: Adjustable capsule padding (Small / Medium / Large / Custom)
 * NEW: Adjustable gap between rows in the multi-row layout
 * NEW: Custom carousel speed – set your own scroll duration when the presets are
   too fast or slow
 * IMPROVED: Scroll speed now stays consistent regardless of the number of logos–
   large sets (20+) no longer scroll too fast
 * IMPROVED: Newly added logos use an appropriately sized image instead of the full-
   size original – lighter pages and faster loading

#### 1.3.0

 * NEW: Multi-row layout – display logos across 2 to 4 rows, ideal for large logo
   collections
 * NEW: Alternating scroll direction – in multi-row layout, adjacent rows scroll
   in opposite directions
 * NEW: Row speed modes – choose uniform speed for all rows or varied speed for 
   a livelier, more dynamic look
 * NEW: Respects the “prefers-reduced-motion” accessibility setting – the carousel
   stays static for visitors who prefer reduced motion
 * FIXED: Carousel could stay frozen when logo images were lazy-loaded (scroll width
   was measured before the images had loaded)
 * IMPROVED: Logo images now include width and height attributes – less layout shift(
   CLS) and better Core Web Vitals
 * IMPROVED: Frontend script re-measures automatically via ResizeObserver – self-
   healing animation on responsive changes and late-loading images
 * IMPROVED: Smoother initial load – the carousel now fades in once it is fully 
   ready instead of visibly building up / shifting
 * IMPROVED: Corrected block category – the block now appears under “Media” in the
   block inserter
 * Confirmed compatibility with WordPress 7.0

#### 1.2.0

 * NEW: Alt text field for each logo (accessibility & SEO)
 * NEW: Touch support – tap to pause/resume on mobile devices
 * NEW: URL validation indicator for logo links in editor
 * FIXED: Overlay gradient now works correctly with custom colors (no more white
   fallback)
 * FIXED: Layout overflow in nested containers (.dbw-slider-track) with max-width
   containment
 * FIXED: Removed non-functional CSS aspect-ratio: attr() declaration
 * IMPROVED: Smarter logo duplication for reliable infinite scroll with 20+ logos
 * IMPROVED: Per-slider style management instead of shared innerHTML (better performance)
 * IMPROVED: Lazy loading on all logo images (loading=”lazy”)
 * IMPROVED: Stable React keys using image IDs
 * IMPROVED: English base strings with proper German translations (i18n best practice)
 * IMPROVED: Backward compatibility via deprecated block save for existing installations
 * Confirmed compatibility with WordPress 6.9 and 6.9.x

#### 1.1.1

 * Confirmed compatibility with WordPress 6.9 and 6.9.x.
 * Documented layout overflow issue in logo slider (.dbw-slider-track).

#### 1.1.0

 * NEW: Centralized Link Settings panel – Configure all logo links from one location
 * NEW: Link Target option – Choose between same window (_self) or new window (_blank)
   for all logos
 * NEW: Rel Attributes control – Add custom rel attributes (nofollow, sponsored,
   noopener) to all logo links
 * NEW: Title Attribute option – Set tooltip text for all logo links
 * IMPROVED: Smart rel attribute handling – Automatically includes noopener noreferrer
   for _blank targets
 * IMPROVED: Enhanced German translations for all new link settings
 * IMPROVED: Better accessibility with configurable aria-labels for logo links
 * ENHANCED: Individual logo links now use centralized settings while maintaining
   backward compatibility

#### 1.0.2

 * Complete German translation implementation with Plugin Check compliance
 * Full German translation support (43 translated strings)
 * Created German .po/.mo files for backend/PHP strings
 * Added JavaScript translation .json file for Gutenberg editor interface
 * Professional German WordPress terminology used throughout
 * FIXED: Plugin Check compliance – Removed load_plugin_textdomain() as discouraged
   by WordPress.org
 * WordPress.org automatic translation loading via Text Domain and Domain Path headers
 * Maintains JavaScript translation support via wp_set_script_translations()
 * Added ‘Tested up to: 6.8’ for latest WordPress compatibility
 * All interface strings available in German with zero functionality changes

#### 1.0.1

 * Added developer source files for JS and CSS to comply with WordPress.org guidelines
 * Updated readme.txt with correct “Contributors” including WordPress.org username
 * Documented build process and source code location in readme

#### 1.0.0

 * Initial release
 * Infinite scrolling for logos
 * Customizable speed and spacing
 * Hover-pause functionality
 * Optional links for each logo
 * Overlay controls with color picker
 * Black logos option
 * Adjustable logo height (30-150px)
 * Fully responsive design
 * WordPress 6.8 compatibility

## Meta

 *  Version **2.5.0**
 *  Last updated **2 days ago**
 *  Active installations **300+**
 *  WordPress Version ** 6.6 or higher **
 *  Tested up to **7.0.7**
 *  PHP Version ** 7.2 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/infinite-logo-carousel-block/)
 * Tags
 * [client logos](https://en-au.wordpress.org/plugins/tags/client-logos/)[logo carousel](https://en-au.wordpress.org/plugins/tags/logo-carousel/)
   [logo marquee](https://en-au.wordpress.org/plugins/tags/logo-marquee/)[logo slider](https://en-au.wordpress.org/plugins/tags/logo-slider/)
   [Text Marquee](https://en-au.wordpress.org/plugins/tags/text-marquee/)
 *  [Advanced View](https://en-au.wordpress.org/plugins/infinite-logo-carousel-block/advanced/)

## Ratings

 5 out of 5 stars.

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

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

[See all reviews](https://wordpress.org/support/plugin/infinite-logo-carousel-block/reviews/)

## Contributors

 *   [ Dennis Buchwald ](https://profiles.wordpress.org/dbwmediadennis/)

## Support

Issues resolved in last two months:

     0 out of 2

 [View support forum](https://wordpress.org/support/plugin/infinite-logo-carousel-block/)