tags:

views:

215

answers:

5

I've been making the rounds for a CMS that I can use as an API, in a sort of "embedded" mode. I mean by this that I don't want the CMS to do any logic or presentation. I want it to be used as an API, which I can then use within an existing site. I don't want to be tied to the architecture of the CMS.

A good example of this is NC-CMS (http://www.nconsulting.ca/nc-cms/). All it needs is an include at the top, then wherever editable content is desired it's only a function call with a unique label. It's also perfect in the sense that it allows to differentiate between small strings (like titles, labels) and texts (which require a rich-text editor).

It's the only CMS I found that fits this description, but it is a little too light as it does not handle site structure. I need to be able to allow my client to add pages, choosing an existing template for the layout. A minimal back-end is required.

Wordpress also fits some requirements in that it handles only content editing and allows freedom for the themes by letting them call the content where and how they want it. But it is article-based and backwards, in that it embeds sites (as themes) within its structure, rather than being embeddable in sites like NC.

It's funny how checking out all the CMS out there, almost all of them claim that most CMS are not self-sufficient, that they do not handle application logic, while (almost) every single on I found with only one exception do so. Many are mostly article-based blog engines, which does not fit my need.

I would appreciate any CMS that fits the general description.

A: 

I wouldn't be all that hard to make one, honestly. Maybe as a wrapper around the nc-cms system after taking a look (possibly using and abusing ob_start/get_contents/end_clean).

I've been putting one together using PHP5 constructs and the Dwoo templating engine. Dwoo's template inheritance makes this a breeze. Right now it works by abusing the auto_prepend_file php directive to set up the template object and then just uses REQUEST_URI to process the template file (which is the actual file being requested). Then it outputs the processed template and exits. Kinda slick, but may not have that big of an audience.

I'm not exactly sure where you are placing the line between what you want this system to do and not do. Adding pages and choosing templates would seem to me to be in the realm of presentation, imo.

Bryan Ross
NC-CMS is the closest I have found yet. I'd rather have a fully working solution. I have enough code to write and want to remove some burden by leaving the CMS aspect to a reliable 3rd-party application.
StrangeElement
+2  A: 

Creator of nc-cms here.

Adding on to nc-cms may be a realistic option, depending on exactly what you want to do. The entire nc-cms project is under 2,000 lines in total and the codebase is kept rather clean and simple for the very reason of per project/client expandability.

Nathaniel Sabanski
Hi, it's still an option for me. I really like what I've seen so far in NC. But I will try as many as I reasonably before investing in modifying. It will take a lot of time but I will probably learn lots in the process so I think it's worth it.
StrangeElement
A: 

Would Joomla do it?

Nick Brooks
I would honestly rather pull my eyes out with forks than use Joomla.It's personal obviously. Some people love it. I hate almost every single aspect of it.But anyway Joomla is pretty much the exact opposite of what I want. Joomla IS the application and you build stuff into it. I want to build my application any way I want it and simply plug in the CMS functionality where and how I need it.I've taken the route of identifying then trying all the frameworks and CMSes that have a high enough level of maturity and see how I can work with them. Nothing really fits my description as is.
StrangeElement
A: 

You should look into Osmek, its a developers dream. Its a centrally hosted system with no install. Osmek's API gives you access to your entire account, in just about any format, including JSON, XML, HTML, Serialized PHP, and template responses.

George Henderson
A: 

Hi, I'm the founder of Feed.Us - a hosted CMS product.

Our service has a variety of ways to "plug-in" to any site regardless of platform (PHP, asp.net, rails, etc.)

The main way it works with PHP is a very simple script that uses one local directory to access an XML feed of your content from Feed.Us. Once the script and directory are installed, the content is added or edited via our site, www.feed.us. The content can be customized to use your divs, so it looks like just straight xhtml/php pages.

We can also provide just a raw XML and you could do whatever you choose with it.

Rick Stratton