amande a écrit:
disons alors que j'ai compris (je pense) le code indiqué mais que je ne sais pas comment intégrer la/les pages sur lesquelles l'appliquer.
je sais (un peu et avec beaucoup de lenteur) lire le php mais pas l'écrire :-D
La moitié du travail est effectuée, alors :-D ! (Pour info, moi je suis à l'étape juste après : écrire le php, un peu et avec beaucoup de lenteur ;-) !)
Pour commencer à écrire le PHP, c'est tout simple : CTRL-C, puis CTRL-V (sous Winmachin)...
Non mais bon, si tu comprends ce qui est demandé en PHP à la machine, ce n'est pas tellement plus compliqué que de l'écrire.
Ce qui importe c'est :
_ comprendre comment est organisé la construction des blocs menus (quand on regarde dans index.tpl , on note que le menu est affiché par la balise Smarty {$MENUBAR}. En cherchant où la variable Smarty MENUBAR est définie, on tombe sur la définition de la variable PHP $menu dans include/menubar.inc.php. Bon, c'est pas gagné, car $menu est un objet. (En soi ce n'est pas un problème, mais ça veut dire qu'il faut assimiler toute la définition de classe include/block.class.php pour comprendre vraiment tout ce qu'il fait. Mais ce n'est pas indispensable, les noms des méthodes (les procédures d'un objet) devraient normalement être suffisamment explicites pour ce qui nous intéresse.) N'empêche que donc c'est $menu qui dit quel bloc menu doit être affiché ou pas. Donc je pense que c'est là qu'il faut taper.)
_ comprendre comment taper : ben dans le PHP de Piwigo, c'est avec les trigger. Il suffit de voir où y'en a dans include/menubar.inc.php . C'est pas compliqué : y'en a pas -_- ... Bon, c'est carrément dans la définition de la classe (include/block.class.php) :-/ ... ce qui signifie a priori qu'il faut utiliser l'argument passé dans l'appel du trigger pour vérifier qu'on va bien taper dans le bon objet |-( ... là, j'avoue, ça se complique...
_ enfin bref ; ensuite, il faut trouver la page depuis laquelle on doit envisager de demander à modifier un élément de $menu (je sais, c'est la première question...). Mais ça a priori c'est pas trop compliqué : quand tu cliques sur un lien, ce lien demande au serveur d'exécuter un fichier PHP ; il suffit d'ouvrir ce fichier et de lire ce qu'il exécute...
Bon, je sais pas trop si j'ai fait avancer le shmilblick, là :-/ ...
Hors ligne
j'ai rien compris :-D
je relirai tout ça demain plein de fois, ça s'éclaircira peut être...
Hors ligne
amande a écrit:
j'ai rien compris :-D
Ah bon ???
C'est bizarre, je ne vois rien qui soit inintelligible o_O .......
Bon, d'accord... c'est pas très digeste... voire carrément abscons...
amande a écrit:
je relirai tout ça demain plein de fois, ça s'éclaircira peut être...
Essaye éventuellement dans un premier temps de regarder dans les fichiers cités et de voir les variables dont je parle.
Mais bon, même pour moi si je m'y mettais, ce serait pas gagné non plus :-/ ...
Hors ligne
Je te propose de traiter les 2 cas séparément
amande a écrit:
merci pour le lien mais je n'ai pas compris grand chose...
en gros ce que je voudrais faire (cf pièce jointe) :
- cacher l'encadré "tags liés" sur toute les pages où il apparait sauf sur la page /tags/xxx
Pour ce cas la j'ai essayé de te répondre (d'autre également) mais avec un temps de réflexion, j'ai du mal à être sur de bien avoir compris ce que tu souhaites
Piwigo par défaut
-> pas de menu sur la page tag
-> pas de menu tag sur les menus lors de la navigation dans les catégorie
-> Ajout d'un menu tag lié quand il y a au moins un tag sélectionné ce qui donne des pages /tags/xxx
Donc en fait c'est sur quel page que tu souhaite faire disparaitre le menu tag lié ?
Car il n'apparais que si tu navigues par tag avec au moins un tag sélectionné
amande a écrit:
merci pour le lien mais je n'ai pas compris grand chose...
- cacher l'encadré "Billeterie" (créé avec AMM) sur toutes les pages sauf la page d'accueil
Quand on aura réglé les tags, on regardera cela a l'aide d'un plugin perso avec l'ajout d'un bloc menu à la condition d'être sur la page d'accueil, la je saisie mieux le problème
Hors ligne
ddtddt a écrit:
Je te propose de traiter les 2 cas séparément
amande a écrit:
merci pour le lien mais je n'ai pas compris grand chose...
en gros ce que je voudrais faire (cf pièce jointe) :
- cacher l'encadré "tags liés" sur toute les pages où il apparait sauf sur la page /tags/xxxPour ce cas la j'ai essayé de te répondre (d'autre également) mais avec un temps de réflexion, j'ai du mal à être sur de bien avoir compris ce que tu souhaites
Piwigo par défaut
-> pas de menu sur la page tag
-> pas de menu tag sur les menus lors de la navigation dans les catégorie
-> Ajout d'un menu tag lié quand il y a au moins un tag sélectionné ce qui donne des pages /tags/xxx
Donc en fait c'est sur quel page que tu souhaite faire disparaitre le menu tag lié ?
Car il n'apparais que si tu navigues par tag avec au moins un tag sélectionné
j'utilise le plugin Spread Menu pour avoir le menu sur toute les pages (sauf sur la page picture suite à une demande à VDigital), j'ai donc bien un menu sur la page tag, recent_pics, search etc.
actuellement, le menu tags liés apparait sur les pages tags/xxx (comportement normal) mais également sur category/xxx quand je sélectionne une catégorie à partir de la page d'accueil (comportement anormal d'après ce que tu m'indiques). cf ma capture précédente qui correspond à ce dernier cas.
c'est pour ce dernier cas que je voudrais supprimer le menu tags liés.
ddtddt a écrit:
amande a écrit:
merci pour le lien mais je n'ai pas compris grand chose...
- cacher l'encadré "Billeterie" (créé avec AMM) sur toutes les pages sauf la page d'accueilQuand on aura réglé les tags, on regardera cela a l'aide d'un plugin perso avec l'ajout d'un bloc menu à la condition d'être sur la page d'accueil, la je saisie mieux le problème
la solution ne devrait elle pas être la même mais associée à une autre page pour le menu tags liés ? (question de quelqu'un qui n'y connait pas grand chose...)
Hors ligne
amande a écrit:
ddtddt a écrit:
amande a écrit:
merci pour le lien mais je n'ai pas compris grand chose...
- cacher l'encadré "Billeterie" (créé avec AMM) sur toutes les pages sauf la page d'accueilQuand on aura réglé les tags, on regardera cela a l'aide d'un plugin perso avec l'ajout d'un bloc menu à la condition d'être sur la page d'accueil, la je saisie mieux le problème
la solution ne devrait elle pas être la même mais associée à une autre page pour le menu tags liés ? (question de quelqu'un qui n'y connait pas grand chose...)
non puisque la c'est un élément que tu rajoutes.
Dans l'autre cas il faut changer le fonctionnement de Piwigo ce n'est pas la même action
Hors ligne
amande a écrit:
ddtddt a écrit:
Je te propose de traiter les 2 cas séparément
amande a écrit:
merci pour le lien mais je n'ai pas compris grand chose...
en gros ce que je voudrais faire (cf pièce jointe) :
- cacher l'encadré "tags liés" sur toute les pages où il apparait sauf sur la page /tags/xxxPour ce cas la j'ai essayé de te répondre (d'autre également) mais avec un temps de réflexion, j'ai du mal à être sur de bien avoir compris ce que tu souhaites
Piwigo par défaut
-> pas de menu sur la page tag
-> pas de menu tag sur les menus lors de la navigation dans les catégorie
-> Ajout d'un menu tag lié quand il y a au moins un tag sélectionné ce qui donne des pages /tags/xxx
Donc en fait c'est sur quel page que tu souhaite faire disparaitre le menu tag lié ?
Car il n'apparais que si tu navigues par tag avec au moins un tag sélectionnéj'utilise le plugin Spread Menu pour avoir le menu sur toute les pages (sauf sur la page picture suite à une demande à VDigital), j'ai donc bien un menu sur la page tag, recent_pics, search etc.
actuellement, le menu tags liés apparait sur les pages tags/xxx (comportement normal) mais également sur category/xxx quand je sélectionne une catégorie à partir de la page d'accueil (comportement anormal d'après ce que tu m'indiques). cf ma capture précédente qui correspond à ce dernier cas.
c'est pour ce dernier cas que je voudrais supprimer le menu tags liés.
et si tu désactives le plugin Spread Menu, est ce que cela modifie le comportement du bloc tag lié ?
Hors ligne
le comportement est le même si Spread Menus est désactivé.
je viens de tester sur la galerie que j'ai faite pour un ami. spread Menu n'est pas installé et le comportement est le même : Tags Liés s'affiche sur les pages tags/xxx et category/xxx
Hors ligne
amande a écrit:
le comportement est le même si Spread Menus est désactivé.
je viens de tester sur la galerie que j'ai faite pour un ami. spread Menu n'est pas installé et le comportement est le même : Tags Liés s'affiche sur les pages tags/xxx et category/xxx
Donc je doit être long à la détente mais je pense commencer à comprendre ce que tu souhaites
si tu mets dans
Administration -> Plugins -> LocalFiles Editor -> onglet CSS
fichier -> local/css/rules.css
body#theCategoryPage dl#mbTags {display:none}
Est ce que cela correspond à ce que tu souhaites ?
Hors ligne
euh oui mais ça cache le bloc sur toute les pages, comme le plugin perso. or je voudrais que le bloc s'affiche uniquement sur la page tags/xxx
je vais continuer à chercher avec du CSS.
Hors ligne
Je te propose en plugin perso
function cache_taglie()
{
global $template, $page;
if ( !empty($page['category']['id']) )
{
$template->append('head_elements', '<style type="text/css">body#theCategoryPage dl#mbTags {display:none}</style>');
}
}
add_event_handler('loc_begin_page_header', 'cache_taglie' );
Hors ligne
merci ! ça fonctionne très bien sauf sur la page recent-pics.
Hors ligne
function cache_taglie()
{
global $template, $page;
if ($page['section'] == 'recent_pics' or !empty($page['category']['id']) )
{
$template->append('head_elements', '<style type="text/css">body#theCategoryPage dl#mbTags {display:none}</style>');
}
}
add_event_handler('loc_begin_page_header', 'cache_taglie' );
Merci p@t pour le rappelle du code pour détecter la page recent_pics
Hors ligne
ça fonctionne pour la page recent_pics
mais j'obtiens ce message d'erreur
Notice: Undefined index: section in /var/www/photos-concert.fr/plugins/PersonalPlugin/main.inc.php on line 30 Warning: Cannot modify header information - headers already sent by (output started at /var/www/photos-concert.fr/plugins/PersonalPlugin/main.inc.php:30) in /var/www/photos-concert.fr/include/page_header.php on line 98
sur la page /tags.php et sur la page d'admin.
la ligne 30 correspond à
[ if ($page['section'] == 'recent_pics' or !empty($page['category']['id']) )
car j'ai un autre plugin perso avant celui-là.
Hors ligne
function cache_taglie()
{
global $template, $page;
if (!empty($page['section']) and $page['section'] == 'recent_pics' or !empty($page['category']['id']))
{
$template->append('head_elements', '<style type="text/css">body#theCategoryPage dl#mbTags {display:none}</style>');
}
}
add_event_handler('loc_begin_page_header', 'cache_taglie' );
Hors ligne