1718442886
2024-06-14 14:59:16
この新しいマルチポスト シリーズへようこそ。このシリーズでは、私がまた別のクレイジーな実験に熱中する様子を追っていきます。MVC、Razor Pages、Blazor コンポーネントを組み合わせて、私たちのお気に入りの Alloy サイトを Optimizely Graph (および SaaS CMS) 上でヘッドレス サイトとして実行することはできるでしょうか。また、従来の Optimizely/Episerver サイトで慣れ親しんできた開発者と編集者の両方のエクスペリエンスを実現できるでしょうか。さあ、確かめてみましょう。
さて、このブログを定期的に読んでいる人は気づいているかもしれないが ある種の懐疑心 Optimizely CMS のヘッドレス サイトの概念に関しては、私にはその考えはありません。私は今でもその考えに変わりはありませんが、コンテンツ管理をプレゼンテーションやサイト ロジックから切り離したいという正当なビジネス (および技術) 上の理由もあることは確かです。
そのような場合、私が考える重要なことは、優れた開発者エクスペリエンスを可能な限り簡単に提供し、保守が必要な追加コードの量を最小限に抑えるアーキテクチャを考え出すことです。
その点で非常に役立つのが、比較的新しい Optimizely コンテンツ グラフです。これは、通常の Optimizely CMS サイト (DXP では、オンプレミスの価格設定は執筆時点ではまだ準備できていません) にも使用できるほか、SaaS CMS サービスにも組み込まれています。独自のカスタム外部コンテンツを追加することもできます (ただし、これは別のブログで取り上げます)。
何がすごいかというと、これは優れたフル機能の検索エンジンであり、効率的なコンテンツ クエリおよびナビゲーション プロバイダーであり、強力なコンテンツ API (基本的にコンテンツ配信 API に代わる) でもあるということです。また、GraphQL を使用しているため、すべてのプラットフォームで使用できるツールが豊富に用意されています。ああ、私のお気に入りの詳細の 1 つは、Webhook をサポートしていることです (ただし、これも後で説明します)。
これは Find に少し似ていると考えることができます。これは、コンテンツが CMS から継続的にプッシュされるホスト型 SaaS サービスであり、GraphQL を使用してクエリを実行できます。
話がそれてしまいましたが、このブログシリーズのテーマに戻りましょう。古き良き Alloy を再実装しましょう。ただし、Graph を API として、SaaS CMS をバックエンドとして、ヘッドレス ソリューションとして実装します。その過程で、他の人に役立つかもしれない NuGet パッケージやオープン ソース ツールが作成できたら、それでいいでしょう 🙂
SaaS CMSのコンテンツとコンテンツタイプを始めましょう
OMVP として、私は幸運にもいくつかの無料の SaaS CMS インスタンスを入手して試してみることができました。そして、もちろん、最も良い点は、それぞれに使用できる独自のグラフ インデックスが付属していることです。それでは、始めましょう。
最初にやったことは、まったく新しいローカルAlloy(あなたのように)。そして、すぐに管理者モードのエクスポート領域に向かいました。
パッケージのインポートとエクスポートは古い技術であり、かなり難しい場合があるので、いくつかの異なるパッケージに分割しました。
まず、コンテンツ タイプとその他のメタ情報を含むパッケージ、次にページ ツリーを含むパッケージ、最後にブロック ツリー構造のパッケージ (「すべてのサイト用」) が続きます。その後は、パッケージを 1 つずつインポートし (警告が表示されても目を閉じます)、いくつかの細かい詳細を調整するだけで、完成しました。
ご覧のとおり、順調なスタートを切っています。すべてのタイプが揃っており、編集モードに切り替えると、コンテンツも揃っていることがわかります。
そして最後に、以下に示すように、コンテンツは自動的にコンテンツ グラフにプッシュされ、クエリを開始できるようになりました。
グラフの使用
コンテンツ側では良いスタートです。次の投稿では、Graph を「ヘッド」側で使用するために必要なことについて、もう少し詳しく掘り下げていきます。
#Optimizely #Graph #と #SaaS #CMS #で #.NET #Core #ヘッドレス #サイトを構築する

