Cocoon本体に統合された機能

雑談
この記事は約6分で読めます。
記事内に広告が含まれています。

はじめに

スキン「メイド・イン・ヘブン」からCocoon本体に統合された機能がいくつかあります。

策定当初はスキン独自の機能でしたが、Cocoon本体に組み込むことで利用者全体の使い勝手が大きく向上すると考え、わいひら氏に提案し移設が実現しました。

この記事では、本体へ移設・統合された主な機能とその背景について紹介します。

単なる要望ではなく、仕様と試作を伴う貢献

これらの機能統合を進めるにあたり、私は単に「このような機能を追加してほしい」と要望を伝えるだけのスタンスはとりませんでした。
開発者であるわいひら氏の負担を少しでも軽減することが、機能実現への一番の近道だと考えたからです。

そのため、機能の提案を行う際には、ただのアイデアに留まらず、具体的な仕様や、実際に動作する「試作コード」をセットで提供し、本体への組み込みを検討していただく形をとりました。
事前に実装イメージやベースとなるコードがあることで、開発・検証のハードルを大きく下げることができます。
こうした「開発者の負担を減らす提案」を意識し、お互いに協力しながら進めてきた結果、これまで非常に数多くの機能追加や統合を実現することができました。

一連の要望や機能追加の中で、技術的に最も大きな変更であり、かつ重要な意味を持つのが「テンプレートフック」の導入です。
これは、WordPress標準のget_template_partを、Cocoon独自のcocoon_template_partに変更するという、一見するとシンプルな修正です。

しかし、この変更がCocoonをカスタマイズする上で果たす役割は極めて重大です。
独自のテンプレートパーツ関数に置き換わることで、フックを介したテンプレートの自由な差し替えや拡張が可能になり、テーマのポテンシャルを最大限に引き出すことができるようになりました。
ただ表面的な機能を追加するだけでなく、こうした柔軟で強力なカスタマイズの土台となる仕様を試作コードとともに提案できたことは、テーマの進化において大きな意味があったと感じています。

これまでに本体へ統合された具体的な機能について詳しくご紹介します。

スキンから本体へ統合された具体的な機能

実際に仕様と試作コードをセットで提案し、本体へ統合されるに至った具体的な機能をご紹介します。

patternショートコード

Cocoon 2.7.1でサポートされました。

移設の経緯

Cocoonには「テンプレート機能」(Cocoon設定→テンプレート)があり、入力はクラシックエディターで行います。
また、投稿→カテゴリーやタグの本文入力もクラシックエディターです。
そのため、HTMLの知識が必要となります。

一方、Gutenbergエディターでは、HTMLの知識がなくても複雑な装飾が可能です。
そこで、tempショートコードの代わりに patternショートコードを作成しました。
これにより、わいひら氏がパターン一覧として追加し、SWELLのブログパーツ機能のように簡単に使えるようになりました。

使い方

比較テーブル用の装飾(背景装飾アイコン)機能

Cocoon 2.7.1でサポートされました。

移設の経緯

「SWELLのような比較表を作りたい」という要望を多く見かけました。
Cocoonフォーラムでも、以前から比較表を作成する方法を紹介しています。

記号を入力する際には、これまでテンプレート機能を使用する方法がありました。
しかし、テンプレート機能を十分に理解していないユーザーも多いと考えられます。
そこで、マーカーと同じ仕組みで工夫し、ブロックツールに背景アイコンを追加しました。
これにより、SWELLのような比較表を簡単に作成できるようになりました。

使い方

CocoonにはSWELLのような独自「テーブル」ブロックがないため、WordPress標準の「テーブル」ブロックを使うことになります。

しかし、標準機能ではセルの結合ができません。
もし表のセルを自由に結合したい場合は、プラグイン「Flexible Table Block」の導入をおすすめします。

インラインボタン機能

「レーダーチャート」ブロック

開発者の盲点と「外を見る感覚」の必要性

ここまで多くの機能統合が実現した背景には、開発者が「自分が必要とするか」という主観に頼るあまり、ユーザーが求めるトレンドや他テーマの強みを見落としてしまうという課題もありました。

それを象徴するのが、以前、Cocoonフォーラムで「タブ切り替えブロック」の追加を提案した際のやり取りです。

フロントページ構築などで非常によく使われる定番機能ですが、開発者自身が使わない機能は、どれほど世間で需要が高くても提案なしには実装されません。

Cocoonは一時、人気有料テーマSWELLと業務提携していますが、SWELLがなぜ支持され、何が人気なのかというトレンドを意識していれば、「用途が分からない」という反応にはならなかったはずです。

どれほど優れた開発者でも、限られたリソースの中では活動の範囲にどうしても限界があります。
それほど、他テーマとの比較や自社製品への意識が回りきらない点があり、私はそうした「盲点」を補うための提案を続けてきました。

さいごに

スキンからCocoon本体に機能移設することで、Cocoon全体の使い勝手が向上しました。
それでも、スキン「メイド・イン・ヘブン」にはまだ多くの機能が残っていますので、ぜひお試しください。

移設しないと、本スキンの独壇場だったのでは?草

タイトルとURLをコピーしました