[WordPress] 外掛分享: Block Style Modifiers

首頁外掛目錄 › Block Style Modifiers
WordPress 外掛 Block Style Modifiers 的封面圖片
20+
安裝啟用
尚無評分
65 天前
最後更新
問題解決
WordPress 6.1+ PHP 7.4+ v1.0.7 上架:2026-01-07

內容簡介

### 總結:

Block Style Modifiers 是一個簡單的 WordPress 外掛,可以讓你為 Gutenberg 區塊添加多個樣式。
這些 Style Modifiers 是可以額外添加的 CSS 類,可以一次應用於多個區塊,由主題或外掛預定並有文件記載。
可以在任何區塊類型中註冊多個樣式修改器,並將它們應用到單一區塊。
支持全域樣式修飾符,對所有區塊進行樣式修改。
使用時需要在主題的 functions.php 檔案或自訂外掛中使用 register_block_style_modifier 函數來定義你的樣式修改器。在區塊編輯器中選擇樣式修改器,它們將作為額外的 CSS 類應用在區塊的包裝元素上。

### 問與答:

1. Block Style Modifiers 是什麼?

- 可以為 Gutenberg 區塊添加多個樣式的 WordPress 外掛。

2. Style Modifiers 主要特點有哪些?

- 可以額外添加於區塊樣式之外的 CSS 類。
- 可以一次選擇多個樣式修改器。
- 由主題或外掛預定並有文件記載。
- 保持類順序,允許進階的 CSS 控制。

3. 如何使用 Block Style Modifiers?

- 使用 register_block_style_modifier 函數,在主題的 functions.php 檔案或自訂外掛中定義你的樣式修改器。
- 在區塊編輯器的側邊欄下找到「Block Style Modifiers」,選擇所需的樣式修改器。
- 樣式修改器將作為附加的 CSS 類應用在區塊的包裝元素上。

4. 有哪個外掛包含 Block Style Modifiers?

- Block Style Modifier Pack 外掛。

5. 如何註冊一個 Block Style Modifier?

- 使用 block_style_modifiers_register_style 函數來註冊,提供類別、標籤、描述等資訊。
- 例如可以使用全域樣式適用於所有區塊的設定。

外掛標籤

開發者團隊

⬇ 下載最新版 (v1.0.7) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Block Style Modifiers」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

Block Style Modifiers is a simple WordPress plugin that allows you to add multiple block styles to Gutenberg blocks.
Style Modifiers are additive CSS classes that:

Can be applied in addition to a Block Style
Can be selected multiple at the same time
Support both checkbox (non-exclusive) and radio (exclusive) behavior per category
Are predefined and documented by themes or plugins
Preserve class order, allowing advanced CSS control

Category Behavior
Style modifiers are organized into categories with two behaviors:

Non-exclusive categories (checkbox): Multiple modifiers can be selected simultaneously (default: exclusive: false)
Exclusive categories (radio): Only one modifier from the category can be selected at a time (exclusive: true)

Structured Category Object
Categories must be defined as objects with:

slug – Language-independent identifier for grouping (required)
label – Translatable UI label (required)
description – Optional category description
exclusive – Boolean flag for radio behavior (default: false)

Features

Register multiple style modifiers for any block type
Apply multiple style modifiers to a single block
Global style modifiers that apply to all blocks
Inline CSS support for easy styling of modifiers
Structured category objects with exclusive/non-exclusive behavior
Theme-independent default modifiers via Block Style Modifier Pack

Default Modifiers
Block Style Modifiers includes theme-independent default modifiers that work with any WordPress theme:
Philosophy:
* Enhance behavior, not visual design
* No borders, shadows, spacing, or color palettes
* Work with any theme without conflicts
* Atomic and performant
* Respect prefers-reduced-motion
Available Categories:
Animations (Exclusive) – Entrance animations for wrapper blocks
* Fade In – Smooth fade entrance
* Slide Up – Slide from bottom
* Slide Down – Slide from top
* Slide Left – Slide from right
* Slide Right – Slide from left
* Scale In – Scale up animation
* Rotate In – Rotate with fade
* Flip In X – 3D flip animation
Applied to: Group, Row, Stack, Grid, Column, Columns (wrapper blocks only)
Animation Delay (Exclusive) – Control animation timing
* Fast (0.2s)
* Normal (0.4s)
* Slow (0.8s)
Hover Effects (Exclusive) – Transform-based hover interactions
* Zoom In on Hover
* Subtle Rotate on Hover
* Bounce on Hover
* Shake on Hover
* Brighten on Hover
* Darken on Hover
* Grayscale to Color on Hover (Image/Cover only)
* Blur to Focus on Hover (Image/Cover only)
Applied to: Image, Cover, Media & Text (content blocks only)
Text Effects (Exclusive) – Micro-interactions for text
* Underline Reveal on Hover
* Soft Text Fade on Hover
Applied to: Paragraph, Heading (text blocks only)
All default modifiers respect accessibility preferences and are disabled when prefers-reduced-motion is set.
Architecture Note: Animations are only available for wrapper blocks (Group, Row, Stack, etc.) while Hover Effects are for content blocks (Image, Cover, Media & Text). This separation prevents CSS property conflicts and ensures all modifiers work seamlessly together.
You can easily extend or override these defaults by registering your own style modifiers in your theme or custom plugin.
Usage

Define your style modifiers using the block_style_modifiers_register_style function via your theme’s functions.php file or a custom plugin.
Select style modifiers in the block editor sidebar under “Block Style Modifiers”.
Style modifiers will be applied as additional CSS classes to the block’s wrapper element.
It is possible that reordering of classes may affect CSS specificity and styling.

Note: There is available an experimental plugin includes blocks style modifiers: Block Style Modifier Pack plugin to function.
Registering a Block Style Modifier
You can easily register your own style modifiers in your theme or custom plugin.
Here are some examples of how to register style modifiers with different category behaviors:
Exclusive Category (Radio Behavior)
block_style_modifiers_register_style( [ 'core/image', 'core/cover' ], [
'name' => 'zoom-on-hover',
'label' => __( 'Zoom on Hover', 'my-theme' ),
'class' => 'bsm-zoom-on-hover',
'description' => __( 'Zoom into image on hover', 'my-theme' ),
'category' => [
'slug' => 'hover-effects',
'label' => __( 'Hover Effects', 'my-theme' ),
'description' => __( 'Transform-based hover interactions', 'my-theme' ),
'exclusive' => true,
],
] );

Non-Exclusive Category (Checkbox Behavior)
block_style_modifiers_register_style( '*', [
'name' => 'hide-sm',
'label' => __( 'Hide on Small Screens', 'my-theme' ),
'class' => 'bsm-hide-sm',
'category' => [
'slug' => 'responsive',
'label' => __( 'Responsive', 'my-theme' ),
'description' => __( 'Responsive visibility controls', 'my-theme' ),
'exclusive' => false,
],
] );

That’s it! You can now select multiple style modifiers for your blocks in the Block Editor.
Example Result in Markup
class="wp-block-cover has-custom-content-position is-position-bottom-left bsm-zoom-hover bsm-fade-in bsm-delay-normal"

It is important to note that the order of classes may affect CSS specificity and styling. You can easily reorder your modifiers with drag/drop functionality in the Block Editor.
Source Code
It is available on GitHub:
* GitHub: https://github.com/Arkenon/block-style-modifiers

延伸相關外掛

文章
Filter
Apply Filters
Mastodon