[development] theme/module name conflict
Khalid Baheyeldin
kb at 2bits.com
Wed Apr 25 22:58:48 UTC 2007
On 4/25/07, Ashraf Amayreh <mistknight at gmail.com> wrote:
>
> Hello all,
>
> I ran into a very awkward bug today. I created a module and a theme for a
> client, and naturally, this module contained customizations and the theme
> was a custom made theme. I named the module and the theme with the client's
> name. Let's say the client was named abc so I created an abc module and an
> abc theme.
I have done the same in the past. A module called x.module, and a theme
called x with a file page.tpl.php. Did not have problems.
I did not use hook_block in that module though.
So, to verify that you are facing an issue, I created the following:
garland.info
name = Garland module
description = Test gardland module
version = "$Name: $"
garland.module
<?php
function garland_block($op, $delta = 0) {
}
When I implemented the abc_block hook I was surprised to find that all
> blocks disappeared on all pages.
The blocks disappeared like you found out, when I enabled the above module.
Further investigation into the core and I found that the culprit was the
> call to theme('block') which mistakingly called abc_block thinking it was a
> theme override function (rather than the hook it was).
>
> I was wondering if this issue has been addressed before. I can think of
> three possible solutions:
> 1. Make it a standard that no theme and module should be named the same
> (weak solution)
> 2. Change all theme('block') calls to something else so no chance of
> conflict could occur
> 3. Change the hook name so that it won't conflict with the theme call
> 4. Any suggestions???
>
> Either 2 or 3 seem good enough to solve the problem. But I thought I'd
> gouge some opinions before wasting time on a less-than-optimal patch.
I think 1 can be easiest path. Forbid enabling a module with the same name
as an enabled theme and vice versa. So whoever is enabled first wins.
I am not sure what the impact on modules would be if 2 or 3 is done.
--
2bits.com
http://2bits.com
Drupal development, customization and consulting.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20070425/3624b2a1/attachment.htm
More information about the development
mailing list