2

私はPiranha CMS(および一般的なCMS)を初めて使用します。システムを既存の MVC 5 アプリケーションに統合することについて質問があります。これが私がこれまでに行ったことです:

  • 「はじめに」セクションの手順に従いました
  • データベースを作成し、接続文字列を設定しました
  • 管理者ユーザーを作成し、マネージャー インターフェイスにログインできます

私が問題を抱えているのは、既存のページをマネージャーに取り込む方法と、それらを編集のためにユーザーに公開する方法を理解することです。ドキュメントを調べましたが、このトピックに特化したものは見つかりませんでした。

どんな助けでも大歓迎です。

ありがとうございました。ダニエル D.

4

1 に答える 1

8

Piranha CMS から既存のアプリケーションにデータを取得するのは非常に簡単です。

1.ページの種類

最初に、作成する必要があるさまざまなページ タイプ (つまり、必要なさまざまな種類のページ構造) を確認し、マネージャー インターフェイスまたはコードで作成します。ドキュメントは次の場所にあります。

2. ページを作成する

次に、マネージャーで必要なページを作成し、コンテンツを追加します。ユーザーがページを追加することを禁止したい場合は、マネージャーに CSS を挿入するかカスタマイズすることにより、後でいつでも [追加] ボタンを削除できます。

3. モデルへのデータの追加

モデルに PageModel を継承させるか、既存のモデルに CMS データを含む新しいプロパティを追加するかの 2 つのオプションがあります。

// With inheritance
public class MyModel : Piranha.Models.PageModel {
  ...
}

// With the CMS data in a property
public class MyModel {
  public Piranha.Models.PageModel CMSData { get; set; }
}

4. データの取得

データの入力は、メソッドを呼び出すだけです。idまたは でアクセスできますpermalink。たとえば、パーマリンクでアクセスしてみましょう。パーマリンクのあるページがあるとしますabout-us。以下をコントローラーに追加するだけです。

// With inheritance
public class MyController : Controller {
  public ActionResult MyAction() {
    // Get the CMS-data
    var model = Piranha.Models.PageModel.GetByPermalink<MyModel>("about-us");

    // Fill the model with your custom data
    ...
  }
}

// With the CMS data in a property
public class MyController : Controller {
  public ActionResult MyAction() {
    // Create and fill your custom model
    var model = new MyModel();
    ...

    // Get the CMS-data
    var model.CMSData = Piranha.Models.PageModel.GetByPermalink("about-us");
  }
}

5. 構成

アプリケーションでルーティングを制御する場合は、Piranha CMS をパッシブ モードで実行するように構成する必要があることに注意してください。構成に関するドキュメントは次の場所にあります。

これがあなたが始めるのに役立つことを願っています!

よろしく

/ホーカン

于 2015-04-08T15:57:47.920 に答える