现有 MVC 5 站点上的 Piranha CMS
Piranha CMS on existing MVC 5 site
我是 Piranha CMS 的新手(通常在任何 CMS 中都是如此)。我有一个关于将系统集成到现有 MVC 5 应用程序的问题。这是我到目前为止所做的:
- 我已按照“入门”部分中的步骤进行操作
- 我已经创建了数据库并设置了连接字符串
- 我已经创建了admin用户,可以登录管理界面了
我遇到的问题是了解如何将我现有的页面引入管理器以及如何将它们公开给用户进行编辑。我确实查看了文档,但找不到专门针对该主题的任何内容。
非常感谢任何帮助。
谢谢。
丹尼尔·D.
从 Piranha CMS 获取数据到您现有的应用程序非常简单。
1.页面类型
首先,查看您需要创建的不同页面类型(即您需要的不同类型的页面结构)并通过管理器界面或代码创建它们。您可以在此处找到文档:
2。创建您的页面
接下来,只需在管理器中创建您需要的页面并添加内容即可。如果你想禁止用户添加页面,你可以稍后删除 "Add" 按钮,方法是将 CSS 注入管理器或自定义它。
3。将数据添加到您的模型
这里你有两个选择,要么让你的模型 从 PageModel 继承,要么你只添加一个新的 属性 和 CMS 数据到你现有的模型.
// 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 配置为 运行 被动模式 。您可以在此处找到有关配置的文档:
希望这对您入门有所帮助!
此致
/哈坎
我是 Piranha CMS 的新手(通常在任何 CMS 中都是如此)。我有一个关于将系统集成到现有 MVC 5 应用程序的问题。这是我到目前为止所做的:
- 我已按照“入门”部分中的步骤进行操作
- 我已经创建了数据库并设置了连接字符串
- 我已经创建了admin用户,可以登录管理界面了
我遇到的问题是了解如何将我现有的页面引入管理器以及如何将它们公开给用户进行编辑。我确实查看了文档,但找不到专门针对该主题的任何内容。
非常感谢任何帮助。
谢谢。 丹尼尔·D.
从 Piranha CMS 获取数据到您现有的应用程序非常简单。
1.页面类型
首先,查看您需要创建的不同页面类型(即您需要的不同类型的页面结构)并通过管理器界面或代码创建它们。您可以在此处找到文档:
2。创建您的页面
接下来,只需在管理器中创建您需要的页面并添加内容即可。如果你想禁止用户添加页面,你可以稍后删除 "Add" 按钮,方法是将 CSS 注入管理器或自定义它。
3。将数据添加到您的模型
这里你有两个选择,要么让你的模型 从 PageModel 继承,要么你只添加一个新的 属性 和 CMS 数据到你现有的模型.
// 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 配置为 运行 被动模式 。您可以在此处找到有关配置的文档:
希望这对您入门有所帮助!
此致
/哈坎