Sujet fermé
Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

Module Gallery: afficher le contenu dans une page spécifique [RESOLU]
#1

Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.4
#~ Url du site : www.shiatsulesmotsducorps.fr
#~ Hébergeur / Soft : planethoster
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.11.4
#~ Installed Modules:
#~ CMSMailer: 5.2.1
#~ CMSPrinting: 1.0.3
#~ FileManager: 1.4.3
#~ MenuManager: 1.8.4
#~ MicroTiny: 1.2.5
#~ ModuleManager: 1.5.5
#~ News: 2.12.10
#~ Search: 1.7.7
#~ ThemeManager: 1.1.7
#~ Gallery: 1.3
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template:
#~ output_compression:
#~ max_upload_size: 128000000
#~ url_rewriting: none
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale:
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.3.20
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ E_DEPRECATED: 0
#~ memory_limit: 256M
#~ max_execution_time: 30
#~ output_buffering: On
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 256M
#~ upload_max_filesize: 128M
#~ session_save_path: /var/lib/sessionsphp (1777)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ Server Information:
#~ Server Api: litespeed
#~ Server Db Type: MySQL (mysqli)
#~ Server Db Version: 5.5.28
#~ Server Db Grants: Trouvé un privilège "GRANT ALL" qui semble être adapté
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour à tous,
Nouveau post sur ce forum pour éviter de tourner en bourrique.
Je ne pense pas que le problème soit "compliqué" mais je n'arrive pas à le formaliser.

J'utilise le module Gallery.

J'ai besoin de créer une page "galeries photos" globale qui fera apparaître toutes les sous-galeries existantes sous forme de simple d'aperçu incluant:
- une vignette issue de l'une des images de la galerie
- le titre de la galerie
- la description de la galerie

Au clic sur la vignette, je souhaite pouvoir ouvrir une page type "photos" qui fera apparaître toutes les images de la dite galerie.

A l'heure actuelle, mon gabarit fonctionne esthétiquement pour la page globale, le clic m'ouvre bien une page spécifique "photos" mais le contenu affiché n'est jamais le bon....

De plus je n'ai pas toutes les sous-galeries existantes qui s'affichent mais uniquement une même galerie qui se répète.

Voici mon gabarit de galerie "essai" censé faire apparaître toutes les galeries existantes:

Code :
[== Indéfini ==]
<ul id="blog-small">

{foreach from=$images item=image}
{if $image->isdir}

<li>
<div class="blog-small-image">
<a href="{cms_selflink href="photos"}" title="{$gallerytitle}"><span class="imghover_small_blog"></span>
<img src="{$image->thumb}" alt="{$image->title}"/></a>
</div>

<div class="blog-small-text">

<h1><a href="{cms_selflink href="photos"}" title="{$image->title}">{$gallerytitle}</a></h1>

<p class="blog-small-excerpt">{$gallerycomment}</p>

</div>

</li>
{/if}
{/foreach}

</ul>

Sur ma page globale j'ai inséré le tag suivant:

{Gallery template="essai"}


J'ai beau relire l'aide du module, je dois louper un truc...


Je cherche du côté de {$galleryid} mais je n'arrive pas à formaliser mon code, y'a t'il un moyen de passer cette variable en paramètre dans le lien?

Du coup quelle balise insérer dans la page de destination pour que seul le contenu de la galerie cliquée apparaisse?

J'espère que j'ai pas été trop abscon avec mes explications...

En gros je voudrais à l'aide du module gallery reproduire le fonctionnement de mon template html situé ici:

http://whitedesign.fr/clients/motsducorps/gallerie.html

En vous remerciant par avance d'un éventuel coup de pouce pour formaliser ce système!

Bonne soirée à tous.
#2

