Log in

View Full Version : Looking for easily cusomizable CMS?



NickNameDrive
07-31-2010, 07:35 PM
Hi everyone!

Looking for light and easily customizable Open Source CMS for the website, tried many, no luck so far. Just wondering maybe someone can advice a good one that would meet my needs.

Lots to read, but I tried to make myself clear.

Here's what I'm looking for:

A CMS that uses MySQL (for security reasons), PHP based for the site that is HTML based (will tell server to look for php in html).

A CMS that defined areas of editing in particular pages without interfearing with the architecture of site. No need for CSS editing, plaggins (such as search, comments and so on), just simple html urls with defined editing areas.

CMS where I can customize the editing area as a whole with html tags and then make it as an element (i.e. article).

For example, different elements such as news, articles and so on, have predifined areas inside html(php) file. When user views it, php server retreaves relevant text from MySQL. When I log in into Admin panel, I have a number of pages and elements that are available for editing with simple WYSIWYG, you can add/delete those pages and elelments. Each element is wrapped in my HTML and behaves accordingly.


In my search, one who came close was Onapage CMS (google it if interested), but it has many buggs and security issues.

Looked at many, most are not easily customizable and come with already predefined elements with predefined behaviours, such as posts in Wordpress, articles in Joomla.


Is there a CMS that recongnizes such thing as "editable pages", where they can be grouped (in admin pannel for easier use not like categories in WP). And such thing as "element" where I can write html for each element, one element can be inside another (for instance a picture element inside article element). Picture element because, unlike any WYSIWYG insert picture, this element is wrapped in html for certain behaviour, such as "zoom on picture".
Elements can be grouped and named and attached in admin panel to certain page or group of pages.

Building templates for WP or Joomla seems to difficult to me and many features are still predefined there anyway, like admin panel. And it is html urls what I need.


Please advice me on this, or drope the link for a candidate that you think ticks the boxes! Thanks to everyone!

I hope this is clear enough.


P.S. Would that be difficult to build it myself? What level of PHP, MySQL and JS it would require, taking into account that there are number of Open Source progs like TinyMCE to simple thing out?

traq
07-31-2010, 07:54 PM
Building a CMS yourself is complicated. Simply because you don't have a good idea of what's involved, I can guess that it would probably be too difficult.

I like and use concrete5 (http://www.concrete5.org). It's simple to use from both the front end of the website and from "behind the scenes" (e.g., editing the code).

Making customized themes (which is what you need to do to use your own html template pages) is more complicated, though it's far simpler/more accessible than trying it in something like joomla.

As far as recognizing php inside the html page, you can do this to a certain extent, but it's not the best way: concrete (and most CMS's) use an MVC programming approach: content, layout, and processing are all separated. For example, if you have a page with a contact form, the php code for processing the form would not be on the same page as the form itself (and probably wouldn't work correctly if it was); it would need to be integrated with the CMS separately in order to work.

Searching "onapage," I only find an unfinished blog. Is that what you're referring to?

NickNameDrive
07-31-2010, 08:03 PM
about "onepage", yeah i guess, that's what it looked like :)

I may be prepaired to drope html urls, as long as CMS is the one i need.

Will check concrete5 later on, thanks.

traq
08-01-2010, 12:54 AM
by "html urls" do you mean www.example.com/directory/file.html as opposed to "pretty urls" like www.example.com/category/page ?

mburt
08-01-2010, 02:39 AM
Hm it's still possible to have "htm" or "html" url endings if you really wanted to (using Apache's mod_rewrite module). But overall it doesn't make a huge difference. It might be more ideal to drop file extensions all together using mod_rewrite.

http://www.yourhtmlsource.com/sitemanagement/urlrewriting.html

NickNameDrive
08-02-2010, 10:20 PM
by "html urls" do you mean www.example.com/directory/file.html as opposed to "pretty urls" like www.example.com/category/page ?

Yes actually pretty urls will do just fine. It's just that current site is in htmls. But going with php and pretty urls is not a problem.

