[WordPress] 外掛分享: RenderWhen for Blocks

首頁外掛目錄 › RenderWhen for Blocks
WordPress 外掛 RenderWhen for Blocks 的封面圖片
全新外掛
安裝啟用
尚無評分
29 天前
最後更新
問題解決
WordPress 6.5+ PHP 7.4+ v1.0.0 上架:2026-05-16

內容簡介

RenderWhen for Blocks 為 WordPress 區塊編輯器中的每個區塊添加條件可見性功能。使用者可以根據登入狀態、日期範圍或裝置類型來決定哪些內容顯示,提升網站的靈活性與效能。

【主要功能】
• 伺服器端渲染,隱藏區塊不會進入頁面輸出
• 公開條件 API,允許開發者自訂條件
• 內建用戶狀態、日期範圍及裝置類型條件
• 編輯器中可視化顯示帶有可見性規則的區塊
• 模擬不同訪客角色的預覽功能

外掛標籤

開發者團隊

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

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

原文外掛簡介

RenderWhen for Blocks adds conditional visibility to every block in the WordPress block editor. Decide who sees what, and when, with a panel that reads exactly how you’d say it out loud:

Show this block when the user is logged in.
Show this block when the date is between March 1 and March 31.
Show this block when the device is mobile.

RenderWhen is built around two ideas that set it apart from other visibility plugins:

Server-side rendering only. When a block is hidden by a condition, it is not rendered into the page output at all. No CSS display: none, no DOM bloat, no leaked content in view-source. Search engines, screen readers, and your page weight all benefit.
Public Conditions API. The three built-in conditions are registered through the same public API your plugin or theme can use to add your own. No hacks, no internal-only code paths.

In the editor, a subtle dashed border marks every block that carries a visibility rule, so a rule-bearing block never disappears from the published page as a surprise. A “Preview as audience” sidebar lets you simulate a logged-out visitor, a specific role, or a different device class right in the editor — blocks whose rule would hide them fade out with a clear badge, no save-and-reload cycle required.
Built-in conditions (v1.0)

User state — show to logged-in users, logged-out users, or specific roles
Date range — show between two datetimes, timezone-aware
Device type — show on desktop, tablet, or mobile

Designed for

Agencies and freelancers building client sites who want a clean, predictable visibility tool
Developers who need an extension point, not another walled garden
Anyone who cares about page weight and SEO hygiene

What this plugin deliberately does NOT do
It does one thing well rather than ten things adequately. Out of scope in v1.0:

Multi-condition AND/OR groups (planned for v1.1)
URL / cookie / referrer / geolocation conditions
WooCommerce, ACF, or membership integrations
A settings dashboard

If you need those today, Conditional Blocks and Block Visibility are excellent and well-established choices.
For developers
Register a custom condition in three steps. Implement the interface, add it to the registry, ship.
add_action( 'renderwhen_register_conditions', function ( $registry ) {
$registry->register( new My_Plugin\\Conditions\\Country_Condition() );
} );

Your condition class implements RenderWhen\Conditions\Interface_Condition:
namespace My_Plugin\Conditions;

use RenderWhen\Conditions\Interface_Condition;

class Country_Condition implements Interface_Condition {
public function get_id(): string {
return 'country';
}

public function get_label(): string {
return __( 'Visitor country', 'my-plugin' );
}

public function get_schema(): array {
return array(
'type' => 'object',
'properties' => array(
'countries' => array(
'type' => 'array',
'items' => array( 'type' => 'string' ),
),
),
);
}

public function evaluate( array $settings, array $context ): bool {
$current = my_plugin_detect_country();
return in_array( $current, $settings['countries'] ?? array(), true );
}
}

The full set of public filters:

renderwhen_register_conditions — register your conditions here
renderwhen_evaluate_{condition_id} — last-mile override of any condition’s result
renderwhen_render_block_hidden — fires when a block is hidden, useful for cache busters and SEO tools
renderwhen_device_type — swap in your own device detection

The plugin is developed openly on GitHub. Issues, PRs, and architecture discussions welcome: https://github.com/abhishekfdd/renderwhen

延伸相關外掛

文章
Filter
Mastodon