Optional argument in Drupal hook_menu implementation
It's easier than you think :). Don't set any arguments in your path and just pass them to your "page callback" function.
$items['activities_list']=array( 'title callback' => 'activities_list_title', 'description' =>'All the Indicators divided by Coutry', 'page callback' => 'activities_list', 'access arguments' => array('access ppi'),);
And the page callback function would look like this:
function activities_list($arg1, $arg2){ // Your code goes here... drupal_set_title(activities_list_title($arg1, $arg2));}
You can alter the page title using the following code. (Not tested, kindly let me know if it worked):
function activities_list_title($arg_1, $arg_2){ $title = ""; // Your code goes here return $title;}
Hope this helps... Muhammad.
I don't think you can. If you did this instead with only one wildcard:
$items['activities_list/%']=array( 'title callback' => 'activities_list_title', 'title arguments' =>array(1), 'description' =>'All the Indicators divided by Coutry', 'page callback' => 'activities_list', 'access arguments' => array('access ppi'), 'page arguments' => array(1,2));
This will then work for a URL like activities_list/foo, but if you then had a URL like activities_list/foo/bar you can still get the value of bar in the page callback as it is still passed to that function by 'page arguments' => array(1,2).
Or alternatively you can call it by using arg(2) in your page callback.