Annonce

  •  » Styles
  •  » "Missing template name" sur thème enfant après upgrade thème parent

#1 2015-01-13 19:21:00

tosca
Former Piwigo Team
Cévennes (Gard)
2006-09-23
3818

"Missing template name" sur thème enfant après upgrade thème parent

Bonsoir,

Mon thème enfant est en erreur depuis la mise à jour du thème parent [extension by JanisV] stripped-responsive
J'avais initialement pensé à une modification du thème parent (Cf. [Forum, topic 25793] Quelles sont les modifications dans stripped-responsive ) mais l'erreur remontée semble plutôt liée à un problème de paramétrage du thème enfant, auquel je n'ai pourtant pas touché :

Code:

Warning: filemtime(): stat failed for ./themes/michel-rouge/iconfontello.css.tpl in /home/marienoe/www/mr-pwg/include/template.class.php on line 1894

Fatal error: Uncaught exception 'SmartyException' with message 'Missing template name' in /home/marienoe/www/mr-pwg/include/smarty/libs/sysplugins/smarty_internal_template.php:634 Stack trace: #0 /home/marienoe/www/mr-pwg/include/smarty/libs/sysplugins/smarty_internal_templatebase.php(117): Smarty_Internal_Template->__get('source') #1 /home/marienoe/www/mr-pwg/include/template.class.php(484): Smarty_Internal_TemplateBase->fetch(false) #2 /home/marienoe/www/mr-pwg/include/template.class.php(1976): Template->parse('css.2cae333b02e...', true) #3 /home/marienoe/www/mr-pwg/include/template.class.php(1922): FileCombiner->process_combinable(Object(Css), true, false, '') #4 /home/marienoe/www/mr-pwg/include/template.class.php(1897): FileCombiner->flush_pending(Array, Array, Array, false) #5 /home/marienoe/www/mr-pwg/include/template.class.php(1413): FileCombiner->combine() #6 /home/marienoe/www/mr-pwg/include/template.class.php(532): CssLoader->get_css() #7 /home/marienoe/www/mr-pwg/include/template.class.php(505): Template->flus in /home/marienoe/www/mr-pwg/include/smarty/libs/sysplugins/smarty_internal_template.php on line 634

la ligne 634 de smarty_internal_template.php qui renvoie l'erreur correspond à ceci :

Code:

    /**
     * get Smarty property in template context
     *
     * @param string $property_name property name
     */
    public function __get($property_name)
    {
        switch ($property_name) {
            case 'source':
                if (strlen($this->template_resource) == 0) {
                    throw new SmartyException('Missing template name');
                }
                $this->source = Smarty_Resource::source($this);
                // cache template object under a unique ID
                // do not cache eval resources
                if ($this->source->type != 'eval') {
                    if ($this->smarty->allow_ambiguous_resources) {
                        $_templateId = $this->source->unique_resource . $this->cache_id . $this->compile_id;
                    } else {
                        $_templateId = $this->smarty->joined_template_dir . '#' . $this->template_resource . $this->cache_id . $this->compile_id;
                    }

                    if (isset($_templateId[150])) {
                        $_templateId = sha1($_templateId);
                    }
                    $this->smarty->template_objects[$_templateId] = $this;
                }
                return $this->source;

et le contenu de mon themeconf.inc.php est le suivant :

Code:

<?php
/*
Theme Name: Michel Rougé
Author: Marie-Noëlle Augendre
Author URI: http://marie-noelle-augendre.com
*/
$themeconf = array(
  'name'  => 'michel-rouge',
  'parent' => 'stripped_responsive',
);
?>

Après vérification de la documentation, je ne vois pas ce qui peut soudainement poser problème.
Merci pour vos suggestions.

Version de Piwigo: 2.7.3
Version de PHP: 5.4.34
Version de MySQL: 5.1.73-2+squeeze+build1+1-log
URL Piwigo: http://www.marie-noelle-augendre.com/mr-pwg/

Hors ligne

#2 2015-01-13 20:01:16

Guillaume C
Membre
Belgium
2014-04-08
334

Re: "Missing template name" sur thème enfant après upgrade thème parent

Question bête : est-ce que tu as essayé de désactiver + désinstaller + supprimer ton thème enfant et, ensuite, le réinstaller à neuf pour voir si ça répare quelque chose qui se serait mal passé lors de la mise à jour du parent ?

Hors ligne

#3 2015-01-13 21:01:04

tosca
Former Piwigo Team
Cévennes (Gard)
2006-09-23
3818

Re: "Missing template name" sur thème enfant après upgrade thème parent

Je n'y ai pas songé. Je ne vois pas bien comment la mise à jour du thème parent pourrait toucher le thème enfant : l'enfant "connaît" le parent, mais pas l'inverse.
Le thème enfant est inchangé ; et le thème parent fonctionne normalement lorsqu'il est activé.

Hors ligne

#4 2015-01-14 09:30:59

tosca
Former Piwigo Team
Cévennes (Gard)
2006-09-23
3818

Re: "Missing template name" sur thème enfant après upgrade thème parent

Après comparaison des 2 versions successives du thème stripped_responsive, le dossier fontello et le fichier iconfontello.css.tpl semblent être des nouveautés, mais je ne sais pas comment ils sont utilisés par le thème, ni pourquoi le thème enfant ne les trouve pas.

Pour info, le thème enfant comprend juste un theme.css, un local_head.tpl qui se limite au chargement d'une police Google et un dossier contenant les images du thème.

Hors ligne

#5 2015-01-14 09:39:58

tosca
Former Piwigo Team
Cévennes (Gard)
2006-09-23
3818

Re: "Missing template name" sur thème enfant après upgrade thème parent

En recopiant le dossier fontello ainsi que le fichier iconfontello.css.tpl, le thème enfant fonctionne effectivement normalement, mais ce "détournement" ne me semble pas une très bonne solution ; le thème enfant devrait pouvoir utiliser directement sans cet artifice.

J'imagine que la 1ère ligne iconfontello.css.tpl est peut-être la coupable

Code:

@import "fontello/css/stripped_responsive.css";

car elle ne semble pas prendre en compte la possibilité d'un thème enfant.

Hors ligne

#6 2015-02-02 01:06:50

tosca
Former Piwigo Team
Cévennes (Gard)
2006-09-23
3818

Re: "Missing template name" sur thème enfant après upgrade thème parent

Le créateur du thème n'ayant pas répondu à mes notifications, un gentil développeur qui passerait par là pourrait-il suggérer une alternative à cet @import en dur.
Il doit bien y avoir une variable Smarty ou quelque chose d'approchant qui peut faire référence au répertoire du thème parent, j'imagine.

Hors ligne

  •  » Styles
  •  » "Missing template name" sur thème enfant après upgrade thème parent

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2022 · Contact