【问题标题】:N2CMS Installation - Start node not appearingN2CMS 安装 - 启动节点未出现
【发布时间】:2012-11-25 03:08:03
【问题描述】:

我正在尝试将 N2CMS 集成到现有应用程序中。我正在安装过程中,并且一直在遵循提供的文档以集成到现有应用程序中。

我已完成安装的“添加内容包”部分。但是,“主页”开始页面未出现在“开始节点”下拉列表下(在“手动插入节点”下)。几天来我一直在尝试解决这个问题,查看了各种来源,但似乎没有任何效果。

我将在下面发布内容项(安装程序应该使用的 cs 代码)。我真正需要的是一个易于集成到现有网站的 CMS,这就是我选择 N2CMS 的原因。但是维护不善的文档和缺乏支持真的让我想尝试别的东西。不幸的是,每个 CMS 都希望您从头开始使用他们的系统。如果有人知道另一个易于集成到现有网站的开源 CMS,请告诉我。

这是 cs 代码(HomePage.cs,在“模型”文件夹下)

namespace ExistingApplication.Models
{

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using N2;
using N2.Web;
using N2.Details;
using N2.ContentItem;
using N2.Installation;

[N2.Definition("My page", "MyPage", "A simple page with a chunk of text", "The tooltip", 1, Installer = InstallerHint.PreferredStartPage, TemplateUrl = "~/UI/Home.aspx")]

[N2.Details.WithEditableTitle, N2.Details.WithEditableName]

public class HomePage : N2.ContentItem
  {

  }

}

顺便说一下,'TemplateUrl' 指向的 url 确实存在。提前致谢。

【问题讨论】:

    标签: content-management-system installation integration n2cms


    【解决方案1】:

    尝试通过实现(空)接口IStartPage来修改主页定义

    public class HomePage : N2.ContentItem, IStartPage
    

    IStartPage 是专门用于此目的的标记界面 - 以便 N2 可以将常规页面与可用作站点起始页的页面区分开来。

    【讨论】:

    • 似乎没有用。仍然只在“开始节点”下拉列表下显示 Root Page (fallback)。
    • 您可以尝试将 InstallerVisibility = InstallerHint.PreferredStartPage 添加到 PageDefinition 吗?
    • 是的,您也可以手动添加起始页。通过将 RootPage 添加为“单个节点”来完成安装。之后,进入 N2 管理,在根目录下创建新的 StartPage 节点。将鼠标悬停在其上以查看其 ID。然后,转到 App_Data/n2_host.config 并手动设置 startPageID="xxx" 其中 xxx 是您刚刚添加的 StartPage 节点的 ID。这肯定会奏效,但请先尝试我之前的评论,让我知道它是否有效。
    • 谢谢,我手动添加了起始页,它起作用了。我没有尝试你的第一个选项,对不起。真的想快速完成这项工作。
    猜你喜欢
    • 2021-04-06
    • 2021-06-01
    • 1970-01-01
    • 2020-04-25
    • 1970-01-01
    • 2021-05-23
    • 1970-01-01
    • 2018-01-30
    • 2021-02-14
    相关资源
    最近更新 更多