I work at a university as a professor, and have created a custom CMS that can help other profs in how they teach their classes. My school is considering integrating the CMS into their "web services". After an initial conversation with someone from web services, she seemed to think that it would make things a lot easier if my system were integrated with Drupal to make it:
1) Easily customizable
2) So that we wouldn't have to worry about security issues
As someone who has never used an out-of-the-box CMS, checking out Drupal's site, it seems that:
1) is correct since a user can apply new "themes" changing the the way the site looks very easily. Am I understanding this correctly?
2) I can't see the benefit of Drupal. If I'm already checking user input, guarding against SQL injection, password protecting pages (I'm using the most up-to-date version of the Zend Framework), then what do I gain in terms of security by using Drupal?
3) If my CMS were out-of-the-box, I could see this as being true; however, since it's a custom application, how could one extend it without having to change lots of my code?
Thoughts on any of the 3 points above would be appreciated.
I don't know anything about your CMS, so I can't say anything specific, but in general, I'd say that a well known and widely used CMS will almost always be the better choice over a homemade CMS.
So, what you're saying is that even if I've created something from the ground-up, it could still be worth it to integrate with Drupal in the long run? (Note that the web services folks would be very involved in that process; and the CMS helps profs to create educational materials for their classes)
Yup. It would mean that any feature you could want, now or in the future, has probably already been written, either in Drupal's core or as one of the tens of thousands of plugins. It would mean that if you or Web services needs to bring on someone new, then you have the option of hiring someone who already knows the CMS inside and out. And with millions of other sites using Drupal, it would mean that there are lots of people to find and fix any bugs, so code maintenance wouldn't all fall on your shoulders.
If you're super stoked about your own CMS, then you could always release it to the public as open source. Perhaps people will like it and start using it. And years down the road, after it's been refined and accumulated a community, then you can start considering it in place of Drupal.
Exactly what I needed to hear! Have a great weekend...
Originally Posted by Jeff Mott
to play devils advocate what you get when you use an out of the cms like drupal is someone elses logic. I personally find Drupal an absolute nightmare, the way i work is completely different and i can barely get it to work, thats not to say you will find that.
I get annoyed that certain things are extra plugins such as Keywords and description meta tags. Why are they not core! i just don't get it. I prefer to write my own.
As for it being more secure! well there is an arguement that many eyes have checked drupal but it is also true that it is easy for someone to find your site uses drupal from certain tags in the code and exploit any known security hole that comes up in drupal.
With a custom cms how does someone start hacking your site as they don't know what you have called your tables or even where your admin pages are. I know things can be modified but i don't like that user lists are not searchable and are just a long list of users. How can i find someone if the only thing i can do is sort by name and i have thousands of people. i'd have to click through 100's of pages of results manually.
Drupal also puts loads of extra code into the page with wrappers here there and everywhere. The entire point of CSS is to have nice clean code without pointless divs everywhere.
I often think of it in terms of cars. If you want a fast track car for £10k you can go buy a Ford fiesta and modify it a little. It won't be the best on the track but loads of mechanics can work on it and it'll be fairly reliable. If you spent that £10k on a custom built kitcar with sports suspension, spaceframe chassis, stripped down lightweight etc you will get something that is designed for the job it is doing. You might need a mechanic that knows a little more than the average joe but you'll get a faster outcome in the end :)
and call me cynical but a lot of website companies will use Drupal, wordpress etc as it is a massive time saver as they don't have to write their own cms and as you know time is money.
As a rule of thumb, it's always better to use one of the big premade CMS if you're going to be implementing a lot of the same functionality. The reason for this in my opinion is that a CMS is only as good as it's community. The sheer size and activity of the communities for CMSes like Drupal, Wordpress, Joomla and Umbraco means that they have so much to offer in terms of plugins, security and customization options.
And while it's true that people do write malicious bots / scripts that attack those kind of CMS installations - you will know that literally hundreds of thousands of users will be affected if a security breach is found, so thousands of developers will get to work on fixing it.
In short, I've developed custom CMS in the past, but I always find that 80-90% of it is writing functionality that is allready present in the popular CMS solutions, with just the remaining 10% being the true custom things that were the motivation behind the entire CMS. You're usually better off simply writing a plugin for an existing one with those unique changes.
Main feature of the drupal to use it as a CMS
1. Advanced URL Control
2. Custom Content Types and Views
3. Revision Control
4. User Management
5. Page Titles and Meta Tags
6. Excellent Documentation
7. PHP Template
8. Drupal Cookbooks
9. Large and Friendly Community
i think Drupal developers are make better and usefull admin pannel
It seems that the OP was satisfied a few months ago so further comment is not needed.