Détails de l'actualité

Dossiers techniques

jeudi 31 octobre 2013

Depuis quelques temps, je participe au blog technique "redpik.net".

 

Ce blog regroupe des articles sur les technologies suivantes : 

  • TYPO3
  • Wordpress
  • Prestashop
  • Jquery
  • Spip

 

Pour ma part j'ai déjà  rédigé une petite série de dossiers.

 

1) Une présentation humoristique de TYPO3 (déjà  évoquée ici)

Lien : TYPO3 c'est nul ?!?!

 

2) Une petite astuce concernant les entêtes générées par TYPO3:

Lien : Gérer l'ordre des META et du TITLE

 

3) Une série sur l'API TYPO3 et certaines fonctions intéressantes :

 

 

4) Une série d'articles sur le système de templating FLUID :

  • Une première approche du templating FLUID avec une comparaison entre l'ancienne méthode de templating (héritée de "pibase") et l'utilisation de FLUID
    Lien : [FLUID]ifions nos développements

  • Une seconde approche du templating FLUID avec l'ajout de nouvelles fonctionnalités (viewhelper) dans les templates FLUID existants
    Lien : [FLUID]ifions nos évolutions TYPO3

 

D'autres dossiers sont encore en préparation sur les nouvelles méthodes de développement FLUID ou encore EXTBASE.

 

Le manque de documentation est un grand frein pour la mise en application de ces nouvelles technologies, mais les éléments que l'on peut trouver sont très intéressants.

 

L'organisation de base est assez perturbante lorsqu'on est seulement habitué au résultat du Kickstarter historique. De plus, il y a plein de règles de nommage à utiliser dans le nom des classes, et des fichiers, sinon rien ne s'affiche.

 

Une fonction vraiment agréable du développement est qu'il est possible de définir quelle partie du code est mis en cache et quelle partie ne l'est pas, et tout ca, à l'intérieur d'un même "plugin" (la notion de plugin change un peu avec la nouvelle organisation, cela devient des "contrôleurs" et des "actions"). 

 

Exemple ext_localconf.php (extension blog_example) : 

 

Tx_Extbase_Utility_Extension::configurePlugin(
    $_EXTKEY,           // identification de l'extension
    'Pi1',           // Nom unique du plugin en UpperCamelCase
    array(           // combinaisons controlleur-action disponibles 
        'Blog' => 'index,new,edit,...',  // par defaut, appel du 1ere action-1er controlleur
        'Post' => 'index,edit,...'
        ),
    array(         // Tableau des actions qui ne seront pas mis en cache 
        'Blog' => 'new,edit',
        'Post' => 'new'
        )
);

 

Mais une fois un texte simple affiché, il est possible de travailler sur le système FLUID qui permet de simplifier grandement le travail du développeur.

Exemple : 

Afficher un email, avec un lien vers cet email seulement si cet email est présent : 

code PHP 

 

<?PHP
...
$this->view->assign('email', $fieldEmail);
...
?>

 

Template FUILD :

 

<f:if condition="{email}">
<f:link.email email="{email}">{email}</f:link><br />
</f:if>

 

Plus aucune gestion des cas particuliers directement dans le code PHP. 

Si il faut par exemple supprimer la mise en forme du lien et rendre le lien non clickable, il suffit d'une petite modif dans le template (qui est présentÃé comme de l'HTML) pour que ca fonctionne... 

Plus de risque de casser le code PHP , ni de craindre une mise à jour du plugin.

 

A suivre......

 

 

 


Informations TYPO3

© 2017 - OlivierSC - Mentions légales