Bon toujours pas de solution mais je progresse un peu...
En fait en consultant le wiki ce matin, je me suis rendu compte qu'il existait un paramètre que j'avais complété passé sous silence "targetpage" qui à la manière du module news permet effectivement d'afficher le contenu de la dite galerie dans une page et donc un template différent, j'ai donc modifié ma balise d'appel dans ma page générale et enlevé le lien vers la page photo que j'avais intégré directement au template (là je sais pas comment j'ai pu passer à côté... :/)

{Gallery template="essai" dir="essai" targetpage="photos" number=1}

par contre pas moyen de comprendre comment afficher le contenu de la galerie choisie, à chaque fois la page cible m'affiche le contenu de ma galerie par défaut... :/.

Reste à trouver le moyen de lister de façon indépendante toutes les sous galeries de ma catégorie globale "essai" ( qui se nommera à terme "galeries photos") au lieu de de faire:

{Gallery template="essai" dir="essai/sous-galerie1" targetpage="photos" number=1}
{Gallery template="essai" dir="essai/sous-galerie2" targetpage="photos" number=1}
{Gallery template="essai" dir="essai/sous-galerie3" targetpage="photos" number=1}
etc....

Si jamais vous avez l'astuce merci d'avance Wink
#3

J'ai eu a faire ce genre de chose

http://foto.furie.be/index.php?page=portfolio

le code de la page est simplement {Gallery dir='Publique'}, le répertoire Publique contenant des sous galeries, ces sous galeries contenant des photos.

le répertoire Publique a été paramétré dans Gallery pour être associé par défaut au template "simples_gallery" dont voici le code. Ce gabarit est un gabarit simplifié qui liste les sous répertoires et c'est tout. A noter que j'ai cocher le "cacher le lien vers le parent" dans les options du répertoire Publique pour éviter le lien vers le parent

Code :
<div class="gallery">
{assign "cpt" "0"}
{foreach from=$images item=image}
    <div class="img">
    {if $image->isdir}
        {assign "cpt" "1"}{* Si au moins un répertoire *}
        <a href="{$image->file}" title="{$image->titlename}"><img src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a><br />
        {$image->titlename}
    {/if}
    </div>
{/foreach}
{if $cpt == 0}<p class='noItem'>Il n'y a pour l'instant aucune photo dans cette catégorie</p>{/if}
<div class="galleryclear">&nbsp;</div>
</div>

Mes sous-répertoires de premier niveau dans publiques sont également liés a ce template.
Les sous-répertoire de second niveau dans publiques, qui contiennent les photos n'ont pas de lien particulier vers un template, ils profitent donc du template par défaut qui lui fait de l'affichage de photo tout comme il faut.

J'ai également profité pour ajouter une propriété personnelle que j'utilise pour gérer un CSS différent par galerie. Ce n'est pas encore implémenté côté rendu par contre
#4

Merci bess pour ta réponse rapide et exhaustive!

Du coup si je comprends bien le contenu de tes répertoires de second niveau contenant les photos s'affichent via la balise {content} et non {gallery ...}?

Ce que je n'arrivais pas à formaliser c'est la variable "de lien" vers la page dans laquelle afficher le contenu.
Certes dans la balise de base on peut spécifier une targetpage pour afficher le contenu dans une page différente, mais je n'arrivais pas à exprimer ce lien dans mon gabarit de liste.
Avec le module news un coup de {morelink} et c'était réglé là je pateaugeais complètement...

merci je teste ça de suite et ne manquerai pas de tenir au jus.

A+ bess
#5

yes impec ça marche!

Du coup au lieu de jouer avec les notions {$gallerytitle} ou {gallerycomment} tu places {$image->title} etc.... pour récupérer le titre et la description de la galerie!

Avec l'histoire de la couverture d'album tu choisis la vignette à afficher dans ton gabarit de liste!

Je n'y aurai jamais pensé...

Royal, une nuit blanche de moins en perspective!

A+ Bess et merci encore, topic closed!
#6

Smile ravis d'avoir pu t'aider
Sujet fermé


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)