Nicolas Grillet

Intégrateur Web

Télécharger mon CV Contactez moi

CMS Made Simple // Version 1.11 bug edition page et méthode _compile_source

nicoss01 - 13/09/2012

Si vous avez mis à jour votre installation de CMS Made Simple pour la version 1.11 ( ce que je vous conseille), vous aurez peut quelques soucis comme moi après la mise à jour.

En effet le premier problème est venu avec la fonction $smarty->_compile_source utilisée dans certaines balises utilisateurs, cela cause le crash de la page.
Le problème vient du fait que la mise à jour 1.11 affecte le moteur Smarty qui passe maintenant en version 3, or cette version modifie la syntaxe habituelle et oblige à être plus rigoureux.

Donc si vous utilisez ceci :

$smarty = cmsms()->GetSmarty();
$smarty_data = "{menu}";
$smarty->_compile_source('temporary template', $smarty_data, $_compiled );
@ob_start();
$smarty->_eval('?>' . $_compiled);
$_contents = @ob_get_contents();
@ob_end_clean();
echo $_contents;

Et qu’après la MAJ, vous obtenez ceci : Call of unknown method ‘_compile_source’, corrigez votre comme ceci :

$smarty = cmsms()->GetSmarty();
$smarty_data = "{menu}";
echo $smarty->display('String:'.$smarty_data);

Ensuite, 2eme problème, il se peut qu’après la MAj, vous ayiez une page blanche lorsque vous souhaitez éditer une page.
Regardez dans le journal de l’administration et si vous voyez ceci : ERROR DETECTED: Call to a member function GetPropertyValue() on a non-object at, j’ai une solution pour les autres erreurs éventuelles je n’en ai pas.

Le problème vient du fait que la fonction GetPropertyValue() ne fonctionne plus sous Smarty 3, donc si vous utilisiez une syntaxe comme

{capture assign='logo'}{$content_obj->GetPropertyValue('image')}{/capture}

, corrigez la avec ceci 

{page_attr key='image' assign='logo'}

J’ai dû ensuite réenregistrer certaines pages, simplement en les éditants puis en validant.

Voilà la migration vers la version 1.11 de CMS Made Simple devrait bien se passer ensuite, pensez à utiliser la nouvelle interface d’administration et les nouvelles options de cache de Smarty ;-) 


Leave a Comment

You must be logged in to post a comment.

Laisser un commentaire

Copyright Nicolas Grillet