Usando Drupal 7, los módulos pueden manejar fácilmente tokens similares a [node: author: name], donde la parte del token después de node: author se refiere a un token de usuario. A diferencia del módulo Token para Drupal 6, el código que en Drupal 7 maneja los tokens permite la creación de tokens dinámicos. Esto se debe a que en Drupal 7, los módulos que implementan tokens pueden reemplazar cualquier token, no solo los tokens que definieron. El bucle normal utilizado en hook_tokens () es el siguiente.
foreach ($tokens as $name => $original) {
// Check the value of $name, and generate the replacement that is assigned to
// $replacements[$original].
}
Usando el siguiente código, puede obtener lo que está tratando de lograr. Sin embargo, los tokens tienen un formato específico, que es diferente del que estás describiendo. El código no ha sido probado.
function mymodule_token_info() {
$type = array(
'name' => t('Anchors'),
'description' => t('Your description'),
);
return array(
'types' => array('anchor' => $type),
);
}
function mymodule_tokens($type, $tokens, array $data = array(), array $options = array()) {
$replacements = array();
$sanitize = !empty($options['sanitize']);
if ($type == 'anchor') {
foreach ($tokens as $name => $original) {
list($file, $title) = explode(':', $name);
if (!empty($title) && !empty($_GET[$title])) {
$title = $_GET[$title];
}
else {
$title = '';
}
$replacements[$original] = "<a href='$file.html'>$title</a>";
}
}
return $replacements;
}
El reemplazo de los tokens es tan específico que no creo que encuentres un módulo que lo haga. Su única posibilidad es un módulo personalizado que escriba.