<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>galerie — Forum de PluXml</title>
        <link>https://forum.pluxml.org/index.php?p=/</link>
        <pubDate>Mon, 18 May 2026 13:06:38 +0000</pubDate>
        <language>fr</language>
            <description>galerie — Forum de PluXml</description>
    <atom:link href="https://forum.pluxml.org/index.php?p=/discussions/tagged/galerie/feed.rss" rel="self" type="application/rss+xml"/>
    <item>
        <title>[résolu] ArtGalerie : ordre d'affichage</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/7462/resolu-artgalerie-ordre-daffichage</link>
        <pubDate>Sun, 14 May 2023 10:36:07 +0000</pubDate>
        <category>Plugins</category>
        <dc:creator>Tomek</dc:creator>
        <guid isPermaLink="false">7462@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Pour un projet particulier je cherche à afficher les images dans l'ordre inverse, l'ordre par défaut étant alphanumérique. Comment pourrais-je faire ? Les choix d'ordre d'affichage dans la config du plugin semblent inopérants.<br />
Merci d'avance pour vos pistes.</p>
]]>
        </description>
    </item>
    <item>
        <title>[V4-Statiques] albums photos avec légendes textes</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/1153/v4-statiques-albums-photos-avec-legendes-textes</link>
        <pubDate>Mon, 06 Apr 2009 23:00:36 +0000</pubDate>
        <category>Modifications</category>
        <dc:creator>gcyrillus-nomade</dc:creator>
        <guid isPermaLink="false">1153@/index.php?p=/discussions</guid>
        <description><![CDATA[Bonjour,<br />
<br />
je suis en train de développé un petit album photo (en reprenant en partie un truc que j'avais fait pour la V3) .<br />
<br />
Toujours en manque de temps , je dépose ici une premiere version , administrable après que vous soyez logué dans l'administration .<br />
Caractéristiques :<br />
Création ou suppressions d'un ou plusieurs albums.<br />
upload et suppresions d'images<br />
descriptif/legende de l'image , html possible.<br />
test existence du repertoire Album , si non le crée avec un premier album vide .<br />
<br />
En regardant d'un peu plus prés le code , vous verrez qu'il vous est possible assez facilement de modifier le template d'affichage de l'image , ou des liens vers les Albums (template gerer par un switch ...)
<pre><code>&lt;?php
/**
 * page statique de gestion d'albums photos
 *
 * @package PLX =&gt; page statique : fonctions : création , suppession d'album d'images
 * @author	Gcyrillus , gestion d'uploads et des noms de repertoires/fichiers sur  la base de Pluxml de florent monthel
 **/

// Creation des repertoires de travail si absent 
 			$old= umask();
			umask(0); 			
			if (@mkdir('data/images/Album/',0755)) {
					mkdir('data/images/Album/Album-1',0755);
					}
			umask($old);
// fin test existence repertoire Album 
	include_once(PLX_CORE.'lib/class.plx.admin.php');
	
// reconstruction de l'url d'entrée (pour retour liste cat et formulaire
$geturl = explode(&quot;?&quot;, $_SERVER['REQUEST_URI']);
$redourl='';
for($i=1;$i &lt; count($geturl);$i++) {
$redourl .=$geturl[$i];
        }
$topurl = explode(&quot;&amp;&quot;, $redourl);	
$finalurl = $topurl[0];	

// reconstruction url pour album
$albLink=explode(&quot;&amp;&quot;, $_SERVER['REQUEST_URI']);
$albums=$alblink[0];

// admin inactif par defaut 

										


if (!empty($_POST)) {
	plxUtils::unSlash($_POST);
}
if (!empty($_GET)) {
	plxUtils::unSlash($_GET);
}	

// test si logger en administrateur 
# On démarre la session
session_start();

# Creation de l'objet principal et premier traitement
$plxAdmin = &amp; new plxAdmin(PLX_CONF);
$pwd = $plxAdmin-&gt;getPasswd(PLX_ROOT.$plxAdmin-&gt;aConf['passwords']);

# Test sur l'identification
if (@!$auth_page AND (empty($_SESSION['admin']) OR empty($pwd[ $_SESSION['author'] ]) OR $pwd[ $_SESSION['author'] ] !== $_SESSION['pass'])) {$mode_admin='InActif';}
else {
$mode_admin='Actif';
// form du choix d'edition 
echo '&lt;div id=&quot;admin&quot;&gt;
	&lt;h1&gt;MODE ADMINISTRATEUR&lt;/h1&gt;
	&lt;p&gt;&lt;i&gt;(supression d\'album vide uniquement possible.)&lt;/i&gt;&lt;/p&gt;

';
////////////////////////////////////


# Variables pour le redimensionnement
$width = 200;
$height = 100;
$quality = 80;
if (isset($_GET['galerie'])) {
$album= preg_replace('/[\.\%\&amp;\&quot;\s\'\:\/\[\],_|#*$£=`\+]+/',' ',$_GET['galerie']);
}
# Récupération des images du dossier
$dirImg = 'data/images/Album/'.$album.'/';

$plxImg = &amp; new plxGlob($dirImg);

$aImg = $plxImg-&gt;query('/(.+).(gif|jpg|jpeg|png|swf|swc|psd|tiff|bmp|iff|jp2|jpx|jb2|jpc|xbm|wbmp)$/i');
# Suppression d'une image
if(isset($_GET['del']) AND !empty($_GET['hash']) AND $_GET['hash'] == $_SESSION['hash'] AND isset($aImg[ $_GET['del'] ]) AND file_exists($dirImg.$aImg[ $_GET['del'] ])) {
	# On supprime l'image et sa miniature
	if(!@unlink($dirImg.$aImg[ $_GET['del'] ])) # Erreur de suppression
		$msg = 'Impossible de supprimer l\'image (problème d\'écriture dans le dossier '.$dirImg.')';
	else # Ok
		$msg = 'Image supprimée à '.date('H:m:s');
	@unlink($dirImg.$aImg[ $_GET['del'] ].'.tb');
		@unlink($dirImg.$aImg[ $_GET['del'] ].'.txt');
		if(!isset($_GET['oki'])) {
	header('Location:'.$_SERVER['REQUEST_URI'].'&amp;msg='.urlencode($msg).'&amp;oki=duck');
	exit;
}
}

#MISE AJOUR D'UNE DESCRIPTION


if(isset($_GET['txt']))
			{
			$id=$_GET['txt'];
			$fichier_legend=$dirImg.$id.'.txt';
			$poster=explode('.',$id);
			$postlegend ='desc'.$poster[0];
			$f_legende=stripslashes($_POST[$postlegend]);
				$flegende=fopen(&quot;$fichier_legend&quot;,&quot;w+&quot;);
				fputs($flegende,$f_legende); 
				fclose($flegende);
				$msg .= '&lt;br /&gt;Descriptif mis a jour';
		if(!isset($_GET['oki'])) {
	header('Location:'.$_SERVER['REQUEST_URI'].'&amp;msg='.urlencode($msg).'&amp;oki=duck');
	exit;
				}
				}

				
# Envoi d'une image
if(!empty($_FILES) AND !empty($_FILES['img']['name'])) {
	# On teste l'existence de l'image et on formate le nom du fichier
	$i = 0;
	$upFile = $dirImg.plxUtils::title2filename(plxUtils::unSlash(basename($_FILES['img']['name'])));
	while(file_exists($upFile)) {
		$upFile = $dirImg.$i.plxUtils::title2filename(plxUtils::unSlash(basename($_FILES['img']['name'])));
		$i++;
	}
	if(getimagesize($_FILES['img']['tmp_name'])) { # C'est une image
		if(!@move_uploaded_file($_FILES['img']['tmp_name'],$upFile)) { # Erreur de copie
			$msg = 'Impossible d\'envoyer l\'image (problème d\'écriture dans le dossier '.$dirImg.')';
		} else { # Ok
			@plxUtils::makeThumb($upFile, $upFile.'.tb',$width,$height,$quality);
			$msg = 'Image envoyée à '.date('H:m:s');
						if(!empty($_POST['descriptif'])){
							$fichier_legend =$upFile.&quot;.txt&quot;;
							$f_legende=fopen(&quot;$fichier_legend&quot;,&quot;w+&quot;);
							fputs($f_legende,stripslashes($_POST['descriptif'])); 
							fclose($f_legende);
							$msg .= ' et descriptif enregistré';
						}
		}
	} else { # Ce n'est pas une image
		$msg = 'Le fichier n\'est pas une image';
	}
		header('Location:'.$_SERVER['REQUEST_URI'].'&amp;msg='.urlencode($msg));
	exit;

}

/////////////////////////////////
?&gt;
&lt;?php
if (!$album =='') { ?&gt;
&lt;h2&gt;Uploader et gérer les images pour : &lt;?php echo $album ; ?&gt;&lt;/h2&gt;
	&lt;p&gt;&lt;?php (!empty($_GET['msg']))?plxUtils::showMsg(plxUtils::unSlash(urldecode(trim($_GET['msg'])))):''; ?&gt;&lt;/p&gt;
	&lt;?php if(!empty($_GET['img']) AND file_exists($dirImg.plxUtils::unSlash(rawurldecode($_GET['img'])))) { # Image particulière ?&gt;

		&lt;img src=&quot;&lt;?php echo $dirImg.plxUtils::unSlash(rawurldecode($_GET['img'])); ?&gt;&quot; alt=&quot;&quot; /&gt;
	&lt;?php } else { # Galerie ?&gt;
		&lt;form enctype=&quot;multipart/form-data&quot; action=&quot;&quot; method=&quot;post&quot;&gt;
			&lt;fieldset class=&quot;withlabel&quot;&gt;
				&lt;legend&gt;Upload d'images&lt;/legend&gt;
				&lt;p&gt;&lt;input name=&quot;img&quot; type=&quot;file&quot; /&gt;&lt;/p&gt;
				&lt;p&gt;&lt;label for=&quot;descriptif&quot;&gt;Légende de l'image&lt;/label&gt;
				&lt;textarea name=&quot;descriptif&quot; id=&quot;descriptif&quot; /&gt;Descrition de l'image ...&lt;/textarea&gt;&lt;/p&gt;
				&lt;input type=&quot;submit&quot; value=&quot;envoyer&quot; /&gt;&lt;/p&gt;
			&lt;/fieldset&gt;
		&lt;/form&gt;
		&lt;h2&gt;Album editable : &lt;big&gt;&lt;?php echo $album; ?&gt;&lt;/big&gt;&lt;/h2&gt;
		&lt;?php
			if (!$aImg) { # Aucune image
				echo 'Aucune image';
			} else { # On affiche les images
				$nb = count($aImg);
				for($i=0; $i &lt; $nb; $i++) {
					echo '&lt;div class=&quot;album&quot;&gt;&lt;div class=&quot;tampon&quot;&gt;&lt;p class=&quot;thumb&quot;&gt;';
					$name = str_replace($dirImg, '',$aImg[$i]);
					if(file_exists($dirImg.$aImg[$i].'.tb')) # On a une miniature
						echo '&lt;img src=&quot;'.$dirImg.$aImg[$i].'.tb'.'&quot; alt=&quot;'.$name.'&quot;/&gt;&lt;br /&gt;';
					else # Pas de miniatures
						echo '&lt;span&gt;'.$name.'&lt;/span&gt;&lt;br /&gt;';
					# On affiche les différents liens
					echo '&lt;/p&gt;';
					echo '&lt;p class=&quot;thumb_link&quot;&gt;';
					echo '&lt;a href=&quot;'.$_SERVER['REQUEST_URI'].'&amp;img='.rawurlencode($name).'&quot;&gt;&lt;img src=&quot;core/admin/img/eye.png&quot; alt=&quot;Voir&quot; title=&quot;Voir l\'image&quot; /&gt;&lt;/a&gt; ';
					
					
					echo '&lt;a href=&quot;'.$_SERVER['REQUEST_URI'].'&amp;del='.$i.'&amp;hash='.$_SESSION['hash'].'&quot; title=&quot;Supprimer l\'image&quot; onclick=&quot;Check=confirm(\'Supprimer cette image ?\');if(Check==false) return false;&quot;&gt;&lt;img src=&quot;core/admin/img/delete.png&quot; alt=&quot;Supprimer&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
					&lt;form method=&quot;post&quot; action=&quot;'.$_SERVER['REQUEST_URI'].'&amp;txt='.$name.'&quot;&gt;&lt;p&gt;descriptif&lt;/p&gt;';
					$lequel=explode('.',$name);
					$leg=$lequel[0];
					echo '&lt;p&gt;&lt;textarea id=&quot;desc'.$leg.'&quot; name=&quot;desc'.$leg.'&quot;&gt;';
					@include($dirImg.$aImg[$i].'.txt');
					echo '&lt;/textarea&gt;&lt;/p&gt;
					&lt;p&gt;&lt;input type=&quot;submit&quot; value=&quot;MAJ&quot;/&gt;&lt;/p&gt;
					&lt;/form&gt;
					'
					;
					echo '&lt;/div&gt;&lt;/div&gt;'.&quot;\n&quot;;
				}
			}
		?&gt;
	&lt;?php } # Fin else galerie 
	
} # FIN si !$album 
else {

///////////////////////////////////////////
# Suppression d'un repertoire
$dirImg='data/images/Album/';
if(isset($_GET['delrep']) AND !empty($_GET['hash']) AND $_GET['hash'] == $_SESSION['hash'] ) {
	# On supprime le repertoire
	if(!@rmdir($dirImg.trim($_GET['delrep']) )) # Erreur de suppression
		$msg = 'Impossible de supprimer cet Album (problème d\'écriture dans le dossier '.$dirImg.$_GET['delrep'].' , ou cet album n\'est pas vide)';
	else # Ok
		$msg = 'Album supprimée à '.date('H:m:s');
		if(!isset($_GET['oki'])) {
	header('Location:'.$_SERVER['REQUEST_URI'].'&amp;msg='.urlencode($msg).'&amp;oki=duck');
	exit;
}
}
///////////////////////////////////////////
echo '&lt;h2&gt; Crée un  Album &lt;/h2&gt;
	&lt;p&gt;';
	(!empty($_GET['msg']))?plxUtils::showMsg(plxUtils::unSlash(urldecode(trim($_GET['msg'])))):''; echo '&lt;/p&gt;';
echo '&lt;form method=&quot;post&quot; action=&quot;&quot; &gt;
&lt;p&gt;&lt;label for=&quot;new_album&quot;&gt;Nom de l\'album a créer&lt;/label&gt;
&lt;input type=&quot;text&quot; id=&quot;new_album&quot; name=&quot;new_album&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;input type=&quot;submit&quot; value=&quot;créer&quot; /&gt;&lt;/p&gt;
&lt;/form&gt;
';
if (isset($_POST['new_album'])) {
			$dirDest=trim(plxUtils::title2filename(plxUtils::unSlash($_POST['new_album'])));
 			$old= umask();
			umask(0); 			
			mkdir('data/images/Album/'.$dirDest,0755);
			umask($old);
			$msg = 'Album  : '.$dirDest.' créer .';
		header('Location:'.$_SERVER['REQUEST_URI'].'&amp;msg='.urlencode($msg));
	exit;
			}
}
/////////////////////////////////
echo '&lt;/div&gt;
';
}

// fin test log admin

						// class  dir recursive .
class dirRecursif{
var $dir;
var $browsed;


function 	dirRecursif($dir) {

										$this-&gt;listee($dir);
									}
									
function 	listee($dir ) 	{
										if (is_dir($dir))
										{
										
										$hdir = opendir($dir);
										
										$album=0;
										  while ( $item = readdir($hdir) ) 
										  {
										  
										  	if($item==&quot;.&quot; | $item==&quot;..&quot;) continue;
											
											if ( !is_dir( $dir.'/'.$item ) ) 
													{
													#tri sur extension 
													$ext = array_reverse(explode(&quot;.&quot;, $item));
													$extfile= $ext[0];
														if (($extfile =='jpg' || $extfile =='JPG' || $extfile=='gif' || $extfile=='GIF' || $extfile=='png' || $extfile=='PNG'  ))
														{	
														$album++;
														$this-&gt;album_num=$album;
														
															// Répertoire =&gt; récursion
														  $this-&gt;browsed['file'][][$dir] = $item ;
														  $this-&gt;browsed['file'][][$dir]['num']=$album;
															// echo   '&lt;p&gt;'.$dir.'/'.$item.'&lt;/p&gt;';
														   $this-&gt;listee( $dir.'/'.$item );
														  
														}
													}
											else 	{
											$this-&gt;browsed['dir'][][$dir] = $dir.$item ;
											//echo   '&lt;p&gt;'.$dir.'/'.$item.'&lt;/p&gt;';
											$this-&gt;listee( $dir.$item );
													} 
											}
												closedir( $hdir );
										}
										return $this-&gt;browsed;
										}
										
function 	triliste($dir,$tri='file') {

					$this-&gt;browsed=$this-&gt;browsed[$tri];
					return $this-&gt;browsed;
			} //fin triliste()	
									
function  	liste_Tpl($dir,$tri='file',$tpl='link',$item) {
	#variable raccourcies pour relecture aisée
	$target=$this-&gt;browsed[$item][key($this-&gt;browsed[$item])];
//echo '&lt;pre&gt;';
//var_dump($this-&gt;browsed[$item+1][key($this-&gt;browsed[$item])]['num']);
//echo '&lt;/pre&gt;';
		if ($tri=='file') {
					$way=key($this-&gt;browsed[$item]).'/'; 
					$alb_num=$this-&gt;browsed[$item+1][key($this-&gt;browsed[$item])]['num'];
					$em='&lt;em style=&quot;display:block;font-size:.5em;&quot;&gt;'.$way.'&lt;/em&gt;';
				#filtre sur extension de fichier
					$filext = array_reverse(explode(&quot;.&quot;, $target));
					$extfile= $filext[0];
						if ($extfile =='jpg' || $extfile =='gif' ||  $extfile =='png')
							{
							$tpl=$tpl;	
							}
						else 
							{
							$tpl='skip';
							}
					
				}
		else 	{
					$way='';
					$em='';
				}

	#switch , choix du template d'affichage des résultats
	switch($tpl)
	            {
					case 'skip':
					break;
					
					case 'album':
					$legende=$way.$target.'.txt';
					echo '
					&lt;div class=&quot;album&quot;&gt;&lt;div class=&quot;tampon&quot;&gt;
						&lt;h2&gt;
							&lt;a href=&quot;'.$way.$target.'&quot; title=&quot;acceder à :'.$way.$target.'&quot;  &gt;
							&lt;img src=&quot;'.$way.$target.'.tb&quot; alt=&quot;illustration N° '.$alb_num.'&quot; longdesc=&quot;'.$_SERVER['REQUEST_URI'].'#ill'.$alb_num.'&quot; style=&quot;background:url('.$way.$target.');&quot;  rel=&quot;'.$way.$target.'&quot; /&gt;&lt;/a&gt;&lt;/h2&gt;
						&lt;div id=&quot;ill'.$alb_num.'&quot; &gt;';
						
						if(@!include($legende)) {echo 'images sans legende';}
						echo '&lt;/div&gt;
					&lt;/div&gt;&lt;/div&gt;';
					break;
	                case 'link' :
	                echo '&lt;p&gt;&lt;a href=&quot;'.$way.$target.'&quot; title=&quot;acceder à :'.$way.$target.'&quot;  &gt;'.$target.'&lt;/a&gt;&lt;/p&gt;';
	                break;
	                case 'linkdir' :
					$albLink=explode(&quot;&amp;&quot;, $_SERVER['REQUEST_URI']);
					$al=$albLink[0];
					
					$gal = array_reverse(explode(&quot;/&quot;, $target));
	                echo '&lt;p class=&quot;link_album&quot;&gt;&lt;span class=&quot;tampon&quot;&gt;&lt;a href=&quot;'.$al.'&amp;galerie='.$gal[0].'&quot; title=&quot;acceder à l\'Album  :'.$gal[0].'&quot;  &gt;'.$gal[0].'&lt;/a&gt;';
					if ($this-&gt;mode_admin =='Actif') {echo' &lt;a class=&quot;deleterep&quot; href=&quot;'.$al.'&amp;delrep='.$gal[0].'&amp;hash='.$_SESSION['hash'].'&quot; title=&quot;Supprimer l\'Album : '.$gal[0].'&quot; onclick=&quot;Check=confirm(\'Supprimer cet Album ?\');if(Check==false) return false;&quot;&gt;&lt;img src=&quot;core/admin/img/delete.png&quot; alt=&quot;Supprimer&quot; /&gt;&lt;/a&gt;';}
					echo '&lt;/span&gt;&lt;/p&gt;';
	                break;

	                default :
	                echo '&lt;p&gt;'.$way.$target.'&lt;/p&gt;';
	                break;
	            }// fin switch

}	// fin liste_Tpl()

function 	showliste($dir,$tri='file',$tpl='link',$mode_admin) 	{
	$this-&gt;mode_admin=$mode_admin;
	$this-&gt;triliste($dir,$tri);

	$ct=count($this-&gt;browsed);
	if ( ($ct&gt;0) || (is_array($this-&gt;browsed))) {
		for ($i=0;$i&lt;$ct;$i++)
			{
					$this-&gt;liste_Tpl($dir,$tri,$tpl,$i);
			}
		}
	else {
		echo '&lt;p&gt;Désolé, Aucun fichiers ou répertoire trouvé .&lt;/p&gt;';
		}
		
}	// fin showliste();								
										
#########										
}// fin class 


if (isset($_GET['galerie'])) {

$album= preg_replace('/[\.\%\&amp;\&quot;\s\'\:\/\[\],_|#*$£=`\+]+/',' ',$_GET['galerie']);
$browse= new dirRecursif('data/images/Album/'.$album);
if ($mode_admin !='Actif') {
echo '&lt;h3&gt;Album :'.$album.' &lt;/h3&gt;
&lt;p&gt;'.$browse-&gt;album_num .' Image(s) dans cet Album .&lt;/p&gt;
&lt;div class=&quot;post&quot;&gt;';


$browse-&gt;showliste('data/images/Album/'.$album,'file','album',$mode_admin);
echo '&lt;/div&gt;';
}
}
?&gt;
&lt;h3&gt;Les Albums photos disponibles .&lt;/h3&gt;
&lt;div class=&quot;post&quot;&gt;&lt;?php
$browse2= new dirRecursif('data/images/Album/');
$browse2-&gt;showliste('data/images/Album/','dir','linkdir',$mode_admin);

?&gt;
&lt;/div&gt;
</code></pre>
Cette page statique est devellobicolé  sous une des première version de pluxml V4 que j'utilise en multiblog (<a href="http://gcyrillux.gcyrillus.com/?static3/album-photos" rel="nofollow">http://gcyrillux.gcyrillus.com/?static3/album-photos</a>) .<br />
<br />
Peut-être que certaines fonctions de la dernière version de pluxml ont changé de nom (capital en minuscule ou vice versa dans la class plxutils )<br />
<br />
<br />
Si vous voulez tester ou participer a l'amélioration de cette page statique , ne vous gênez pas <img src="https://forum.pluxml.org/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /><br />
<br />
Bon Web <img src="https://forum.pluxml.org/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /><br />
<br />
GC]]>
        </description>
    </item>
    <item>
        <title>Galerie de photos similaire à...</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/7167/galerie-de-photos-similaire-a</link>
        <pubDate>Sun, 24 Apr 2022 02:42:31 +0000</pubDate>
        <category>Plugins</category>
        <dc:creator>MAPC2012</dc:creator>
        <guid isPermaLink="false">7167@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Salut là-bas! Est-il possible d'implémenter un plugin dans PluXml, et mieux une fonction intégrée dans cms qui fonctionne bien dans le système <a href="https://batflat.org" rel="nofollow">https://batflat.org</a> C'est une galerie de photos qui fonctionne parfaitement sans bases de données... Et l'utiliser avec des shortcodes pour les galeries et le curseur...</p>
]]>
        </description>
    </item>
    <item>
        <title>Galerie thèmes</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/6719/galerie-themes</link>
        <pubDate>Sat, 25 Apr 2020 23:30:35 +0000</pubDate>
        <category>Discussions générales</category>
        <dc:creator>bazooka07</dc:creator>
        <guid isPermaLink="false">6719@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Sur Github, il y a un <a rel="nofollow" href="https://github.com/pluxml/PluXml-Themes">dépôt qui archive 172 thèmes</a> pour PluXml.<br />
