Usando Drupal 7, i moduli possono facilmente gestire token simili a [nodo: autore: nome], dove la parte del token dopo nodo: autore si riferisce a un token utente. A differenza del modulo token per Drupal 6, il codice che in Drupal 7 gestisce i token consente la creazione di token dinamici. Questo perché su Drupal 7, i moduli che implementano i token possono sostituire qualsiasi token, non solo i token che hanno definito. Il ciclo normale usato in hook_tokens () è il seguente.
foreach ($tokens as $name => $original) {
// Check the value of $name, and generate the replacement that is assigned to
// $replacements[$original].
}
Utilizzando il seguente codice, è possibile ottenere ciò che si sta tentando di ottenere. I token hanno un formato specifico, che è diverso da quello che stai descrivendo, comunque. Il codice non è stato testato.
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;
}
La sostituzione dei token è così specifica che non credo che troverai un modulo che lo faccia. La tua unica possibilità è un modulo personalizzato che scrivi.