•  » Utilisation
  •  » [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

#1 2012-06-12 12:46:05

notph
Membre
2011-08-02
60

[Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Bonjour,

Je cherche à trouver dans les fichiers de Piwigo l'endroit est défini la fonction qui gère le fil d'ariane pour faire une petite modification sur mon site.

Je n'ai rien trouvé dans la doc ou sur le forum.

Merci

Dernière modification par notph (2012-06-12 13:17:30)

Hors ligne

#2 2012-06-12 18:12:29

flop25
Équipe Piwigo
2006-07-06
6457

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Bonjour
première règle de la personnalisation, ne jamais modifier les fichiers fournis. Bon après je ne sais si vous alliez vraiment le faire
Dites nous plutôt ce que vous voulez changer après on pourra vous dire comment
Le principe de la personnalisation de piwigo, c'est soit ça se gère en CSS, soit en php en changeant les variables Smarty, soit en php par préfiltre/prefilter

Hors ligne

#3 2012-06-12 18:30:39

notph
Membre
2011-08-02
60

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Bonjour,

Je ne pensais effectivement pas modifier les fichiers originaux. C'était surtout pour regarder comment s'était construit.

Enfaite le fil d'ariane peut être de temps en temps assez long et ce n'est pas vraiment esthétique dans mon cas.

Je souhaite le séparer en deux parties: Les albums "mère" et le nom de l'album ouvert actuellement.

Par la suite j'ai un bout de code qui à l'aide de jQuery va venir réduire toute la première partie à quelques pixels tout en laissant la deuxième (le nom de l'album ouvert).
Le tout avec un petit "hover" qui va venir ré-étendre cette première partie au survol de la souris afin de pouvoir quand même l'utiliser.

Maintenant j'ai créer un template sur la base de index.php, seulement il n'y a que ($Title) à l'endroit où se situe ce fil d'ariane. Je souhaite remplacer ce ($Title) par un code équivalent à ce qu'il fait actuellement mais seulement en séparant ces deux parties afin de pouvoir en réduire une.

J'espère que c'est plus ou moins clair. ;)

Dernière modification par notph (2012-06-12 18:32:23)

Hors ligne

#4 2012-06-12 18:48:17

flop25
Équipe Piwigo
2006-07-06
6457

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

oui bcp plus merci !
je regarde ça

Hors ligne

#5 2012-06-12 19:02:59

flop25
Équipe Piwigo
2006-07-06
6457

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Alors ce que j'ai fais, c'est
aller dans index.tpl voir la variable en l'occurence {$TITTLE}
puis fait une simple recherche sur 'TITTLE'
premier résultat index.php l115

Code:

$template_title = $page['title'];
if (count($page['items']) > 0)
{
  $template_title.= ' ['.count($page['items']).']';
}
$template->assign('TITLE', $template_title);

pour utiliser tt ça, prendre l'event  'loc_end_index' :
add_event_handler('loc_end_index', 'my_funct');

Dernière modification par flop25 (2012-06-12 19:05:09)

Hors ligne

#6 2012-06-12 19:49:29

notph
Membre
2011-08-02
60

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Merci pour ta réponse,

Je ne trouve pas cette occurrence chez moi (peut être parceque je suis sur la 2.4 RC3? J'ai préféré utiliser directement celle-ci de manière à ne pas devoir tout refaire dès qu'elle sera officiellement disponible.)

Je ne suis qu'amateur en matière de programmation, n'ayant jamais utiliser ce type de code je ne sais pas trop comment m'en servir (add_event_handler('loc_end_index', 'my_funct'); )

De ce que j'ai compris du code précédent:

On a donc *TITLE qui correspond à $page['title'] auquel vient s'ajouter le nombre d'images entre crochets s'il est supérieur à 0.
Ce qui revient pour moi à cherche ce $page['title'] ;)
Toucher au code que tu m'a montré revient surtout à pouvoir cacher le nombre d'images. Or moi j'ai besoin d'avoir une segmentation du type:

[Accueil > Catégorie1 > Sous-Catégorie2 > ]  [Albums [Nb d'image si >0] ]
qui donnerait à l'aide de jQuery quelque chose comme
... > Album 1 [14]

Seulement il faut que j'arrive à attribuer une classe CSS à cette première partie pour pouvoir la manipuler.

Hors ligne

#7 2012-06-12 20:14:59

flop25
Équipe Piwigo
2006-07-06
6457

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Je ne trouve pas cette occurrence chez moi

change de logiciel alors ;) ou alors fait la gaffe à la casse ou aux espaces

JJe ne suis qu'amateur en matière de programmation, n'ayant jamais utiliser ce type de code je ne sais pas trop comment m'en servir (add_event_handler('loc_end_index', 'my_funct'); )

je ne suis pas programmeur non plus Il me suffit de lire ce que les autres ont fait ; je te conseille donc de lire la doc, mais surtout de lire le code d'autres extensions

Donc là tu as la variable $page['title'], il te suffit de la modifier. Tu la découpes selon le délimiteur $conf['level_separator'], tu comptes, te concatène en string les n-1 avec tes balises à toi et tu concatènes le dernier
et ne pas oublier global $page

Hors ligne

#8 2012-06-12 20:30:26

notph
Membre
2011-08-02
60

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Super merci :)

Je vais essayer de me débrouiller avec ça. J'ai compris le principe déjà c'est le plus important. ;)