Malheureusement, il faut parcourir 172 dossiers pour savoir à quoi tout cela ressemble.</p>

<p>J'ai donc forké ce dépôt pour créer semi-automatiquement une galerie de présentation avec un aperçu de tous les thèmes. Il y a juste un petit script php à lancer à la main pour générer un fichier de données au format json.</p>

<p>Et bien sûr, cela est visible sur Github :<br />
<a rel="nofollow" href="https://kazimentou.github.io/PluXml-Themes/">Voir la galerie</a><br />
Faites votre choix !</p>
]]>
        </description>
    </item>
    <item>
        <title>Galerie en 5.8 ?</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/6658/galerie-en-5-8</link>
        <pubDate>Mon, 02 Mar 2020 23:11:13 +0000</pubDate>
        <category>Discussions générales</category>
        <dc:creator>Tomek</dc:creator>
        <guid isPermaLink="false">6658@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Bonjour, </p><p>Je suis en train de tester la V5.8 et je n&#39;arrive &agrave; faire fonctionner aucun des plugins de galerie, que ce soit ArtGalerie, ou KZGallery&hellip; y a-t-il un plugin de galerie compatible ? Ou une autre possibilit&eacute; pour afficher le contenu d&#39;un r&eacute;pertoire d&#39;images sous forme de galerie dans une page / article ?</p>]]>
        </description>
    </item>
   </channel>
</rss>
