本当に基本的な CMS は、次の 3 つの要素で構成されます。
- 「ページ」を保持する 1 つのデータベース テーブル。テーブル構造は「名前」と「内容」
- タイプのリクエストを
/cms/pagename
固定コントローラに変換するルート、メソッドが呼び出さcms
れpagename
、パラメータとして
- 埋め込み可能な html エディター
現在、「ページ」を呼び出す方法は 2 つあります。作成モードまたは表示/編集モードのいずれかです。
「作成」モードでは、ページが要求されますが、まだデータベースにはありません (例: cms/announcement1
)。このモードでは、html エディターで構成されるビューを作成し、送信時にページをデータベースに永続化します。
「表示」モードでは、ページが要求され、データベースに存在します。必要な書き換えを実行し (たとえば、フォームの内部リンクを[cms/pagename]
完全にルーティング可能な http アドレスに書き換える)、コンテンツをレンダリングします。
ユーザーがページの編集を許可されている場合は、「編集」ボタンも表示されます。これにより、ページが読み込まれ、編集できるようになった状態で HTML エディターが呼び出されます。
以上です。
多くの追加要素 (キャッシュ、さまざまな組み込みページ タイプ、埋め込み画像、YouTube、事前に書式設定されたテキスト) などがありますが、それらはすべてオプションであり、コアが既に実装されている場合は新しい機能を導入できます。
上記の構造に従って単純な CMS を作成すると、それはより大きなソリューションの一部となり、今まで数百回の展開に成功しています。カスタム CMS の利点は、非常にシンプルで簡単に保守できることです。