web-dev-qa-db-fra.com

Comment obtenir l'URL de base dans cakephp?

J'utilise la méthode Html Helper css() pour lier mes feuilles de style comme ceci: <?php echo $this->Html->css('reset.css');?> mais que se passe-t-il si mon application CakePHP est accessible via un chemin autre que http://site.domain.com, c'est à dire. http://site.domain.com/my_app

Quelle serait la meilleure commande pour lier ma feuille de style?

12
Rodrigo Souza

La même commande devrait fonctionner:

<?php 
echo $this->Html->css('reset.css');
?>

Il ajoute automatiquement le chemin au dossier CSS si le chemin donné 'reset.css' ne commence pas par une barre oblique.

Par ailleurs, si vous avez besoin d'obtenir l'URL de base dans Cake, vous pouvez utiliser la classe Router:

//with http://site.domain.com/my_app
echo Router::url('/')       //-> /my_app
echo Router::url('/', true) //-> http://site.domain.com/my_app
38
nIcO

Il existe plusieurs façons d'obtenir le chemin de base. j'utilise

echo $this->webroot; //Note: auto appends trailing slash
6
Tim Joyce

Utilisez ceci pour baseurl

echo $this->html->url('/', true);
6
Vaibhav Shahu

Sur une note connexe.

Si vous avez besoin de l'URL du thème, vous pouvez le faire:

$this->webroot.'theme/'.$this->theme
4
Dieter Gribnitz