Hi,<br><br>&gt; My understanding is that creating a function called<br>&gt;<br>&gt; mymodule_invoke_dosomething()<br>&gt;<br>&gt; will cause Drupal (via module_invoke_all() ?) to call functions in other<br>&gt; modules called othermodule_dosomething()<br>
&gt;<br>&gt; Is there another step in hook creation that I&#39;m missing?<br><br>You need to call <span style="color: rgb(51, 102, 255);">module_invoke_all</span> giving the name of the hook that you want to invoke as the first parameter, and the rest of the parameters of the hook. It will return a merged array of all the results from those modules that implement that hook. See: <a href="http://api.drupal.org/api/function/module_invoke_all/6">http://api.drupal.org/api/function/module_invoke_all/6</a><br>
<br>You <i>may</i> want to put the call to <span style="color: rgb(51, 102, 255);">module_invoke_all</span> in a wrapper function in <i>your</i> module, which <span style="color: rgb(51, 102, 255);">mymodule_invoke_hookname</span> would be a good place, but there&#39;s no hard and fast rule AFAIK.<br>
<br>&gt; I agree - I&#39;m just wondering if we (maybe me) could automate the<br>&gt; creation of the hook_nodapi page.<br><br>It is! a.d.o checks out a file from CVS, <a href="http://cvs.drupal.org/viewvc.py/drupal/contributions/docs/developer/hooks/">http://cvs.drupal.org/viewvc.py/drupal/contributions/docs/developer/hooks/</a>, and that&#39;s where the <a href="http://api.drupal.org/api/function/hook_nodeapi/6">http://api.drupal.org/api/function/hook_nodeapi/6</a> page comes from.<br>
<br>&gt; - and at the same time look for functions that are implementations of<br>&gt; the hook so that the hook_nodapi references has links to all the places<br>&gt; the hook is used.<br><br>They&#39;ll need to be named <span style="color: rgb(51, 102, 255);">modulename_nodeapi</span> so finding implementations is fairly trivial, just use the search box on a.d.o and type in: &quot;_nodeapi&quot;<br>
<br>Also, we&#39;re getting a little off-topic here :-D<br><br>On Tue, Jun 3, 2008 at 12:22 PM, Sean Burlington &lt;<a href="mailto:sean@practicalweb.co.uk">sean@practicalweb.co.uk</a>&gt; wrote:<br>&gt; Steven Jones wrote:<br>
&gt;&gt; I wouldn&#39;t say that node_invoke_nodeapi &#39;defined&#39; the nodeapi hook. It<br>&gt;&gt; invokes it, because module_invoke_all can&#39;t handle references.<br>&gt;<br>&gt; My understanding is that creating a function called<br>
&gt;<br>&gt; mymodule_invoke_dosomething()<br>&gt;<br>&gt; will cause Drupal (via module_invoke_all() ?) to call functions in other<br>&gt; modules called othermodule_dosomething()<br>&gt;<br>&gt; Is there another step in hook creation that I&#39;m missing?<br>
&gt;<br>&gt;<br>&gt;&gt; But I think that for people looking for how to use the nodeapi hook<br>&gt;&gt; are much more likely to tap &#39;hook_nodeapi&#39; into a.d.o. You don&#39;t need<br>&gt;&gt; knowledge of how the hook is invoked to implement it, you just need to<br>
&gt;&gt; know what parameters you get etc.<br>&gt;&gt;<br>&gt;<br>&gt; I agree - I&#39;m just wondering if we (maybe me) could automate the<br>&gt; creation of the hook_nodapi page.<br>&gt;<br>&gt; - and at the same time look for functions that are implementations of<br>
&gt; the hook so that the hook_nodapi references has links to all the places<br>&gt; the hook is used.<br>&gt;<br>&gt; This would be especially useful for my use of the API module on sites I<br>&gt; work on - where I would be able to look (for example) for all the places<br>
&gt; &nbsp;the site uses hook_form_alter().<br>&gt;<br>&gt;<br>&gt;<br>&gt; --<br>&gt;<br>&gt; Sean Burlington<br>&gt;<br>&gt; <a href="http://www.practicalweb.co.uk">www.practicalweb.co.uk</a><br>&gt; company number 06427950<br>
&gt;<br>&gt; --<br>&gt; Pending work: <a href="http://drupal.org/project/issues/documentation/">http://drupal.org/project/issues/documentation/</a><br>&gt; List archives: <a href="http://lists.drupal.org/pipermail/documentation/">http://lists.drupal.org/pipermail/documentation/</a><br>
&gt;<br><br><br><br>-- <br>Regards<br>Steven Jones<br>