我正在寻找一个只输出JSON数据的CMS.
我做了一些研究,发现了一些可能性.但我发现的所有"基于API"的CMS都托管在云中.
一些例子正是我想要的......但是在云端:
我正在寻找具有这样功能的CMS,但我自己托管.
我正在寻找的CMS的要求:
我只需要获取内容否以添加新数据.(如果这也是可能的:)这不是问题
谢谢你的时间.
更新 - 复制问题的过程:
1)在c:\ projects\restart-demo创建一个网站项目
2)添加默认的web.config和一个虚拟的aspx页面test.aspx
3)映射IIS以指向根文件夹c:\ projects\restart-demo
4)使用perfmon,运行状况监视,global.asax Application_End等跟踪监视应用程序重启.
5)浏览器http://localhost/test.aspx中的请求页面
申请开始
6)创建新文件夹c:\ projects\restart-demo\asdf
申请结束
7)浏览器http://localhost/test.aspx中的请求页面
申请开始
8)将文件夹c:\ projects\restart-demo\asdf重命名 为 c:\ projects\restart-demo\asdf1
申请结束
结束更新
我们使用后端CMS在ASP.NET站点中生成文件和文件夹.
用户可以创建/修改/删除文件并将其推送到Web场.
我们注意到的一个问题:
当用户创建,重命名或删除文件夹时,会导致App Domain重新启动.结果,会话,缓存等都丢失了.
请注意,它不需要是/ bin或/ App_Code之类的特殊文件夹.
有什么方法可以防止这种行为吗?
它实际上阻碍了性能,原因有两个:
asp.net appdomain application-pool content-management-system
我一直在寻找一个支持多语言支持的死简单CMS.理想的候选人非常精简,可以为不同的领域设置不同的语言.如果语言支持由插件/扩展提供,则可以.
例如,我希望example.com指向英语,example.fr应该是法语.使用不同的URI映射搜索引擎优化.
它可以用PHP,Ruby或Python开发,必须是开源的.
有小费吗?
谢谢
编辑/更多详细信息
我想要的是一个CMS,它像Radiant一样易于使用和掌握客户端,但每个资源上都有标签,可以将文章翻译成不同的语言.
语言必须能够使用多个域,每种语言一个.
我想轻松地将同一篇文章用于多种语言,并且只有与一种语言相关的文章(例如博客文章或新闻报道).
CMS的核心功能应该非常轻(如Radiant,与Drupal/Joomla不同),但可以使用插件轻松扩展.
php python multilingual ruby-on-rails content-management-system
我越来越注意到正在使用的内容管理系统的数量.我对SiteCore有一些熟悉.我读过一些关于Umbraco的文献.前几天我才刚刚收到乌节的风.我只听到过有关EPiServer的正面反馈.我很快就会进入一个使用它的角色.
这些功能和价格差异很大吗?是什么导致你选择其中一个(或几个)?
编辑
我在这里简要回顾了所谓的免费CMS:免费的Microsoft兼容内容管理系统
在开发一个50k页的网站时,我放弃了Orchard的原因:
Orchard CMS导入工具太慢了.它一次只能接受小批量生产.最初,导入1000条记录需要8分钟.因此,根据该原则,我预计导入所有记录可能需要7个小时.不幸的是,随着更多记录被插入到数据库中,我开始收到性能问题.我甚至开始减少批量大小,这只是暂时在早期阶段.(见 对果园说不)
umbraco sitecore episerver content-management-system orchardcms
我正在寻找可以提供和编辑位于Git存储库中的内容的Ruby CMS(或插件).我厌倦了在数据库中使用我的内容.用户,设置,评论,罚款.但没有更多的内容.
每个页面的实时编辑都需要自动进行,立即提交,以防止需要进行服务器端合并.此外,每当推送新的更改时,都需要立即更新文件系统.
Refinery CMS文档似乎做了类似的事情,尽管可能有一个远程存储库.
我读过GitModel和git-blog,但我仍然在寻找能够满足我需求的东西.[编辑:当与大多数CMS一起使用时,GitModel很难手动编辑,而git-blog使用静态文件生成.]
编辑:我对内容数据库的偏见仅适用于需要高度自定义的网站,并且不能按原样使用任何CMS.代码与其内容一样发展的网站.这是在DB中拥有内容是一个彻头彻尾的噩梦.当您需要同时分叉内容和代码时,它们会在以后将它们合并到生产中.数据库不分支和合并.
我有这样一个网站.
支持仅DB内容的性能参数是无效的.我在5年前编写了一个CMS,用于同步文件系统中的数据库,其中文件系统始终是主副本.它可以轻松扩展到100,000页,保持10ms响应时间和2s重新索引时间.所有内容,元数据,标签,日期等的完全可搜索的索引.而且,我在地球上最慢,最痛苦的框架中编写了它,ASP.NET.它实际上几乎使ASP.NET变得可以忍受,并且它为各个公司提供了非常好的服务,因为它们具有与上述相同类型的站点.
小型站点可以简单地使用内存缓存,完全跳过db内容
仅限db的内容的有效参数是编辑的可伸缩性.编辑者必须使用相同的服务器,尽管可以向外复制更改.但是,对于快速变化,高度定制的站点,他们像内容一样经常更改代码,不太可能对所述代码和内容进行分布式/社区编辑.社区/分布式编辑可以使用不同的系统.
到目前为止,我最接近的是使用Cloud9编辑内容的git存储库(Nesta CMS),然后通过命令行推送更改.它很慢,但至少它是基于网络的,以防我的开发机器不方便,我发现我在一篇文章中拼错了我的名字.仍在寻找更好的选择.
我有一个客户要求我建立一个网站,用一种非常用户友好的方式来更新内容.他们表达了对wordpress的熟悉,并表示有兴趣能够使用wordpress前端更新其内容.
我原本打算建立一个简单的管理页面,在那里他们可以创建帖子,或添加其他类型的内容..但似乎wordpress已经有大部分功能.
主要问题是我是一名RoR开发人员.我喜欢在我做的每件事情上使用haml,并且100%完全控制网站的工作方式.
所以我希望那里有人会想到我仍然可以使用rails和haml构建网站,但仍允许我的客户端使用wordpress进行更新.我想也许我可以访问wordpress api,只是拉出内容并按照我想要的方式显示它?或者我应该去另一个CMS ..像Refinery?
老实说,我真的不想触摸PHP,最好使用haml而不是html.O_O
php wordpress ruby-on-rails content-management-system ruby-on-rails-3
我在帖子中看到以下答案Magento静态CMS块存储在哪里?关于在Magento中以编程方式使用PHP生成cms/blocks.
我将代码更改为以下内容
$newBlock = Mage::getModel('cms/page')
->setTitle('Test CMS Page Title')
->setContent('Hello I\'m a new cms page.')
->setIdentifier('this-is-the-page-url')
->setIsActive(true)
->save();
Run Code Online (Sandbox Code Playgroud)
......它有效.我看到后端的CMS页面区域中显示了一个新页面.
我需要添加的是能够设置CMS/Page中其他字段的内容.即:
领域.这些字段目前是空白的.到目前为止,我还没有把这一部分搞清楚.
谢谢,
我目前正在编写CMS并记住有人(可能已经在这里)批评现有的CMS没有足够强大的用户权限系统.我有一个计划出来的方法,但我觉得它已陷入通常的陷阱,有点太细粒度,这使得理解和实施它对最终用户来说是一种恐怖.
我认为拥有一系列具有权限的默认用户角色就是答案,所以我想我的问题是:
您希望在CMS中看到哪些默认角色以及与这些角色相关联的权限类型?
提前致谢!
php permissions roles access-levels content-management-system
这是一个常见的情况,必须有一个明智的解决方案,但尽管阅读和丰富的Git体操,我的大脑疼痛,我无法做这项工作......
我正在使用Wordpress,尽管这适合大多数网站开发方案.我想用git repo管理站点安装,并且还可以在单独的repos中管理各种WP插件,jQuery插件和其他代码位,这些插件可以很容易地从外部源拉出/推送.在你看细节之前看起来很简单......
"子文件夹"标准 不应将每个插件的文件夹绑定到其源库的根文件夹.许多repos有多个嵌套文件夹,例如"my-repo-name/...","dev /","test /","src /",其中后者的内容是所需的东西.这对于保持引用URL清洁并最大限度地减少公共垃圾很重要.
"无Proxys"标准 理想的解决方案不需要额外的中间分支或回购.将更改推送到插件的外部源应该很简单,不需要多次中间合并/推送.
"真实文件"标准 理想情况下,整个网站的外部存储库实际上应该包含插件子项目的文件(即没有"子模块").虽然我可以被说服远离这一个...
"发布"标准 它必须与rsync和/或git push'ing到现场服务器很好地兼容
Git子模块简单到足以进行更改和推/拉但子模块在"子文件夹"和"实际文件"标准上失败
Git read-tree/subtree merge解决了"Real Files"问题,read-tree实际上让你引用了一个分支的子文件夹但是当我这样做并试图合并master上的更改上游时,Git没记住它来自一个子文件夹并且合并了master的整个结构进入ext libs跟踪分支...所以FAIL就这个标准.
Apenwarrs子树扩展(这里) 非常适合"真实文件"标准,并且相当简单的推/拉,直到您想要强制执行"子文件夹"规则.最好它似乎需要中间分支,您可以从远程跟踪分支中分离出所需的文件夹,然后将其作为子树添加到主分支.我没有太多运气将主人的变化合并/推送回源回购.我仍然认为这里可能存在......
与外部repo的符号链接 很好的解决方案,直到GIT在符号链接后停止.现在它失败了"真实文件"和"发布"标准
嵌套repos
在某处我看到了一个SO答案,如果你明确git add一个包含另一个repo并包含尾部斜杠的文件夹,git将不会对其进行子模块,而是跟踪单个文件.这似乎很有希望,但它在"子文件夹"标准上失败了.
我已经看到了"稀疏结账"的提法 - 或许是涉及分支修剪的事情.我希望避免一个涉及shell脚本的解决方案,或者是如此复杂以至于每次都要重新学习它(不经常)我会对插件进行更改.它需要比为每个插件维护一个单独的repo并从主CMS安装中来回复制更容易.
当然有人有一个简单的功能方式来使这个常见的开发场景工作?在此先感谢您的帮助...
我正在查看/administrator/components/com_contact/views/contacts/view.html.php的第34行,其中说的$this->items = $this->get('Items');是我不明白的是实际上是如何调用protected function getListQuery()/ administrator/components/com_contact /的第123行车型/ contacts.php
还有其他一些我不明白的工作方式......就像
$this->pagination = $this->get('Pagination');
$this->state = $this->get('State');
Run Code Online (Sandbox Code Playgroud)
这些叫什么?我看了一下"get()"的文档,但它没有说明这些实际调用的内容,因为我没有看到任何名为getPagination,getState或getItems的方法......看来get('Items')是某种方式神奇地调用getListQuery().