我反复看到的一个挑战是,一家拥有现有网站的公司希望集成一个内容管理系统。是否有标准的方法/技术来保持现有的网站,但允许某些页面或内容片段由CMS驱动?
例如,假设您有一个rails网站,该网站当前有about us、jobs和新闻发布页面的硬编码,以及主页上的newsticker。您希望在重新使用当前网站布局时将这些页面移动到CMS(如Radiant)。换句话说,如果我对app/views/layouts/application.html.haml中的站点标题进行了更改,那么它也应该反映在cms管理的页面中。如何有效地让像radiant这样的cms管理您现有网站上的某些页面?

最佳答案

我只在辐射公司管理整个网站的地方工作过。我们还通过配置web服务器将某些请求传递给wordpress,将其余请求传递给radiant,在特定的url(运行wordpress)上建立了一个blog。如果您有您想要在Radiant中使用的自定义功能,它有一个“扩展”体系结构。如果您想将页面移动到radiant并共享布局位,可以使用布局标记定义布局,那么在radiant中创建的每个“页面”都需要为其指定布局。
如果您试图共享一个rails应用程序布局文件并让radiant知道它,我不确定这是否可能。通常,部署cms是为了让非程序员可以编辑面向公众的web页面上的内容,根据我的经验,这些页面通常服务于可能由rails支持的应用程序的营销功能。如果公共营销网页碰巧也有与应用程序相同的标记,我会将html复制并粘贴到radiant中。通常,这些公共营销页面有一个特定的设计,不打算像rails应用程序布局那样灵活地显示内容(使用任意控制器等)。
要开始使用公共页面,您可以在rails应用程序公共目录中创建静态html页面,或者创建一个控制器和视图(在其相应的目录中),以共享布局(关于、联系人等)。

09-16 09:12