13/11/2012, 00:56:28
La galerie n'est pas un contenu texte, je suppose que ça ne peut pas marcher avec le module search.
Crée plutôt une udt de recherche dans la bd.
Voici un exemple pour un site de booking d'artistes dans lequel je veux afficher toutes les affiches de concerts en cours sur la page d'accueil et tout cela dans un bloc qui fait défiler chaque images trouvées (le tout géré par CGSmartImage).
J'ai créé un champ personnalisé (bouton radio) avec comme valeur afficheIn (concert à venir) ou afficheOut (concert terminé).
Il te suffit de modifier la clause WHERE ".cms_db_prefix()."module_gallery_fieldvals.value = 'AfficheIn'";
par la valeur de la recherche. Si tu mets cette valeur entre %...%, ça devrait le faire.
Et comme tu cherches également sur le titre, tu dois ajouter un OR pour tester .cms_db_prefix()."module_gallery.title
Crée plutôt une udt de recherche dans la bd.
Voici un exemple pour un site de booking d'artistes dans lequel je veux afficher toutes les affiches de concerts en cours sur la page d'accueil et tout cela dans un bloc qui fait défiler chaque images trouvées (le tout géré par CGSmartImage).
J'ai créé un champ personnalisé (bouton radio) avec comme valeur afficheIn (concert à venir) ou afficheOut (concert terminé).
Code :
[== PHP ==]
$db = cmsms()->GetDb();
$smarty = cmsms()->GetSmarty();
$sql = "SELECT filepath,filename
FROM ".cms_db_prefix()."module_gallery
INNER JOIN ".cms_db_prefix()."module_gallery_fieldvals ON ".cms_db_prefix()."module_gallery.fileid = ".cms_db_prefix()."module_gallery_fieldvals.fileid
WHERE ".cms_db_prefix()."module_gallery_fieldvals.value = 'AfficheIn'";
$dbretour = $db->Execute($sql);
echo "<div class='affichesCycle'>";
while ($row = $dbretour->FetchRow())
{
$image="uploads/images/Gallery/".$row['filepath'].$row['filename'];
echo '<div class="affiches"><a href="agenda">';
$smarty_data = "{cms_module module='CGSmartImage' src='$image' alias='afficheAccueil'}";
echo $smarty->display('string:'.$smarty_data);
echo '</a></div>';
}
echo "</div>";
par la valeur de la recherche. Si tu mets cette valeur entre %...%, ça devrait le faire.
Et comme tu cherches également sur le titre, tu dois ajouter un OR pour tester .cms_db_prefix()."module_gallery.title