この度、手軽にブロックの属性である templateLock: "contentOnly" を設定できるプラグイン Lockly Blocky を WordPress 公式リポジトリに公開しました。
以下、簡単にこのプラグインの特徴を紹介します。
templateLock: “contentOnly” とは?
以前、こちらのブログでも紹介しているので参照してもらえるとわかりやすいかと思います。
ブロックのロック機能というのは、「移動」と「削除」を制限することができますが、ブロックのスタイリングなどの設定を変更することはできてしまいます。
その対策として templateLock: "contentOnly" をブロックの属性に設定することで、コンテンツの中身しか編集できないようにすることができます。
この機能を活用することで、例えば納品をしたお客様が不用意にレイアウトを壊してしまわないような仕組みを導入することはできます。
しかし、WordPress のデフォルト機能では(当記事執筆時)、ブロックエディターをコードエディターに変更して、手動で属性を書き換える必要がありました。そのため、なかなか本機能自体も知られることがなかったり、導入されることも少なかったのではないかと推測しています。
管理者だけがワンクリックで templateLock: “contentOnly” を設定できる
このプラグインを利用することで、ブロックのツールバーに鍵アイコンが表示され、簡単にワンクリックで templateLock: "contentOnly" に設定することができます。
また、誰でも簡単に変更できてしまうと意味がないので、管理者権限を持つアカウントでログインしている場合のみ利用できるようにしています。
そうすることで、クライアントが普段編集をする際には編集権限アカウントにしておくことで、ワンクリックで templateLock: "contentOnly" から戻すことができなくなります。
よって、編者権限アカウントのクライアントは、手軽にコンテンツ(テキストや画像など)を変更することはできますが、レイアウトやスタイリングを変更することはできなくなります。
管理者権限以外でも、ブロックエディターをコードエディターに切り替えることで、手動で属性を変更することは可能です。
下の動画でも紹介していますが、WordPress 標準機能のロック機能も併用すると、ブロックの削除や移動も制限できます。必要であれば併用して活用してください。
こんな方におすすめです
以前、「ブロックエディターだと、クライアントがぐちゃぐちゃにレイアウトを崩してしまうから導入できない。だから、テンプレートに直接コーディングしている」という話を聞いたことがありました。
その際に、上記のブログ記事を書いてロック機能の紹介をしたのですが、もっと手軽に導入できれば、もっとブロックエディターを活用してくれる人が増えるかもしれない、と考えました。
ですので、こんなことでお困りの方には試していただく価値があるかもしれません。
- お客さんがブロックエディターで作ったレイアウトを壊してしまうのを防ぎたい
- ブロックエディターをもっともっと活用していきたい
WordPressコアに同様の機能が搭載されたら開発を終了します
このプラグインでは、プラグイン独自の機能でロックを管理しているのではなく、単純にブロックの属性を変更しているだけなので、仮に WordPress コアに同様の機能が搭載された場合にも問題が起きることは少ないと考えています。
しかし、同様の機能をコアが持つのに、このプラグインを開発継続する意味はありません。ですので、プラグインページの Important Notice にも掲載していますが、コアに同様の機能が搭載された際には開発・メンテナンスを終了する予定です。
あらかじめご了承ください。
















