Solved

Need (php-based) CMS for managing page SECTIONS, not whole pages. CKEditor=bonus

Posted on 2014-01-19
18
391 Views
Last Modified: 2014-01-23
NOT wordpress, joomla, drupal...

I need (free) content management for a website. I need to allow content creators to modify pages in sections, not whole pages.

Imagine a web page that has 3 columns, and each column's content is handled by a different person. None of them know HTML or CSS, and must not be able to get to that background code (because they will break the page, every time.) They must only get access to modify their one section of content.

Does any free CMS software spring to mind?
I can't find one like that - they are all set up to edit the content of the whole page.

Bonus points: if the CMS already uses CKEditor as a richtext editor. If not, then I will need to change the code of the CMS so that it CAN use CKEditor.

I can write this from scratch (using php, mySQL, and CKEditor). but I don't want to. There must be something like this already written, to save me the time.

Thanks!

Dennis
0
Comment
Question by:dtleahy
  • 7
  • 4
  • 3
  • +2
18 Comments
 
LVL 82

Accepted Solution

by:
Dave Baldwin earned 500 total points
ID: 39792815
I think that you will probably have to write that yourself.  The CMS programs you mentioned provide all the formatting though it is thru themes.  I can't see anyone spending the time trying to write and support some kind of 'generic' block-oriented CMS that does what you want where every page could be different.

I started out doing something like that but I never really came up with an application well enough defined to make it worth finishing.  Every place I have done something like that has always been completely custom.
0
 

Author Comment

by:dtleahy
ID: 39792856
I wrote one once for a small website, using ASP/VBScript, and figured that by now, someone would have done it in php. If you're right, Dave, then I probably need to get more flexible in my thinking: there are millions of people using a CMS, so I probably just need to let the site owners worry about who edits what section of what page.

Switching criteria, I'd at least want a CMS that uses (or can use) CKEditor.
0
 
LVL 70

Expert Comment

by:Jason C. Levine
ID: 39793005
Dave's right...the requirements above are way too persnickety for someone to have made a mass market CMS that fits. If you really want to do it as described, I think you are going to end up writing it.

As far as the CKeditor goes, any of the big three (WordPress,  Joomla, Drupal) have plugins/modules that will replace the default editor with the CKeditor and there's probably a way to write a theme that would allow you to mix and match source content on a per user basis.
0
 
LVL 108

Expert Comment

by:Ray Paseur
ID: 39793030
If you want to reconsider the requirement for CKEditor (formerly FCKEditor, but that name didn't lend itself well to serious web development projects) you might be able to use TinyMCE, which is the editor for WordPress.  It's easy to integrate TinyMCE into a web page.  Millions of people do it with WordPress.  I think you could experiment with WP a little bit and find a good answer.  I had never used WP until yesterday, but I'm finding it well-documented and easy to customize and add functionality.
0
 

Author Closing Comment

by:dtleahy
ID: 39793170
Not the answer I wanted, but it was the answer I needed to hear - so I'd stop looking for something that doesn't exist.
0
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 39793270
Thanks for the points, glad to help.
0
 
LVL 34

Expert Comment

by:gr8gonzo
ID: 39794186
Out of curiosity (and for the sake of anyone else that comes across this question), why "not Joomla?" While I'm not a HUGE fan of Joomla, it seems ideal for what you're asking for.

1. It has a security and permissions structures so that you can restrict people to maintaining certain content (which also means not having to build an admin panel on your own).

2. It has module/box-based structures (e.g. "loadposition") so you can load a specific module right into any page (e.g. one section could be displayed in multiple locations or on different pages).

3. The module system allows for pretty decent customizations (e.g. you can use PHP to integrated with a 3rd party web service, pull info down, etc...).

4. It's template-based, so you could have one person that maintains the look and feel and another person maintain the content of box A on the screen, and another person maintain column B, etc...

5. You have some "blank" templates that are already responsive, making the site and your content immediately suitable for mobile browsers.

6. It has plugins galore (CKEditor and tons of others, including ones that are centered around authoring specific sections of content) and an active community.

7. It's well-established with its own team dedicated to maintaining core features like security and such (read: less work for you and less chance of ending up with a site with security holes).

8. It has an update mechanism that's practically a one-click process.

9. It has a pretty extensive authoring system that addresses a lot of common business requirements that developers often overlook (e.g. publishing states, previews, etc).

10. It's pretty much extensible in every way (there's an API and a hook for just about every event that you might want to customize in the future).

