New Podcast

Posted Tuesday, January 31 at 3:28 pm
  Thomas Turnbull (tom_o_t on drupal.org) and Alan Palazzolo (zzolo on drupal.org) join Mike Anello to talk about their new book from O’Reilly Media, Mapping with Drupal. Mike’s usual co-hosts, Andrew and Ryan, were both unable to participate in the podcast, leaving Thomas and Alan subject to Mike’s long-winded (but extremely interesting by some accounts) questions.
Download Podcast 73
DrupalEasy_ep73_20120131.mp3
Syndicate content

NEWSLETTER

Stay informed on our latest news!

Syndicate content

Testimonial

Mike & Ryan's session on March 11th was a great intro to what DrupalEasy training is capable of teaching. From solid fundamentals and practices, to a complex, automated feed aggregator, everything was laid out in plain detail, so any skill level, from Beginner, to Ninja could have picked it up quickly. I am anxiously waiting the next session, and encourage anyone who wants to sharpen their Drupal knowledge to drop by a session, and get their learn on

Who are we?

DrupalEasy is the collective expertise of Ryan Price and Michael Anello, who joined forces to provide training and consulting services worldwide. Read all about them and what they can do.

What is Drupal?

Drupal is a free, super-powerful content management system for sites that require information posting and collection, including blogs, forums, videos, photos, and databases of information. We think it is the best platform available. Here's why...

Why Drupal?

More and more savvy organizations are going with Drupal for content management, and its no mystery why. It’s free, flexible, and easy to maintain for small or large volume sites. Learn more...

Module Development: Understanding Wildcard Loader Arguments

When writing a module from scratch (or trying to deconstruct one to figure out how it works), it might save you some time to be aware of "wildcard loader arguments" when using hook_menu(). These wildcard arguments are automatically linked with "_load()" functions that allow the module developer to load data into the argument anytime the menu item is called.

Here's a quick example of what I'm talking about. Look at this snippet from the Quicktabs module's quicktabs_menu() function:


$items['admin/build/quicktabs/%quicktabs/edit'] = array(
'title' => 'Edit QT block',
'page callback' => 'drupal_get_form',
'page arguments' => array('quicktabs_form', 'edit', 3),
'access arguments' => array('administer quicktabs'),
'type' => MENU_CALLBACK,
'file' => 'includes/admin.inc',
);

The "%quicktabs" wildcard automatically calls the "quicktabs_load()" function whenever this menu item is called (if the wildcard was named "%pickles" then it would call "pickles_load()"). What this means is that while just the ID of the quicktabs block is passed in via the URL, the quicktabs_load() function takes this ID and populates the full quicktabs array that is then passed to the "quicktabs_form" function. Since this all happens automatically, there's no paper trail (and therefore can be a bit confusing) to see how exactly the $quicktabs variable gets populated.

More info on these "Wildcard Loader Arguments" is available on Drupal.org.

Trackback URL for this post:

http://drupaleasy.com/trackback/124
No votes yet

More Quicktips


Syndicate content