For creating common user modifiable site I've been forcing Wordpress to do the work of a CMS. It's worked and the back-end is purdy but it's just too hacky for my tastes. So I'd like a simple CMS that is easy to customize and add dynamic content to.
Right now it looks like modx is my best bet. I've tried Joomla a while ago but it was a real pain to customize and the back-end was not intuitive.
Basic requirements:
Free
Runs under PHP5
Easy to customize
Easy for content authors
Easy to add dynamic content
If it doesn't have these, then I doubt it's more fit than modx.
I'm a huge fan of modx, I don't have much to add other than to say if you are happy with modx and it does what you need then stick with it.
I just haven't come across anything as easy to use for a developer. The template system, ease of creating your own snippets if you can't find what you need already, everything just seems to fit from a developers point of view.
I have also had no trouble training clients to use it.
The main problem with modx for me is that I haven't really been impressed with any shopping carts/store solutions for modx yet, but I guess it depends on what kind of site you want to make.
i can recommend frog cms http://www.madebyfrog.com/
it's a copy of radiant cms (which is running on ruby/rails, see http://www.radiantcms.org/)
Have a look at this http://php.opensourcecms.com/scripts/show.php?catid=9&cat=Lite
The list contains very lite php opensource CMS, most of them dont even use a database.
You can go through the demo of these and pick the one you like.
Related
I have a PHP based website, with database connections, form processing, etc, that I need to use a CMS on. I'm trying to use Joomla but after using it for 2 days and reading tutorials on it I'm getting the impression that it's designed to handle static content and that all form processing is to be handled by 3rd party extensions.
Am I getting the wrong impression? Is there a standard way to import a PHP website into a Joomla CMS?
I inherited a Joomla 1.5 site a few months ago, so I was in a similar situation to you - where to begin, with lots of questions about Joomla, its ethos, etc. What I've learnt in the meantime is:
Joomla is very heavily dependent on 3rd-party extensions. Some of these are good, some not so good - evaluation and caution is advised.
Joomla encourages the use of extensions, even for relatively static content. Whether these are full blown 'components', or 'modules', depends on quite how powerful/flexible they need to be.
The MVC architecture that underlies everything has its positives and negatives. On the plus side, if everything is done consistently, there is a good separation of concerns and - in particular - the template system offers good configurability. On the downside, very simple components/modules have an awful lot of complexity - e.g. just in terms of number of files.
Joomla is open-source ... sort of. If your familar with the open-source community, you might be a bit disappointed with Joomla, especially when it comes to 3rd-party extensions. Many of them do not embrace the open source ethos, and try to sell code and/or support so, to reiterate, choose your extensions carefully.
Writing your own extension is fairly simple, especially if you're familiar with PHP. Although the documentation isn't great, there are some gems - in particular, take a look at:
http://docs.joomla.org/Developing_a_Model-View-Controller_Component_-_Part_1
http://docs.joomla.org/Accessing_the_database_using_JDatabase
When it comes to forms, I'm still undecided. The site I've inherited uses a third-party extension to manage them (mod_breezingforms), but it has its issues. If you have the luxury of trying out several alternatives, take it.
Run your development site in debug mode. Take a look at database queries. In my own experience, Joomla is very, very demanding on the database. For example, I have some pages that make hundreds of calls to the database with every request. Watch out for this.
At some point, you'll see itemid in the URL and wonder what on earth it is. It refers to a menu item. Menus in Joomla are a bit more general than you might think - they don't necessarily represent a 'menu' and they're quite important. For example, the built-in way to include content on a series of pages is for them to belong to the same menu item, so you might need to create 'fake' menus to house content.
Try MODx Revolution. You can insert your existing php form processors straight into Snippets with next to no modification required, or using the existing FormIt extra. Ajax is easy as pie.
Some docs to get your started:
Overview
Making Sites with MODx
Snippets
edit: apologies if it looks like I've tried to hijack this thread, somehow missed the fact the question is referring specifically to Joomla. MODx is definitely worth a look though ;)
There aren't many CMS's that can handle forms correctly (maybe only the very very generic ones, such as contact me forms, or shopping carts), but for any other purpose, you probably want to use your own PHP script to handle and process the form.
Nothing is stopping you from having a CMS on one part of the page, and your own PHP script on another.
I've once had a website with 2 different CMS's (Wordpress and Joomla), as well as some custom made pages. Slightly trickier to handle, but it's possible.
This question is very broad to answer. There are few step-by-step tutorial available on the internet for this.
From Joomla
Site Ground tutorial
If you follow this head start. You are sure to know a lot of joomla along way and convert your website to the joomla.
BUT, it is easier to build on Joomla rather than convert to it
The first trick to using Joomla effectively is to not over think things and use code that is proven so you don't have to work so hard.
Your existing content can likely be imported to Joomla just be exporting it to a CSV then importing back in to the Joomla article table.
Form handling is incredibly easy. There are dozens of form handling extensions, some of which do more than you will likely ever need. I use ChronoForms most of the time because it can be made to do basically anything once you learn how it works. I also like RSForms if you need non-tech people to be able to create forms on their own.
"Load dynamic data" in to a Joomla article is not very specific, but I'll take a stab at it. If you mean getting user submissions, then there are front end content submission options built in. If you mean loading data from another source, then you can generally use either a module or a plugin to get that data loaded either on the page or actually within the article itself.
Spend a little time getting to know how it works. Learn the difference between a component, plugin, and module and that will help you get a better grasp of what you can do. Joomla is an extensible framework, there's nothing you can't make it do and many things that are already built for you.
I would use JUMI, a Joomla component for embending your own PHP scripts. No scripts modifications are required!
Hey I'm slightly newb when it comes to building comment boxes and avatar/profile pic systems linking with acccounts
My question is: Is there a way I can just use parts of Wordpress CMS such as the content system (because it is* separate via comments.php) into my dynamic php/sql driven website?
Are there any examples of this? I've been having a hard time finding any examples/tutorials/github stuff on this
Thanks :)
Wordpress wouldn't really be something you could pick apart like that, most of the components are tied together and I don't think it would be easy to use just the cms part and not others. The admin interface would definitely be hard to change, and since wordpress updates frequently, you would have trouble merging the updates back to your site I would think.
That said, you can find or create a custom theme and disable comments and remove all the comment functionality from your site. If not, can you describe your needs more and/or what you already have done? Maybe another CMS or system would be more suitable for you.
Or look at one of the PHP frameworks such as Zend Framework, symfony, or Codeigniter. These frameworks can ease development but have some learning curve.
I'm taking on a relatively small freelance project and my client would like to update several portions of their site; photo gallery, calendar list, about page, and some event links.
My gut tells me to use something like WordPress and use "Pages" for these sections, but I'm worried about my client maintaining the formatting. Especially something like calendar dates and links.
They won't be doing any blogging - this is just so they can update those sections when needed (obviously).
But then I thought, what if I just roll my own CRUD for these portions, but I'm not sure if that would be necessary for a project like this.
So what would people out there use in a situation like this? How much control does one have over the formatting of content in WordPress? I'd like not to have to teach my client on when to call certain CSS classes.
Any help is more than appreciated.
EDIT:
Any idea how the top carousel of BungoBox was made in WordPress? Or don't you think it's possible and that is done manually?
I would stick to wordpress or similar CMS system. It will be a pain-in-the-arse, to take care of formatting (WYSIWYG for client), take care of security, make the administation pages nice and functional, and so on.
You will find a LOT of information on wordpress as a cms on the web, for example see here
Have you considered any other cms system?
From the description this is a site that would consist of just a few pages that the client would want to update? if so, I'd stick with wordpress myself. There's a ton of pre-written modules and themes already out there, and there's no sense "re-inventing the wheel". Also I've found in my travels that Wordpress leads the pack in being able to manipulate content to your will of all the CMS's and the available WYSIWIG plugins they have. Remember, if they cant' get their document to look just right, guess whose getting the call, and who will be expected to fix it on your dime if you didn't specify that in your contract (you are offering maintenance as an additional feature right?)
Now if the client is looking for a more robust system, a larger site then I interpreted in your writeup, then I'd look into more of a CMS system such as Drupal or Joomla. Avoid the trap that seems to nail PHP coders that it'd be faster to do it yourself; it'd have to be a lot of custom functioanlity to start looking at building it yourself from the ground up (and even then, there's enough frameworks to help)
What about something like Drupal? Never used it personally, but I think it's built for this sort of thing, whereas WordPress is kind of tailored towards blogs.
Definatly go with wordpress, drupal is just too heavy for the job and will take you much longer to configure.
If you are worried about your client ruining design with a WYSIWYG editor, just don't give them access.. keep them on a need to know basis for their own good.
Working with wordpress will free you from maintaining security issues and many other unpredictable-at-this-point cases of reinventing the wheel.
I have a php site setup with multiple controllers for the different sections of the site.
e.g index.php, gallery.php, faq.php etc.
Currently I have a base template which I call from each controller, which in turn includes the relevant content for the page. I also use tinymce to edit this content file.
So it's really a very simple cms.
Edit: To clarify, I have several new features I would like for my cms. e.g Specific section editing, menu editing and a few others.
But I thought instead of continuing development on this and reinventing the wheel, I'd try to find a cms which can plug in to my multi-controller system, instead of forcing me to develop my app in it's framework. I guess I want it to manage just the content, not any other backend stuff of my site.
Hope this is understandable.
I'm not sure if I'm understanding your question correctly. You have a site with a basic CMS using a template system and multiple controllers. You don't want a framework to port your site to, but you instead want a CMS that will "plug in" to your current site? What exactly do you want plugged in to your site? (i.e. What features/functionality are you looking for?)
Edit:
I still think you should consider an MVC framework like CakePHP if your goal is to build a more robust CMS without re-inventing the wheel. Building on a well-designed framework would also make extending your site's functionality in the future much easier (as well as make it easier to maintain a complex web application).
The only other option I can think of is to simply replace your existing CMS with a more robust one, like Drupal/Joomla/Wordpress, which you could then extend with modules. But that would probably give you less flexibility, not more.
Le me see if I have this right. You want a CMS. But it has to be one that will conform to your arbitrary way of doing things that you can drop in and have work. You want a CMS that isn't frameworkish at all. A CMS that will only do the frontend, and not the backend.
You don't want a CMS at all. A CMS, by its very nature, does backend work. That's the point of a CMS. What you want is Dreamweaver-esque magic template handling.
Or maybe you should adopt a real CMS or framework, and work from there. It's not really reasonable to expect this sort of magic psychic power from a CMS.
i also recommend Drupal. its very well organized and is easily adjusted to almost any style of website. you can use it as a pure cms or add plugins w additional features as needed .. the core package is fairly small, very easy to set up and play with, and very well supported .. worth looking at
If you wrote a very basic CMS for your own use it seems to me that you should have no problem adopting an existing out of the box solution like Drupal, Joomla, etc. These are full featured CMSs that are ready to go and with some graphics work and a little hacking on your end can look like anything you want.
Your other option is using an existing framework like others have suggested such as CakePHP, CodeIgniter, etc. These are all frameworks which basically give you all the tools you need in order to build a more robust custom CMS than what you have now.
It seems to me that you know at least a little bit about what you're doing. I would suggest you check out the different frameworks that are available and run with that.
CodeIgniter
CakePHP
Lately I've been thinking a lot about building a website/blog/community oriented site. However I can't decide if it's a good idea to build it using Wordpress as a base.
I've been reading around the Internet, and I've seen that many users have trouble with Wordpress using lot of CPU and other resource related problems.
So, what do you think? Is it wise to actually build an application based on Wordpress? Or it would probably lead to undesired results?
Any opinions would help.
WordPress is quite flexible once you get the hang of its WordPress Loop, Page Templates and how to create a customised homepage. Using some plugins, such as the Page Redirect To and Custom Taxonomy, you can have a pseudo-CMS. There are also widgets and plugins that let WordPress mimics CMS-like behaviour, such as listing all sub-pages within a pages, customize how categories are shown and etc.
If you can handle the WordPress loop and use Page Templates, WordPress is okay to build on-top of. However, its database schema is quite confusing. Depending on your goals, you may want to use CodeIgniter or something else.
If you to get really farther than a blogging software, maybe you can have a look at more generic CMSes.
I kinda like Drupal (which has a lot of plugins that can help you do almost whatever you want on your site) ; as a reference point, it is used by many quite big sites, so, if correctly configured, can hold a bit of load.
Just a remark : you might need at least a couple of day to learn how to use it well, because it is quite rich, has lots of features, and you will probably want to have a look at many modules, to get the ones you need/like. (But that would be true for any CMS, I guess)
I recommend using WordPress MU with the BuddyPress plugin for building a community site. BuddyPress is actively maintained, and the set of features are comparable to the basics of Facebook (wall, groups, pages, etc.). Not to mention all of the plugins. Also, with a little extra effort, you can have bbPress (WP forum software) in your community app too. I am working on a big project using each of these products right now, and it has been much less of a nightmare than the times I've done something similar in the past, using other community apps or forum software.
Well that's basically what Wordpress is for :P I've never heard of any issues with Wordpress using lot of CPU and other resource related problems. It seems perfect for what you want to do. Are you familiar with PHP?
Any moderately-sized site should have a cache in front of WordPress. WP Super Cache is one of the more popular ones. Basically, WordPress should be generating pages only when needed. In all other cases, the page should be served from cache.
Wordpress is open, so you can use it if you want.
But I think building a plugin and hook to Wordpress's main feature is a better ideal.
And btw, What is the meaning of "application" you are developing.