株式会社キノトロープ様は、大規模なウェブサイト構築・CMS導入を得意とするウェブ制作会社。日本のウェブ業界を牽引し、ウェブの歴史と共に歩まれてきました。
PowerCMS は長くご利用いただいており、PowerCMS X も複数導入いただいています。今回は PowerCMS X について様々なお話を伺いました。
株式会社キノトロープ
https://www.kinotrope.co.jp/ 別ウィンドウで開きます
インタビュー日
2024年9月4日
ご担当者様
高橋:キノトロープはウェブ制作専門の会社です。CMS を使った大規模なウェブサイト制作を得意としています。
会社としては昨年30周年を迎え、これまで積み上げてきた過去の実績・多くの経験や知見があること、ウェブ制作に関わるすべてが自社内で完結することが最大の強みです。
単にウェブサイトを制作するだけでなく、お客様の課題や要望に応じたツールの提案をします。最終的に CMS の導入に至ることが多いですが、極端な例を挙げると CMS は不要というケースやリニューアルすらしないというご提案になるケースもあります。
コンサルティングから制作・開発・運用まで社内で対応できるということは、社内にどんどん知見がたまっていくのでお客様からの質問にも迅速に回答ができます。また、複数のベンダーの CMS を利用しているので、お客様のやりたいこと、目標や成果に対して一番適切なものをご提案することができます。
CMS ごとのチームがあるわけではないので、社内のエンジニアにはいろいろな CMS を扱えるように仕事を割り振っています。ひとりひとりの好みや得意な CMS はありますが、組織として流動的に動けるようになってもらいたいと考えています。
高橋:CMS の選定については、まず規模感です。サイトの規模感だけでなく、運用するユーザー数の規模感でも条件が変わります。静的か動的かも大きなポイントで、「静的なファイルで運用したい」という要望があれば、CMS の候補はある程度まで絞り込めます。
もちろん、予算感やセキュリティ面、ウェブアクセシビリティの対応なども考慮します。
お客様のご要望で、複数の CMS を比較検討することもありますが、単に機能の有無だけで決められるものではないので、比較表だけでは比較できないことがあると感じています。多くの場合、要件をお伺いした時点でどの CMS がマッチしそうか、自分の中ではほぼ決まっていますね。
PowerCMS X はリリース直後から知っていて、再構築や管理画面の高速化、PHP で書かれていることなどに関心があり、いつか使ってみたいと思っていました。初めて導入した案件では規模感や費用面、静的生成、モデルの作り込みができるという点がマッチしていたので採用しました。
五木田:たとえば製品情報と会社情報など、コンテンツによって管理画面の構成が全く異なるケースがあると思いますが、PowerCMS X では開発者がモデルを使ってデータ構造を自由に設計できるため、コンテンツに合わせた入力画面を用意することができ、エンドユーザーのニーズにマッチした開発がしやすいと感じています。
従来のように、ウェブサイト / ブログといった構成にとらわれることがなくなり、幅広く対応できるようになりました。
管理画面のモデルの編集画面からカラムごとに細かい設定ができるため、開発の経験が浅いエンジニアもデータベースを意識せずに構築を進めることができます。逆に、技術の高いエンジニアにとっては、もっと複雑な構築・実装が実現可能となっています。
竹内:普段から複数の CMS を扱っていることもあり、PowerCMS X についても PowerCMS との違いについては特に抵抗はありませんでした。
最初はドキュメントを調べながら触ってみましたが、テーブルの設計・実装が管理画面でできること、その操作が直感的に理解できる GUI になっていてわかりやすいと感じました。エンジニアには、かなり触りやすい形になっていると思います。
高橋:再構築が早くなったのはもちろんのこと、全体再構築をしなくても、最小限の範囲で再構築が制御できるようになりました。必要なところだけ再構築しやすくなったと感じています。
竹内:PHP でプラグインが書けるため、自分たちでプラグインを書くことも多いです。コンテンツとデータベースを直接結びつけるようなことが手軽にできますね。公式のドキュメントが充実していることもあって、システムに対するお客様の要望に柔軟に応えることができるようになりました。
あと Restuful API が便利です。
基本的には静的だけど、部分的にここだけ JavaScript で描画したり動的に処理したりといったことが、システム側の開発がほぼ不要でフロント側だけで実現できています。
高橋:モデルのリレーションを張ることで、データを一元管理するような作りにできます。たとえば、ある案件では、店舗情報マスタ・店舗詳細情報・店舗ごとの価格表などのデータを紐づけた状態で管理するように作り込みました。それらのデータが検索機能と連動して、条件指定したものだけを表示したり、店舗のエリアごとにグルーピングをしたりしています。
他にも、タグで関連する情報をいろいろなところに紐づけたり、細かく指定することで必要な箇所に必要な情報を出す、というような実装をしました。
また、別の案件では外部のシステムと連携して IR情報を RSS から取得する開発もしました。
これまでは IR情報のシステムに登録したものと同じ情報を、企業サイト側にも登録して公開するという手間が発生していましたが、リニューアルに伴い RSS を自動で取得し PowerCMS X の中にデータを登録するようにしました。フロント側から見てもまったくわからないのですが、それ以外のニュースなど管理画面から登録されているオブジェクトと混在する形です。オブジェクトして登録されているので必要があれば編集することも可能です。
五木田:この案件では、同じ内容のページを複数のサイトに掲載したいという要望があり、スペースをまたいでコンテンツを共有するような実装もしました。Aというサイトで作成したページを、BというサイトからIDを選択するだけで中身が出力されるようにすることで、データの一元管理を実現しています。
高橋:基本的には自社でどうにかできてしまうことが多いので、サポートは保険的な意味合いが強いのですが、どうしてもわからないことや悩む時間が長くなってしまいそうなときは、サポートに聞いてみたほうが早い!ということで製品サポートに問い合わせています。
詳しく見ていただいたり、スピーディーに回答いただけて助かっています。
高橋:標準機能の外部プレビュー機能やライブプレビュー機能、ワークフロー機能なども使っています。
案件によっては、CMS にはデータ登録せず静的ファイルを直接アップロードして公開するページがありますが、その場合はアセットにアップロードしています。こうすることでステータス管理ができるので、リリース時間を制御できる点が非常に便利です。
あと、Amazon S3 別ウィンドウで開きます を利用するケースもありますが、S3 への同期機能が標準機能になっているのがいいですね。現時点では、それができる他のツールは弊社が使っている CMS の中ではありません。
今後、より AWS が持っている様々な機能を使いたいお客様も増えてくると思うので、直接連携できると提案しやすくなりそうです。
有償オプションプラグインでは静的ページ分割の SplitPage プラグイン、静的ファイルを同期する SiteSync プラグインもよく利用しています。
竹内:先の実装の話の中にも出てきたのですが、サイト内で共通のデータを使って出し分けたりしていると、どうしてもマスタ系のモデルの数が増えてしまいがちです。
先日、モデルが増えすぎると管理画面が重くなる(テンプレートタグの生成処理に時間がかかる)という話をお伺いし、初回の読み込みが重いと感じていたのはこれだったのかと思いました。使っていないタグの生成を制御できると軽くなっていいなあと思います。
五木田:弊社の場合、大規模なサイトの構築が多くあるのでワークフローとの兼ね合いでモデルの切り分けが必要になることがあります。
事業部ごとにモデルを分けるなど、コンテンツには見えてこない部分でモデルの数が増えてしまいます。モデル数が100でも200でも動作への影響が小さくなるといいですね。動作の重さは運用者に直接影響があるので、クリティカルな問題だと思います。
高橋:現状は、案件ごとにそのつどモデルを作成していますが、企業サイト向け・商品管理向けといったモデルのパッケージ化を進めたいと考えています。
弊社のナレッジを最大限に活かして、PowerCMS X のパッケージをすぐに提供できるようにしていきたいです。