Again, while it's not always the best thing for many of my clients, sometimes it -is- the right tool for the job. And it's almost always better than trying to roll your own CMS. A CMS system is like a huge ball of twine - by the time you finish what you're working on, you've unraveled more requirements, and then more, and more, and more. There are so many potential headaches with trying to build it yourself (believe me, I built a commercial CMS marketing system with my own team of 6 dedicated developers, and it took over a year just to get the first version ready for "show-and-tell", so I know what I'm talking about here).
0
 
LVL 108

Expert Comment

by:Ray Paseur
ID: 39794235
Joomla: Certainly worth a look.
0
 

Author Comment

by:dtleahy
ID: 39794360
Thanks so much, Dave, Jason, and Ray for taking the time to reply.

I'm not interested in wordpress, joomla, or drupal for this particular website.  

CKEditor has some functionality that I have used before that makes it a good fit, plus I know and like the software. I haven't used TinyMCE, but it looks good too - but I'd prefer to use CKEditor. It's actually easy to integrate CKEditor into a page, too.

Dennis
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 34

Expert Comment

by:gr8gonzo
ID: 39794612
Okay then, I'll take that snub as a sign to move on...
0
 

Author Comment

by:dtleahy
ID: 39795076
gr8gonzo: I had typed my message late yesterday afternoon, walked away from my computer, and when I came back, realized I had not hit "submit" yet. I did not refresh the page but just submitted what I had written. Then, I went to bed (I had been up since about 4:30 am.) No intended snub - I did not see your post. Thank you for taking the time to reply!

OK, I should admit, I tried to use Wordpress for a website, and though it is a really cool tool for some types of websites, I really hated some of it (and it may very well have been my lack of knowledge about how to work around the "limitations.")  If someone does not know how to build websites, then the "canned" applications with customizability are probably the perfect tools. If you are used to a certain workflow, and directly coding pages, it is more than a bit disconcerting to be using their interface, "for my own protection." :~)

When I performed a Wordpress upgrade (in that website I was starting to build), and it broke the site, I realized that there was too much code written "by others" that I was dependent upon, and decided to abandon Wordpress for that site. At about that same time, I had briefly looked at Joomla and Drupal. I know they have fans, some who would decapitate me for saying anything negative - and I don't remember why they didn't "blow my skirt up", but they didn't. Of the 3 applications, Wordpress "felt" like the best one to try, and when I walked away from that negative experience, I (probably unfairly) lumped all 3 applications into one mental classification.

I'm not someone that feels like they have to reinvent the wheel, and thus was comfortable at least looking for a CMS solution that I could plug into a site in progress. I was not (at least in this case) interested in starting over, from scratch, on the website - just to add CMS functionality. I had hoped MODx was the answer, (and maybe it is a good solution, if I could figure out how to isolate the underlying code away from site admin's editing capability of content.) However, at gr8gonzo's recommendation, Joomla is now open in a few other tabs in my browser, and I'm kicking the tires.

Again, apologies for appearing to snub you, gr8gonzo. Completely unintended.

Dennis
0
 
LVL 34

Expert Comment

by:gr8gonzo
ID: 39795316
Hi Dennis,

No worries. It's hard to tell sometimes what's going on at the other end of the line. :)

