我正在构建一个网站(使用 ASP.NET、MVC 3、Razor)并且我没有使用现成的 CMS。这是因为我评估了很多现有的 CMS,发现它们都具有巨大的学习曲线,大量我不需要的功能,它们迫使您进入面向页面的模型。“面向页面的模型”是指您可以指定一般的页面布局和样式表,但用户可以编辑的对象是整个页面,例如显示在中央面板中,也许您可以自定义侧边栏也是如此。
但是这个网站非常以设计为中心,需要比这更加流畅和细化。“以设计为中心”是指该网站是由一位平面设计师在 Photoshop 中构建的,并且大量使用图像和复杂的样式将设计映射到 HTML/css/js。此外,网站上的每个页面都完全不同。还有诸如手风琴面板之类的 UI 元素,我们需要用户能够在其中编辑每个面板的内容,但肯定不是支持手风琴的 jQuery+HTML。用户是主题专家,但非常非技术性。
因此,我将有一个包含许多复杂布局和样式的页面,我不希望用户访问这些页面,但其中会有一个div
包含文本,我希望用户能够编辑。
我怎样才能最好地做到这一点?
到目前为止,我通过将片段(HTML 的小单元)存储在外部文件中来实现这一点,用户可以对其进行编辑。在运行模式下,这些内容被加载并内联显示(如果您已登录并具有权限,则带有一个小的“编辑此内容”按钮)。如果单击“编辑”按钮,您会看到一个所见即所得的小编辑屏幕,您可以在其中编辑和保存更改。所以我可以控制所有乱七八糟的东西,并为用户可编辑的内容放置小占位符。但这对我来说并不完全简单,我想知道是否有更好的方法。