Je ne trouve cependant toujours pas le code... J'ai bien $title en ligne 110 mais je n'ai pas "$template_title = $page['title'];.....", j'utilise Notepad++ et mes yeux mais impossible de tomber dessus. J'en viens à me poser la question si on parle bien de la même chose ;)

Hors ligne

#9 2012-06-12 20:34:29

flop25
Équipe Piwigo
2006-07-06
6457

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

http://piwigo.org/dev/browser/trunk/index.php#L115 perso je me base sur la trunk vu que ce sera la 2.4
d'ailleurs la ligne 110 ne sert à rien !

Dernière modification par flop25 (2012-06-12 20:35:36)

Hors ligne

#10 2012-06-12 20:42:01

notph
Membre
2011-08-02
60

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Hum ok, je viens de comprendre, je cherchais ça dans index.tpl et non dans index.php. Le logiciel semble donc bien marcher, le problème viendrai des yeux ou du cerveau ;) Tout s'explique donc.

Merci pour tout tes précieux conseils. Pour la découpe j'avais déjà fait ça à je ne sais quelle occasion donc ça devrait bien ce passer. Je passe le sujet en "Résolu"

Dernière modification par notph (2012-06-12 20:42:34)

Hors ligne

#11 2012-06-12 20:44:24

flop25
Équipe Piwigo
2006-07-06
6457

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

en cas de soucis n'hésite pas !

Hors ligne

#12 2012-06-12 22:08:08

notph
Membre
2011-08-02
60

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Super tout marche impec:

add_event_handler('loc_end_page_header', 'notph1' );

function notph1 ()
{
global $template, $page, $conf;

$template_title = $page['title'];
$bread_array = explode($conf['level_separator'], $template_title);
$bread_array_c = $bread_array;
$bread_count = count($bread_array);
unset($bread_array_c[$bread_count-1]);
$bread_previous_part = implode($conf['level_separator'], $bread_array_c);
$bread_previous = "<span>".$bread_previous_part."</span>";

if (count($page['items']) > 0)
{
  $bread_array[$bread_count-1].= ' ['.count($page['items']).']';
}


$template->assign('PREVIOUS_PAGES_TITLES', $bread_previous);
$template->assign('CURRENT_PAGE_TITLE', $bread_array[$bread_count-1]);
}

C'est peut être un peu barbare de temps en temps (j'optimiserai à l'occasion) mais ça marche.
Me reste à ajouter une classe css au deux groupes et rajouter la couche jQuery et tout sera bon :)

Dernière modification par notph (2012-06-12 22:23:46)

Hors ligne

#13 2012-06-12 22:11:56

flop25
Équipe Piwigo
2006-07-06
6457

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Thumbs up !

Hors ligne

#14 2012-06-12 22:17:30

notph
Membre
2011-08-02
60

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Merci :)

Petit modif au code pour ajouter les balises SPAN dans le post précédent.
Un dernier bout de jQuery et c'est réglé!

Grâce à tes conseils ça m'a aussi permis de mieux cerner le fonctionnement de Piwigo ce qui sera surement très utile par la suite.

Hors ligne

#15 2012-06-13 00:17:25

Gotcha
Equipe Piwigo
Pierrelatte (26)
2007-03-14
13324

Re: [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Auriez-vous un exemple de ce que donne votre code ? Genre une capture d'écran "Avant" et un autre "Après" ? Je pense que ça peut intéresser du monde ce genre de chose ;-)

Merci.


Ayez comme premier réflexe de consulter le wiki.
Ensuite, veuillez effectuer une recherche sur le forum avant de poser votre question.

LE FAIRE EST LE REVELATEUR DE L'ETRE

Hors ligne

  •  » Utilisation
  •  » [Résolu] Où se trouve la fonction qui génère le fil d'ariane?

Pied de page des forums

Propulsé par FluxBB

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