Vitesse et référencement

La vitesse d’affichage d’une page web est actuellement, et ce depuis un certain temps, devenu importante. Surtout en ce qui concerne l’optimisation et par conséquent le référencement. Afin de gagner ces quelques millisecondes qui feront la différence, il existe plusieurs méthodes et techniques. En voici quelques-unes, avec des exemples.

Diminuer le nombre de requêtes HTTP

Chaque requête HTTP au sein du fichier prend un certain temps, mais surtout bloque le chargement global de la page web. En effet, HTTP et HTML chargent les ressources au fur et à mesure que la page le demande.

Continue reading

ZF : comprendre le fonctionnement des urls

Url de ZF et distribution des rôles aux contrôleurs

Avec Zend Framework, de base le système mis en place par le contrôleur est celui-ci :

url module contrôlleur action paramètre
http://exemple.test/ default index index
http://exemple.test/news default news index
http://exemple.test/news/ajouter default news ajouter
http://exemple.test/news/modifier/id/5 default news modifier id=5
http://exemple.test/news/modifier/?id=5 default news modifier id=5

Avec des modules perso

Maintenant ajoutons la gestion des modules news et livredor:

 $ctrl->setControllerDirectory(     array(         'news'    => '/module/news/controllers',         'livredor'    => '/livredor/ctrl'     ) ); 
url module contrôlleur action paramètre
http://exemple.test/ default index index
http://exemple.test/news news index index
http://exemple.test/news/ajouter news ajouter index
http://exemple.test/news/modifier/id/5 news modifier id
http://exemple.test/news/modifier/?id=5 news modifier index id=5

Comprendre le Zend_Controller_Router_Route

ce que l’on vient de voir s’explique par ceci :

 $route = new Zend_Controller_Router_Route(     ':module/:controller/:action/*',     array('module' => 'default') ); $router->addRoute('default', $route); 

Ce qui correspond à l’option par défaut. De plus, ceci nous montre un exemple de paramètre par défaut, en effet à module, on attribue la valeur default.

Allons plus loin et créer nos propres routes!

Route personnalisée

imagions un espace membre, on désire afficher chaque profile. On pourrait imaginer quelque chose du genre : http://exemple.test/profil/voir/id/5 ou encore http://exemple.test/profil/voir/membre/grummfy afin d’avoir le contrôleur profil et et l’action voir. Cependant ce n’est ni joli, ni pratique. Utilisons donc le Zend_Controller_Router_Route

 $route = new Zend_Controller_Router_Route(     'profiledemembre/:username/*',     array(         'controller' => 'profil',         'action'     => 'voir'     ) ); $router->addRoute('myProfileRoute', $route); 

Ce qu’on fait pour les url du type http://exemple.test/profiledemembre/grummfy, on assigne les valeurs suivantes :

 * controller = profil  * action = voir  * username = grummfy, ceci via les :  * et on garde la possibilité d'avoir des paramètres avec *

Dans le contrôleur profil, on fera ceci :

 <?php public function voirAction() {     $request = $this->getRequest();     $username = $request->getParam('username');     // ou     $username = $this->_getParam('username'); } 

Aller plus loin

Le manuel de Zend vous enseignera comment faire des url avec expression régulière ou encore des rotue static, et bien plus! Mais aussi cette autre page : http://framework.zend.com/manual/fr…