web-dev-qa-db-fra.com

Comment passer des variables dans le chemin du lien dans la fonction l()?

Je me demande comment passer des variables dans un argument path pour un lien créé avec l(). Le chemin ressemble à registration-history/listing/$node->nid/$sku/$node->created/$start_date Et le texte du lien est dans $registration_count.

3
Jill

Quelques exemples

Exemple 1: lien vers la page d'accueil

<?php
// example 1:  front page
print l(t('Home'), '<front>'); 
?>

Exemple 2: Lien vers la page d'accueil et ouverture dans une nouvelle fenêtre

<?php
print l(t('Home'), '<front>',array('attributes'=>array('target'=>'blank'))); 
?>

Exemple 3: Comment utiliser html

<?php
print l('<span class="front">Home</span>', '<front>',array('html' => TRUE)); 
?>

Exemple 4: Comment utiliser l'image au lieu du lien texte

Permet de créer mon chemin d'image

<?php 
global $base_url;
$path = "$base_url/sites/default/files/ceo5.png";
print l('<img src="'.$path.'" alt="Webemania CEO Image" />', 'sites/default/files/ceo5.png', array('html' => TRUE));
?>

Exemple 5: Ajouter une classe, des identifiants, etc.

<?php
// add a new class to my php ini configuration path
print l(  t('PHP ini configuration'),  'node/3',  array('attributes' =>array('class'=>'php-ini-conf', 'id'=>'phpini-conf') ));
?>

Exemple 6: Ajout d'une chaîne de requête aux liens

Ajout d'une chaîne de requête à l'exemple 5

<?php
// adding query string on example:5
print l(  t('PHP ini configuration'),  'node/33',  array('attributes' =>array('class'=>'php-ini-conf', 'id'=>'phpini-conf'), 'query'=>array('id'=>'5','status'=>'ok') ));
?>

La sortie sera:

http://webemania.com/blog/php-ini-configuration?id=5&status=ok

Exemple 7: Ajout d'une destination au lien de requête

<?php
print l(  t('edit'),  'node/'.$nid.'/edit',  array('query' => drupal_get_destination() ));
?>

Exemple 8: créer un lien de hachage uniquement (vers #)

<?php
print l('linktext', '', array('fragment' => ' ', 'external' => TRUE));
?>

Exemple 9: portions spécifiques d'une page

Utiliser des attributs de fragment Aller à la partie balise ouverte courte des configurations php ini: PHP Balise ouverte courte

<?php
l(  t('PHP ini configuration'),  'node/33',  array('attributes' =>array('class'=>'php-ini-conf', 'fragment' => "php-tag")));
?>

Références:

Comment et pourquoi utiliser la fonction l() pour créer des liens dans Drupal

5
Adrian Cid Almaguer

Pour référence, la façon dont j'ai résolu cette question:

$url = "registration-history/listing/$node->nid/$sku/$node->created/$start_date";

return l(t("Link text"), $url, array('attributes' => array('nid' => 'node->nid')));

Je ne sais pas si c'est la meilleure façon, mais ça marche.

1
Jill