PFT – Widget Spacing Control

説明

PFT – Widget Spacing Control は、各ウィジェットの設定フォームに margin-top / margin-bottom の入力欄 (PC とスマホ別々) を追加するプラグインです。マイナス値もサポートしているため、空の余白ウィジェットを追加することなく、ウィジェット間の余白を広げたり詰めたりできます。

機能

  • PC とスマホ別に、ウィジェットごとの上下余白 (px) を設定
  • マイナス値対応(例: -10 で間隔を詰める)
  • 空欄ならテーマの初期値を使用
  • 専用設定ページなし — 各ウィジェットのフォーム内に直接入力欄が表示されます。
  • 任意のテーマで動作(サイドバー / ウィジェットエリア)。
  • 外部 CSS ファイルなし。JavaScript なし。PHP 単一ファイル。
  • トラッキングなし。外部リクエストなし。

優先度が保証される仕組み

余白設定が常にテーマや他プラグインの CSS に勝つように、以下の仕組みを採用しています:

  1. 三重 ID セレクタ (#id#id#id) により詳細度を0-3-0-0に引き上げ、一般的なテーマセレクタを上回ります。
  2. 保険として、すべての宣言に !important を付加しています。
  3. スタイルは wp_footer の優先度 9999 で出力されるため、他のすべてのスタイルの後に読み込まれます。

PC・スマホの値の切り替えにはメディアクエリを使用します(インラインスタイルは !important がメディアクエリの @media ルールを上書きしてしまうため、意図的に使用していません)。

レスポンシブブレークポイント

  • PC: 769px 以上
  • スマホ: 768px 以下

プライバシー

本プラグインは個人情報を収集・保存・送信しません。各ウィジェットの設定内に数値の余白値のみを保存します。

インストール

  1. widget-spacing-control フォルダを /wp-content/plugins/ にアップロードするか、WordPress のプラグイン画面からインストールします。
  2. プラグイン画面から本プラグインを有効化します。
  3. 外観 ウィジェットに移動します。各ウィジェットのフォーム下部に「余白 (Spacing)」セクションが表示されます。
  4. PC・スマホそれぞれに数値 (正または負の整数) を入力し、ウィジェットを保存します。

FAQ

ブロックウィジェット / Full Site Editing で動作しますか ?

in_widget_form と dynamic_sidebar_params を使うクラシックウィジェットシステムが対象です。FSE テーマのブロックウィジェットは対象外です。

テーマの CSS と競合しますか ?

いいえ。本プラグインは高詳細度セレクタと <style> タグの遅延出力を用いるため、ほとんどの場合テーマ CSS を上書きします。

個人情報を保存しますか ?

いいえ。本プラグインはウィジェットインスタンスのオプションに数値の余白値のみを保存します。個人情報は収集・送信しません。

設定はどこに保存されますか ?

各ウィジェットのインスタンス設定内 (WordPress 標準の widget_* オプション) に、wsc_mt_pc、wsc_mt_sp、wsc_mb_pc、wsc_mb_sp のキーで保存されます。

評価

このプラグインにはレビューがありません。

貢献者と開発者

PFT – Widget Spacing Control はオープンソースソフトウェアです。以下の人々がこのプラグインに貢献しています。

貢献者

“PFT – Widget Spacing Control” をあなたの言語に翻訳しましょう。

開発に興味がありますか ?

コードを閲覧するか、SVN リポジトリをチェックするか、開発ログを RSS で購読してみてください。

変更履歴

1.2.3

  • i18n: すべてのウィジェットフォームのラベルが pft-widget-spacing-control テキストドメイン経由で翻訳可能になりました。ソース文字列は英語。翻訳は https://translate.wordpress.org/projects/wp-plugins/pft-widget-spacing-control/ で歓迎します。

1.2.2

  • リファクタ: CSS は wp_register_style() / wp_enqueue_style() で登録し、wp_add_inline_style() 経由で添付するように変更(直接 echo 出力する方式から移行)。
  • リファクタ: wp_enqueue_scripts 内でウィジェットインスタンスを走査して CSS を事前計算するように変更し、従来の wp_footer での echo 出力とスタイル蓄積用のグローバル変数を廃止。
  • 命名: 全プラグイン関数で pftwsc_ (Pifto Works WSC) プレフィックスを使用するように変更。
  • dynamic_sidebar_params フィルターは、現在のテーマがウィジェット HTML に id 属性を付与しない場合のみ id="{widget_id}" を注入する用途に限定(事前計算されたセレクタとマッチさせるため)。

1.2.1

  • 修正: インライン !important スタイルが @media ルールを上書きしてしまい、スマホ用余白値が無視される不具合を修正。インラインスタイル注入を廃止し、<style> 内の #id#id#id !important セレクタのみで適用するようにし、PC とスマホの値が独立に動作するように改善。
  • セキュリティ: WordPress の出力エスケープ規約に準拠するため、フッタースタイルの出力を esc_html() 経由に変更。
  • 所有権を明確にするため、プラグイン名を「PFT – Widget Spacing Control」に変更。

1.2.0

  • GPL ライセンスヘッダを追加
  • Requires at least / Tested up to ヘッダを追加
  • ウィジェットフォームのフィールド ID と name を esc_attr() でエスケープ

1.1.0

  • CSS 詳細度を高めるための三重 ID セレクタ + !important
  • wp_footer の優先度 9999 でスタイルを出力

1.0.0

  • 初回リリース