Ahh, yes a module can declare theme hooks so that other things can theme the output of the module. It's perfectly safe to use these module-specific theme hooks in your theme because of the way the drupal hook system works. As far as the PHP parser is concerned, you're just declaring a new function. If the module that uses that theme hook is present, it'll call that function to theme its output. If the module that uses that theme hook isn't there, the function will never be called.<div>
<br></div><div>David Landry<br><br><div class="gmail_quote">On Fri, Sep 2, 2011 at 10:06 PM, Warren Vail <span dir="ltr"><<a href="mailto:warren@vailtech.net">warren@vailtech.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<u></u>
<u></u>
<div lang="EN-US" link="blue" vlink="blue">
<div>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy">Sorry I miss spoke (or typed).<u></u><u></u></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy">There is mention in many of the Drupal
programming books of theming functions that can be invoked by a module. I
don’t understand them fully yet, but I believe some of them are standard
and others may not be. I believe the idea is to make sure the theming is
kept separate from the data, even if some of the theming is data dependent
(something that proponents of separation tend discount), a compromise at best.<u></u><u></u></span></font></p>
<p class="MsoNormal"><font size="2" color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p>
<div>
<p class="MsoNormal"><em><b><i><font size="2" color="navy" face="Arial Black"><span style="font-size:10.0pt;font-family:"Arial Black";color:navy;font-weight:bold">Warren
Vail</span></font></i></b></em><font color="navy"><span style="color:navy"><u></u><u></u></span></font></p>
</div>
<div>
<div class="MsoNormal" align="center" style="text-align:center"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">
<hr size="2" width="100%" align="center">
</span></font></div>
<p class="MsoNormal"><b><font size="2" face="Tahoma"><span style="font-size:10.0pt;font-family:Tahoma;font-weight:bold">From:</span></font></b><font size="2" face="Tahoma"><span style="font-size:10.0pt;font-family:Tahoma">
<a href="mailto:themes-bounces@drupal.org" target="_blank">themes-bounces@drupal.org</a> [mailto:<a href="mailto:themes-bounces@drupal.org" target="_blank">themes-bounces@drupal.org</a>] <b><span style="font-weight:bold">On Behalf Of </span></b>David Landry<br>
<b><span style="font-weight:bold">Sent:</span></b> Thursday, September 01, 2011
5:03 PM</span></font></p><div><div><font size="2" face="Tahoma"></font></div><div class="h5"><font size="2" face="Tahoma"><br>
<b><span style="font-weight:bold">To:</span></b> A list for theme developers<br>
<b><span style="font-weight:bold">Subject:</span></b> Re: [themes] theme
dependencies</font></div></div><u></u><u></u><p></p>
</div><div><div></div><div class="h5">
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>
<p class="MsoNormal"><u></u><u></u><font size="3" face="Times New Roman"><span style="font-size:12.0pt">Warren</span></font><u></u><u></u>,<u></u><u></u></p>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>
</div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">I'm not sure I understand what you mean by "theming modules."
The first thing that comes to mind is something like <a href="http://drupal.org/project/html5_tools" target="_blank">HTML5 Tools</a>. The <a href="http://drupal.org/project/html5_base" target="_blank">HTML5 Base</a> theme is
"designed to go with HTML5 Tools," but HTML5 Tools does its magic
before anything reaches the theme layer, leaving no reason for the theme to
call any HTML5 Tools functions.<u></u><u></u></span></font></p>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>
</div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">David Landry<u></u><u></u></span></font></p>
</div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">On Thu, Sep 1, 2011 at 4:38 PM, Warren Vail <<a href="mailto:warren@vailtech.net" target="_blank">warren@vailtech.net</a>> wrote:<u></u><u></u></span></font></p>
<div link="blue" vlink="purple">
<div>
<p class="MsoNormal"><font size="2" color="#1f497d" face="Times New Roman"><span style="font-size:11.0pt;color:#1F497D">David,</span></font><u></u><u></u></p>
<p class="MsoNormal"><font size="2" color="#1f497d" face="Times New Roman"><span style="font-size:11.0pt;color:#1F497D"> </span></font><u></u><u></u></p>
<p class="MsoNormal"><font size="2" color="#1f497d" face="Times New Roman"><span style="font-size:11.0pt;color:#1F497D">Doesn’t the opposite exist where modules request specific
theming modules? Is there a standard set of theming modules yet, or must
you just test to see if the function exists?</span></font><u></u><u></u></p>
<p class="MsoNormal"><font size="2" color="#1f497d" face="Times New Roman"><span style="font-size:11.0pt;color:#1F497D"> </span></font><u></u><u></u></p>
<p class="MsoNormal"><b><i><font size="2" color="#365f91" face="Times New Roman"><span style="font-size:11.0pt;color:#365F91;font-weight:bold;font-style:italic">Warren Vail</span></font></i></b><u></u><u></u></p>
<p class="MsoNormal"><font size="2" color="#1f497d" face="Times New Roman"><span style="font-size:11.0pt;color:#1F497D"> </span></font><u></u><u></u></p>
<p class="MsoNormal"><b><font size="2" face="Times New Roman"><span style="font-size:10.0pt;font-weight:bold">From:</span></font></b><font size="2"><span style="font-size:10.0pt"> <a href="mailto:themes-bounces@drupal.org" target="_blank">themes-bounces@drupal.org</a>
[mailto:<a href="mailto:themes-bounces@drupal.org" target="_blank">themes-bounces@drupal.org</a>]
<b><span style="font-weight:bold">On Behalf Of </span></b>David Landry<br>
<b><span style="font-weight:bold">Sent:</span></b> Thursday, September 01, 2011
2:17 PM<br>
<b><span style="font-weight:bold">To:</span></b> A list for theme developers<br>
<b><span style="font-weight:bold">Subject:</span></b> Re: [themes] theme
dependencies</span></font><u></u><u></u></p>
<div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"> <u></u><u></u></span></font></p>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">It's bad practice
for themes to have module dependencies like that. There is no centralized
standard for tracking modules that a theme depends on. You'll have to go
through the entire theme looking for references to modules.<u></u><u></u></span></font></p>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"> <u></u><u></u></span></font></p>
</div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">If you want to be
kind to the next person who has to maintain the site, you could break out any
template code that has module dependency as a custom module or Feature, so that
the module dependencies can be declared.<u></u><u></u></span></font></p>
</div>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"> <u></u><u></u></span></font></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">David Landry<u></u><u></u></span></font></p>
<div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">On Thu, Sep 1,
2011 at 3:09 PM, Bert Van Kets <<a href="mailto:mailing@vankets.com" target="_blank">mailing@vankets.com</a>> wrote:<u></u><u></u></span></font></p>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">Hi all,<br>
<br>
is there any easy way to know what modules a theme is depending on?<br>
I have a theme from a Drupal 6 site with a multitude of installed<br>
modules. When I use the theme on a plain vanilla Drupal install a blank<br>
page is installed.<br>
I really do not want to go through all the tpl files to see what modules<br>
are referenced. How is a problem like this tackled?<br>
<br>
Thanks.<br>
<br>
Bert<br>
_______________________________________________<br>
themes mailing list<br>
<a href="mailto:themes@drupal.org" target="_blank">themes@drupal.org</a><br>
<a href="http://lists.drupal.org/mailman/listinfo/themes" target="_blank">http://lists.drupal.org/mailman/listinfo/themes</a><u></u><u></u></span></font></p>
</div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"> <u></u><u></u></span></font></p>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><br>
_______________________________________________<br>
themes mailing list<br>
<a href="mailto:themes@drupal.org" target="_blank">themes@drupal.org</a><br>
<a href="http://lists.drupal.org/mailman/listinfo/themes" target="_blank">http://lists.drupal.org/mailman/listinfo/themes</a><u></u><u></u></span></font></p>
</div>
<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>
</div>
</div>
</div>
</div></div></div>
</div>
<br>_______________________________________________<br>
themes mailing list<br>
<a href="mailto:themes@drupal.org">themes@drupal.org</a><br>
<a href="http://lists.drupal.org/mailman/listinfo/themes" target="_blank">http://lists.drupal.org/mailman/listinfo/themes</a><br>
<br></blockquote></div><br></div>