As I mentioned, I don't think Joomla is the greatest thing ever (sorry Joomla fans). My biggest beef with it is that there are still a couple of details that don't always make sense (e.g. you can set "article options" within a menu item, and they override the actual article's chosen options). So there's still a bit of a learning curve with it, but I figured the learning curve would take less time than trying to build one from scratch.

I agree about WP, although in my opinion, it's a little too simple to be considered a CMS "platform". It's good at what it does (provided you don't go overboard with 3rd party plugins), but you had talked about being able to edit sections, and that wasn't really its strong point.

I can't really speak to Drupal, since I've just played with it a few times, but am far from an expert on it.

Regarding the editors, bear in mind that all of them are derived from the built-in rich text editors of each browser's engine. They're just basically extensions of that editor, so pretty much all of them will have similar limitations. That said, I seem to recall that we started with CKEditor and eventually moved to TinyMCE after testing out a few options, but I cannot remember the reasons why (I think it was related to how each editor handled plugins). We were pushing the limits of each one, though. Personally, I've used both CKEditor and TinyMCE a -lot- and think both are good options.
0
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 39795333
Every Joomla install I've worked on has been terribly slow because of the themes and plugins that people seem to insist on installing.  Wordpress is ok but it can suffer from the same things if you're not careful.  I don't think I've tried Drupal.
0
 

Author Comment

by:dtleahy
ID: 39796042
Thanks again gr8gonzo, and Dave

Since this website will be hosted on a cheapo hosting company (the current site is on bluehost or justhost - unless I move it), in a shared (read: "overloaded") server, the idea of "terribly slow" scares me - a lot. Slow + slow = excruciatingly slow.

I'll give more detail here as to why I want(ed) to use CKEditor:

Imagine a site for a community gardening program. Half a dozen people creating content. Sections about upcoming events, pages about food preservation techniques, articles, classes... garden plot space rentals, volunteers and current projects, seed sales, plant sales, a forum, archived articles, possibly gallery pages for some events... it is a hodge-podge.

Individual content authors all would like access to the main page, where they might provide a lead-in to an article or event, they may want to edit a vertical link list to articles, based on whim - not criteria I can write as a SQL statement hahahahha.

On individual pages, individual authors could be responsible, so that is less of a problem, but I still would not want them getting access to code. I'm not worried (they're not worried) about SEO, so my thoughts are that the entire block of content, which would include HTML tags for DIVS, BR, P, etc. and CSS tags: Class, Id, etc. would be stored in a mySQL DB table, and loaded on a page (using php.)

(Maybe TinyMCE can do this too) but I know how to set up CKEditor to have a dropdown of CSS classes as "styles", customized for the site. I can also create templates, which are not entire pages but rather a table-based or DIV-based section of a page. For example, a typical piece of content might be a header, an image, and paragraphs of text. These folks are not going to get floats correct. I can set up 5 templates for the image to appear top-left, top-right, center, bottom-left, and bottom right. I could set up another template that they would use to post recipes, with an image, an ingredients list, overall info about the recipe, and the recipe in steps. Those may seem like trivial examples, but if I don't do that, I'll be called-on frequently to fix code (and I want them to be empowered to do it.)

Sorry that's long-winded, but gives a better idea of what I want and why.

Thanks again for everyone's input!

Dennis
0
 
LVL 70

Expert Comment

by:Jason C. Levine
ID: 39796059
(Maybe TinyMCE can do this too)

It can.

I can set up 5 templates for the image to appear top-left, top-right, center, bottom-left, and bottom right.

Any of the big three (WordPress, Joomla, Drupal) can be configured to support custom templates and let the use decide which one to publish on.  I'm a WordPress honk so I know it best:

http://codex.wordpress.org/Pages#Page_Templates

But this is a pretty basic CMS feature and all of them have something similar.

Half a dozen people creating content. Sections about upcoming events, pages about food preservation techniques, articles, classes... garden plot space rentals, volunteers and current projects, seed sales, plant sales, a forum, archived articles, possibly gallery pages for some events... it is a hodge-podge.

WordPress and Joomla can easily support taxonomies like that.  Drupal can do it too albeit slightly less easily.

Individual content authors all would like access to the main page, where they might provide a lead-in to an article or event, they may want to edit a vertical link list to articles, based on whim

Category-based navigation with custom excerpt visible and a "Read more" link to the full content would take care of most of that.  You would even be able to go one better with WordPress and deploy it multisite mode and give each author their own subsite under a main installation with choice of theme, plugins, etc.
0
 
LVL 34

Expert Comment

by:gr8gonzo
ID: 39796975
One project years ago called for all the authoring features of Joomla but that was it. I ended up using Joomla only as a backend system for producing and maintaining content. I used MySQL calls to pull the final published results into a completely-different, non-Joomla site. It worked out pretty well, so that might be something worth a try, too.
0
 

Author Comment

by:dtleahy
ID: 39797428
Thanks Jason and gr8gonzo!

-Dennis
0
 

Author Comment

by:dtleahy
ID: 39804239
Well, I think I have destroyed this thread/question by changing course multiple times. I think I can now articulate what I'm looking for, and for this site, it isn't Joomla.

I'll start a new question: Need very basic CMS with either TinyMCE or CKEditor.

Thanks again to all of you. I really appreciate the help.

Dennis
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
This article discusses how to create an extensible mechanism for linked drop downs.
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to dynamically set the form action using jQuery.

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now