To continue my request...

I have found GetSimple CMS (XML based but seem secure enough), that almost does it for me, however, there's only one editalbe area inside one template page, that limits its ability to include extra elements within that area, as i described in the starter post.

For instance there're two types of news, that are separated on the page by design, which makes it imposible to use GetSimple CMS's WYSIWYG to edit them.

Any other ideas for flexible lite CMSs?

traq
08-03-2010, 01:43 AM
Did you not like Concrete? There are lots of themes that can be used with it - maybe a dozen or two that are free - and creating your own (http://www.concrete5.org/documentation/how-tos/make-a-theme/) is not too difficult.

About the urls: Concrete can use either "pretty" or normal urls. In fact, it first checks if a url points to a real directory or file, and if so, goes to that page instead of trying to redirect it through the CMS.

Here's an article (http://css-tricks.com/the-light-cms-trend/) that reviews some other "lightweight" CMS's.

----

A concern about getsimple cms (and I've never used it, this is just my reaction after looking at a few pages on their site):

XML is absolutely not more secure than MySQL. In fact, xml files are completely accessible unless you take measures to secure them (such as storing them below the site root, or in a directory protected via .htaccess) - web browsers display xml pages just as easily as html pages. If getsimple does secure its xml (and I couldn't tell - the home page says "Secure!" but doesn't offer any explanations), then it may be fine; but it's another layer of complexity and presents another opportunity for security "cracks." Even more so if you have to configure any of that manually.

XML is absolutely not faster than MySQL. No way. The difference might not be noticeable (to humans) for basic, low-load operations - like storing and accessing static page content on a small site - but it's not faster. Not even equal. Especially if you need to do more involved searches or modifications to the XML tree, such as would be needed if you were running a larger site, a forum, or had content that varied depending on the logged-in user, etc.

The only advantage XML has (in this case - XML is very useful for other applications) over MySQL is that you don't need to pay a web host for an account that includes MySQL.

Again, I've never used this particular CMS. I didn't look at the code. However, on the surface, their claims don't seem to make sense.

Most CMS's use a database; that's simply because it's the very best tool for the job.

Beverleyh
08-03-2010, 12:05 PM
Concrete5 looks really nice traq - I watched the video and there are so many useful features!
Do you know if those come as standard (such as the form submissions/survey) or as additional plugins?

traq
08-03-2010, 02:29 PM
Lots of it is standard (forms, surveys, a photo gallery, more (including straight html content blocks w/o wysiwyg)) and quite a few plugins and themes are free. Some (notably their ecommerce solution) are paid. You can set up a demo on their site and try it out, and look through the "marketplace" to see what themes/plugins are available.

Beverleyh
08-03-2010, 02:34 PM
Very nice - I'll look into it :)

NickNameDrive
08-06-2010, 09:43 PM
Yes concrete5 looks alright, though I have an issue with it. I tested it with xampp testing server for windows and it does run slow, not concrete, the site itself without being logged in. That's strange as the site is empty, anyone experienced it and does anyone here ran anything on concrete5, any opinions?

concrete is close but not exactly what i was looking for. It has blocks, but designing your own blocks seems bit complicated. I was hoping to find CMS where designing your elements can be easy, such as just do the wrapper and point editable area:


<div id="behaviour"><bla>

<?php editing area>

</bla></div>


Is there any CMS that allows that kind of thing? Could be very practical!

Any more suggestions?

traq
08-07-2010, 04:58 AM
are you asking for an area of the page that can be edited via php, or an area on the page where you can add your own php code?

If it's the former, that's exactly what concrete (and most other CMS's) does. You do have to write your own template to achieve that, though. I prefer concrete because there's no proprietary coding syntax to learn as there is in many other systems.

If it's the latter, there is a plugin (http://www.concrete5.org/marketplace/addons/simple-php-block/) you can use.

(about the speed issue, I've never noticed. might it be an issue with your host?)

NickNameDrive
08-08-2010, 09:25 PM
Thanks for reply!

I'm looking for something like concrete but even simplier. Something where i could create blocks/elements/components easy with your own code and point the editable area for WYSIWYG just by inserting php call iside my wrapper.

for instance: i want to publish a news and insert a picture with lighbox effect. With concrete that is not possible because there's no "rel" option when you insert pictures. so then you have to give them "id" and write JS that will grab them and set "rel" attribute to them.

Only if i could easily insert one block "news" with wrapper that i've maid and editable area the i pointed, then inside it insert another block "lighbox picture" with its wrapper that containes <a rel="lighbox"> and editable area inside it, php call. So i just create block "news", type in text, insde it create block "lighbox picture" and insert picture, save one, save another.

That's the flexibility and finctionality i'm looking for! Something that will allow writing your blocks/compenents/elements easily and call WYSIWYG in control panel with a simple php call.

Is there anything like that?

P.S. also need to work with different page templates!

traq
08-08-2010, 09:54 PM
I'm not sure I've seen anything exactly like that, though I've got a nagging feeling in the back of my head that it wouldn't work out as well as one might think.

And I'm sorry to keep harping on concrete (I'm not actually as die-hard as I'm beginning to sound, here); but your "for instance" is entirely possible in concrete. The WYSIWYG editor (in any "content" block) has both [design] views and [html] views, where you can edit the html code directly. There are also "html content" blocks where you can bypass the WYSIWYG editor entirely.

NickNameDrive
08-10-2010, 04:13 PM
concrete so far is the best for me. i found Express Engine also delivers flexibility, though it is a comercial one and their licences cost small fortune.

traq
08-10-2010, 07:24 PM
I've heard great things about Expression Engine. They have a free version, though it's licensed only for trial / personal use.

NickNameDrive
08-11-2010, 06:41 PM
to traq,

concrete is a bit unstable with new add-ons, just now added zoom image add-on that crashed the whole site including access to login page :mad:.

though i wanted to ask you about something else. I've stripped default theme quite a bit, though it still seem to be working fine. Have you worked with themes in there? Are you familiar with their engine?

header:


<?php defined('C5_EXECUTE') or die(_("Access Denied.")); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd">
<html lang="en">
<head>

<link rel="stylesheet" media="screen" type="text/css" href="<?php echo $this->getStyleSheet('main.css')?>" />


<?php Loader::element('header_required'); ?>

</head>

<body>

main:


<?php
defined('C5_EXECUTE') or die(_("Access Denied."));
?>

<?php $this->inc('elements/header.php'); ?>


<?php
$a = new Area('Area');
$a->display($c);
?>

<?php $this->inc('elements/footer.php'); ?>


footer:


<?php defined('C5_EXECUTE') or die(_("Access Denied.")); ?>


&copy; <?php echo date('Y')?>

<?php Loader::element('footer_required'); ?>

</body>
</html>


to add editable area i place a call anywhere i please, though the new Area name in brakkets have to vary, aka area1, area2 etc.


<?php
$a = new Area('Area');
$a->display($c);
?>

I took out isedit mode and some other php code, but seems to work anyway!

If you know, tell me how stable that be, i'm ready to proceed with CSS and layout for the site?

traq
08-11-2010, 07:52 PM
concrete is a bit unstable with new add-ons, just now added zoom image add-on that crashed the whole site including access to login page :mad:.
The only issue I've ever had with stability (well, usability, anyway) is that when you're using jQuery, you *must* insert the link to the jQuery library via their loader function (which makes sure it's loaded properly, and only once - otherwise, when you log into the dashboard, it's loaded again and causes conflicts with itself).

I've never used the zoom image plug-in though, so I don't know.




<?php
$a = new Area('Area');
$a->display($c);
?>
that's the stuff.

concrete uses an MVC model, however, so if you want to add any php that works completely "behind the scenes" (e.g., header("Location: blahblah...")), you'll need to build a custom page controller instead of putting it in your page template. By the time the template is parsed, headers have already been sent.