Dotclear

Vous n'êtes pas identifié(e).

Annonce

13 février 2024 Sortie de Dotclear 2.29

#1 2015-12-20 16:32:03

kerjoa
Membre
Lieu : Dane - Académie de Versailles
Inscription : 2008-01-28
Site Web

Surcharger certains templates

Bonjour,

Comment faire dans un plugin pour « surcharger » des templates des default-templates ? (currywurst ou mustek)
Est-ce possible ?

Ici je souhaite dans que mon plugin modifie/surcharge les 2 fichiers suivants :

  1. _entry-feedback.html de inc/public/default-templates/currywurst

  2. le post.html de inc/public/default-templates/mustek

J'ai bien réussit à ajouter dans mon plugin :

$core->addBehavior('publicBeforeDocument',array('MyPublicClass','addTplPath'));
class MyfooterPublic
{
	public static function addTplPath($core)
	{
		$tplset = $core->themes->moduleInfo($core->blog->settings->system->theme,'tplset');
		if (!empty($tplset) && is_dir(dirname(__FILE__).'/default-templates/'.$tplset)) {
			$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates/'.$tplset);
		} else {
			$core->tpl->setPath($core->tpl->getPath(), dirname(__FILE__).'/default-templates/'.DC_DEFAULT_TPLSET);
		}
	}
}

Le path est bien présent dans $core->tpl->getPath().

Mais pour le reste je sèche. C'est possible de faire prendre en compte des « surcharges » de ces fichiers ?
Merci de votre aide.

Hors ligne

#2 2015-12-21 10:17:34

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Surcharger certains templates

Bonjour,

Pour la surcharge il faut inverser les deux paramètres de setPath(), le premier a la priorité sur le second. Donc ça doit être ;

$core->tpl->setPath(<ton chemin à toi>,$core->tpl->getPath());

Dotclear addicted since 2004

Hors ligne

#3 2015-12-22 08:43:12

kerjoa
Membre
Lieu : Dane - Académie de Versailles
Inscription : 2008-01-28
Site Web

Re : Surcharger certains templates

C'est exactement ça ! (mon path se retrouve alors premier)
Merci beaucoup Franck.

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map