août
2011
Voici un court tutoriel pour désactiver un module ou une vue dans eZ Publish. Ajouter dans le site.ini.append.php de votre siteaccess les lignes ci-dessous : [SiteAccessRules] Rules[] Rules[]=access;enable Rules[]=moduleall Rules[]=access;disable Rules[]=module;ezinfo Rules[]=module;user/register Ces lignes d’exemples permettent de désactiver le module « ezinfo » et la vue « user/register » pour un siteaccess donné. En espérant que ça puisse vous aider, Thomas.
août
2011
Il peut être pratique de réutiliser le code d’une vue de module eZ Publish à partir d’une autre page. Par exemple, pour ne pas dupliquer le code entre les requêtes directe et les requêtes AJAX. Vous pouvez utiliser le code ci-dessous pour récupérer le résultat de la vue « user/login » : $module = eZModule::findModule( "user"); $return = $module->run("login"); $content = $return[‘content’] En espérant que ça puisse vous aider, Thomas.
août
2011
eZ Publish dispose d’un moteur i18n ou d’internationalisation. 1. Presentation On peut l’utiliser dans les templates à l’aide de l’opérateur i18n() : {$string|i18n($context)} {‘The results’|i18n(‘search’)} Dans le ficher translations/fre-FR/translation.ts, on peut lui indiquer les valeurs en français : <!DOCTYPE TS> <TS> <context> <name>search</name> <message> <source>The results</source> <translation>Les résultats</translation> </message> </context> </TS> 2. Utiliser des sources en français Dans le sens anglais […]
août
2011
Pour les versions d’eZ Publish inférieur à 4.4.1, il fallait éviter de supprimer un utilisateur eZ Publish. Même supprimé, tous les contenus qu’il a publié lui font encore référence. Ceci pose quelques problèmes dans le Back Office d’eZ Publish. Par exemple, l’interface n’arrive plus à lister les sous-éléments. C’est pour cela qu’il valait mieux désactiver un utilisateur que le supprimer. Si c’est trop tard et qu’il est supprimé, comme ça m’est arrivé, on peut réparer […]
juillet
2011
Voici un petit tutoriel JS. Le but est de voir comment exécuter du JavaScript à l’intérieur des iframes. On va essayer de coder un script qui entoure toutes les images de la page. 1. Première version du script : <span style="color:#777;">// On récupère toutes les images du document</span> var imgs = document.getElementsByTagName(‘img’); if (imgs != null) { <span style="color:#777;">// Pour chaque image</span> for (var i=0; i<imgs.length; i++) { […]
juillet
2011
Il ne faut pas oublier de faire des sauvegardes régulières de ses bases de données. Avec la commande mysqldump et une console shell, c’est vraiment pas compliqué : 1. On peut sauvegarder sa base à un moment donné : <span style="color:#777;"># Générer un dump de BDD dans le fichier ~/dump/ma_base.20110725.sql</span> mysqldump -u${user} -p${password} ${db} > ~/dump/${db}.`date "+%Y%m%d"`.sql 2. On peut sauvegarder sa base régulièrement. Pour cela copier la ligne ci-dessus dans un script, par exemple […]
juillet
2011
Vous écrivez un script PHP pour eZ Publish et vous rencontrez l’erreur : « Missing operation definition file for module: content » C’est surement que vous avez oublié d’activer les modules dans la déclaration de votre script : <span style="color:#777;">// Initialisation</span> $script = eZScript::instance( array( ‘description’ => ‘Description of my script’, ‘use-session’ => false, <b>’use-modules’ => true</b>, ‘use-extensions’ => true, ‘debug-output’ => true, ‘debug-message’ => […]
juillet
2011
Quand on liste les nœuds dans eZ Publish, un peut limiter la recherche à certaines classes de contenus. Le seul problème c’est qu’il faut indiquer l’ « id » (numéro) des classes et on connaît plus souvent leur « identifier » (nom). En PHP on peut facilement passer de l’un à l’autre à l’aide du code suivant : $content_class_id = eZContentClass::classIDByIdentifier($content_class_name); Par contre, je ne connais pas d’opérateur de template qui permette de faire cette conversion. En espérant que […]
juillet
2011
Pour lister toutes les tables d’un base de donnée en SQL, c’est facile : SHOW tables; Mais quand on a beaucoup de tables, c’est pas forcément pratique. Saviez-vous que vous pouvez filtrer à l’aide de l’opérateur LIKE ? SHOW tables LIKE ‘prefix_%'; C’est très pratique sur les hébergements mutualisés et pour eZ Publish, car le CMS a 119 tables : SHOW tables LIKE ‘ezcollab_%'; En espérant que ça puisse vous aider, Thomas.
septembre
2010
Ceci peut intéresser ceux qui jouent (encore) à labrute.