代码之家  ›  专栏  ›  技术社区  ›  Ben Rowe

用于设计好的内容发布系统的资源

  •  2
  • Ben Rowe  · 技术社区  · 15 年前

    每次保存一个项目时,它都会将数据快照创建到“时间线”中。汇票也是如此。自动功能将在需要时将时间线草稿拉入原始记录。

    我已经快速浏览了其他系统,但我还没有从我目前的想法中改进。

    我确信有人已经建立了这样一个系统,我想在开始构建之前改进我的设计。任何好的文章/资源也会有所帮助。

    谢谢

    4 回复  |  直到 15 年前
        1
  •  1
  •   Bork Blatt    15 年前

    MediaWiki ,Wikipedia使用的系统,它也使用PHP和MySQL。

        2
  •  1
  •   Meep3D    15 年前

    我认为使用serialize()将每一行编码为单个字符串,然后将其保存到中央数据库可能是一个解决方案。

    您的“实时”数据库将包含相关的表等,但当您编辑或创建某些内容(不单击“发布”)时,它将不会保存在主表中,而是进入如下表中:

    id - PRI INT
    date - DATETIME
    table - VARCHAR
    table_id - INT
    type - ENUM('UNPUBLISHED','ARCHIVED','DELETED');
    data - TEXT/BLOB
    

    它需要相当多的腿部工作才能让一切正常工作,但应该提供完整的发布/取消发布和回滚功能。正确地集成到自定义数据库函数中,也可以透明地(从SQL的角度)执行所有这些操作。

    我一直在计划实施这项计划,以解决您似乎遇到的同一个问题,但从我的角度来看,这仍然是理论性的,但我认为这一想法是正确的。

        3
  •  0
  •   Shiraz Bhaiji    15 年前

    DotNetNuke是一个很好的开源CMS,你可以通过阅读该系统的资源来获得想法。或者你可以简单地使用DotNetNuke。

    http://www.dotnetnuke.com/

        4
  •  0
  •   Jeroen de Lau    13 年前

    考虑一下Drupal,我认为仍然是出版的领先CMS。Drupal与工作流模块相结合,包含您所需的所有内容:
    http://drupal.org
    http://drupal.org/project/workflow

    并为可用性添加保存草稿:
    http://drupal.org/project/save_draft