Responsive Columns

Description

Responsive Columns extends the core Columns block and the Query Loop grid template with precise controls for desktop, tablet, and mobile breakpoints, flexible X/Y gap management with px / rem / em support, native Query Loop auto-fit support, advanced Custom widths controls for asymmetric core/Columns layouts, and an optional Masonry layout.

Key features

  • Five responsive breakpoints, including Desktop, tablet, and mobile layouts.
  • Shared breakpoint switching for column and gap controls.
  • Custom widths mode for core/Columns when equal-width responsive columns are not enough.
  • Per-column responsive Width controls for complex core/Columns layouts.
  • Simple per-breakpoint column order controls with Default, First, and Last.
  • Theme-aware gaps with separate column and row spacing controls.
  • px / rem / em support for Gap and Row gap.
  • Gap inheritance across smaller breakpoints with per-breakpoint overrides.
  • Native Query Loop Grid item position integration for Manual and Auto layouts.
  • Minimum column width support for Query Loop grids in Auto mode.
  • Safer Masonry rules with active-breakpoint validation for Query Loop grids.
  • Native block support for core/Columns and core/Post Template.
  • Lightweight output based on CSS custom properties and small front-end assets.

How it works

The plugin adds a has-s1-rc-columns class and a small set of CSS custom properties:

--s1-rc-columns-mobile-portrait
--s1-rc-columns-mobile-landscape
--s1-rc-columns-tablet-portrait
--s1-rc-columns-tablet-landscape
--s1-rc-columns-desktop
--s1-rc-gap-x
--s1-rc-gap-y

Your theme stays in control of the base layout. Responsive Columns only adjusts the number of columns and gaps at the configured breakpoints. If the plugin is removed, the blocks fall back to their normal WordPress behavior without leaving custom block markup behind.

Editor experience

  • Responsive controls live inside the block inspector with a shared breakpoint selector.
  • Core/Columns can switch between standard equal-width responsive columns and Custom widths for per-column overrides.
  • Query Loop auto-fit follows the native Grid item position setting instead of duplicating it.
  • Gap defaults are pulled from the active theme when possible.
  • Gap controls support px, rem, and em while keeping reset and inheritance behavior predictable.
  • Masonry availability is validated against the active breakpoint before it can be enabled.
  • Local reset actions restore responsive values back to the active theme defaults.

Accessibility and localization

  • Inspector controls are keyboard accessible and labeled for screen readers.
  • Strings are translation-ready via the responsive-columns text domain.

Screenshots

  • Query Loop grid in Manual mode with shared responsive Columns and Gap controls.
  • Query Loop grid in native Auto mode with Minimum column width, Gap, and Masonry guidance.
  • Tablet breakpoint override for Query Loop columns with inherited gap values.
  • Parent core/Columns controls in Custom widths mode with per-breakpoint gap settings.
  • Child Responsive Column controls with custom width and order overrides for asymmetric layouts.

Installation

  1. Upload the plugin folder to /wp-content/plugins/ or install Responsive Columns from the WordPress plugin directory.
  2. Activate the plugin.
  3. Select a Columns block or a Query Loop using the grid layout, then open the Responsive Columns panel in the sidebar.

FAQ

Does it work with reusable blocks and patterns?

Yes. Settings are stored as native block attributes, so they remain with reusable blocks, synced patterns, and template parts.

Will layouts break if I uninstall the plugin?

No. WordPress ignores the extra attributes after the plugin is removed, so content falls back to the default responsive behavior.

Can I use rem or em values for gap controls?

Yes. Gap and Row gap support px, rem, and em, while older saved px values remain fully compatible.

Does it depend on a specific theme?

No. The plugin extends native core blocks and keeps the active theme in charge of layout styles and spacing tokens.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Responsive Columns” is open source software. The following people have contributed to this plugin.

Contributors

Translate “Responsive Columns” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.5.0

  • Added Custom widths mode for core/Columns responsive layouts.
  • Added per-column responsive Width controls for tablet and mobile breakpoints.
  • Added simple per-breakpoint Order controls with Default, First, and Last.
  • Kept standard parent Columns controls focused on equal-width responsive layouts while custom widths handles asymmetric layouts.
  • Improved front-end and editor rendering for custom-width core/Columns layouts with reliable gap behavior.

1.4.1

  • Added px / rem / em support for Gap and Row gap.
  • Improved spacing controls to match the shared inline workflow used by Minimum column width.
  • Preserved direct theme gap values from theme.json when they use px, rem, or em.
  • Kept fallback handling for theme spacing variables predictable in the editor.

1.4.0

  • Added native Query Loop Grid item position integration for Manual and Auto layouts.
  • Added Minimum column width support for Query Loop grids in Auto mode.
  • Added front-end and editor auto-fit rendering for responsive Query Loop grids.
  • Improved Query Loop column controls to match native desktop behavior while keeping responsive overrides practical.
  • Added stronger Masonry guardrails and clearer notices for auto-fit and one-column states.
  • Refined Query Loop inspector copy and layout for a cleaner editing flow.

1.3.0

  • Added one shared breakpoint switcher for Columns and Gap controls, including Desktop.
  • Added responsive gap inheritance with per-breakpoint overrides and clearer helper text.
  • Added smarter local reset actions for columns and gap controls inside the inspector.
  • Refined the inspector layout, labels, and section spacing for a cleaner editing flow.
  • Added bundled translations and proper PHP/JS localization loading for editor strings.

1.2.0

  • Hardened front-end gap sanitization with safer CSS value validation.
  • Improved theme gap detection for theme.json preset and custom CSS variable formats.
  • Fixed editor preview selectors so responsive styles target only supported blocks.
  • Improved Masonry stability during image loading, resize events, and dynamic content updates.
  • Registered shared front-end styles per supported block instead of loading them globally.
  • Cleaned up project metadata for ongoing maintenance and future releases.

1.1.1

  • Reset responsive settings now restores gap values directly from the active theme.
  • New blocks initialize with the correct default gap from the theme or a reliable fallback (24px).
  • Column and row gaps stay synchronized consistently when linked.
  • Editor controls now display real pixel values based on the theme rather than placeholders.
  • Added a validation layer that only enables Masonry for valid Query Loop grid layouts.

1.1.0

  • Reworked the HTML filter to use WP_HTML_Tag_Processor instead of regex.
  • Hardened asset loading by reading script dependencies from index.asset.php with graceful fallbacks.
  • Optimized Masonry with clamped gap values, rate-limited resize handling, and observer cleanup.
  • Improved accessibility text for gap sliders and Masonry controls.

1.0.0

  • Initial public release.