I have been developing websites for a few years and have done a few sites in Xoops and Drupal and write a technical blog using Wordpress.
Wordpress and Drupal are not two comparable entities. Wordpress is great for writing a blog. The admin interface is great, there are hundreds of plugins, there are thousands of themes, and many of them look pretty good without needing to update them. Other than that, it’s just blog software.
Drupal on the other hand is a full fledged CMS, and realistically more. I didn’t understand Drupal at first when a developer friend started touting it to me. It took me a couple of years to really understand the powerful features that it has built in (and that’s if you don’t know how to program PHP). If you do know how to write/modify PHP, it opens up even greater doors.
I have found the support for Drupal and it’s modules very good. Maybe you just haven’t searched the site thoroughly enough. There is api.drupal.org. There is groups.drupal.org, and each module that has a maintainer has an issues/bug report queue for asking questions, reporting bugs, and creating patches. There is also the Drupal Handbooks - http://drupal.org/handbooks
I do all of my basic brochureware, band, and corporate type sites in Drupal now. I also recently did an online radio station with a Drupal front end.
That being said, I’m starting to learn PHP, whereas before I was just installing and managing scripts written in PHP.
I’m curious about 1 thing. Why would I write a PHP application using PHP with a framework instead of writing a custom Drupal module?
As far as I see it here are the pros and cons. Please correct me where I’m wrong.
Pros for PHP with framework: Very flexible, can use existing framework libraries.
Cons for PHP with framework: need to build basic foundations of website such as user login, security/roles/permission, admin interface, blog, captcha, menu system, etc. Need to build a template system (if the framework doesn’t have one) or use Smarty (or other PHP template system)
Pros for Drupal writing a custom module: all basic foundation of the website are already built and easy/quick to install/setup. There are multitudes of pre-written modules to choose from. The core code is constantly “stress tested” for security holes and patched accordingly.
Cons for Drupal writing a custom module: Potentially less flexibility than pure PHP (maybe I’m wrong on that). Need to understand the Drupal API.
I already know how to customize Drupal themes, which is a big plug. With learning a new framework, I feel like I need to start from scratch with the themes.
Can anybody shed object light on this? I know the actual task that you are trying to accomplish with a custom PHP development job probably dictates the technology to be used more than anything.