I'm curious what the best methods are for customizing a non-core module. As an example, I made some changes the WebForm module directly in the .module file so that it would work exactly how I wanted it to on a few forms. I tried changing the functions in my theme's template.php file, but it just broke the site. Is there any reason I shouldn't be able to override Webform module or any other modules functions from template.php? If so, what would be the best method of doing this? I still want to be able to install updates on the modules, and if I did, it would overwrite my customization.

Thanks!

Comments

mradcliffe’s picture

If I have to customize a contrib module (or a core module) I checkout the cvs version I need and then when I'm done modifying I make a patch. I'll either post the patch to the issue queue if it makes sense to publish it, and I'll use my own version control system on a per site basis.

That way I can easily find changes. Also, when I do a cvs update it'll notify me of merge conflicts.