Page 1 of 1
					
				[Résolu] Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 9:42 am
				by berninoel42
				Bonjour,
Depuis quelques temps j'essaye de modifier l'affichage du contenu de cmsms.
J'aimerais que celui-ci  s'affiche grâce à un effet de slide grâce à scriptaculous (
http://wiki.github.com/madrobby/scripta ... -slidedown).
J'ai essayé de travailler sur le gabarit du menu, malheureusement rien ne se passe.
Si quelqu'un à une idée et peut m'aider ou tout simplement si quelqu'un à déjà réalisé quelque chose de similaire...
J'ai cherché dans différents post une aide mais j'ai pas trouvé grand chose....
Merci d'avance.
Version du CMS 1.8.1
Modules installés
CMSMailer
2.0
FileManager
1.0.2
MenuManager
1.6.5
ModuleManager
1.4
News
2.10.6
nuSOAP
1.0.1
Printing
1.1.0
Search
1.6.5
ThemeManager
1.1.1
TinyMCE
2.7.2
CGExtensions
1.19.1
FormBuilder
0.6.2
AjaxMadeSimple
0.1.6
 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 10:01 am
				by Jean le Chauve
				Merci de nous écrire ton code, sans cela nous ne pourrons pas savoir où se trouvent tes problèmes.
Les js se trouvent déjà dans le cms : lib/scriptaculous.
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 11:34 am
				by berninoel42
				J'ai mis ce code dans le gabarit pour appeler la librairie scriptaculous:
et après je pensais modifier le gabarit du menu (j'ai surligner l'évènement onclick):
{* CSS classes used in this template:
#menuwrapper - The id for the  that the menu is wrapped in. Sets the width, background etc. for the menu.
#primary-nav - The id for the 
.menuparent - The class for each  that has children.
.menuactive - The class for each  that is active or is a parent (on any level) of a child that is active. *}
{if $count > 0}
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string='' times=$node->depth-$node->prevdepth}
{elseif $node->depth prevdepth}
{repeat string=' ' times=$node->prevdepth-$node->depth}
{elseif $node->index > 0}
{/if}
{if $node->parent == true or ($node->current == true and $node->haschildren == true)}
current == true}
haschildren == true}
type == 'sectionheader' and $node->haschildren == true}
{$node->menutext} {elseif $node->type == 'separator'}
 {else}
type != 'sectionheader' and $node->type != 'separator'}
{if $node->target}target="{$node->target}" {/if}
href="{$node->url}">{$node->menutext}
{elseif $node->type == 'sectionheader'}
>{$node->menutext}
{/if}
{/foreach}
{repeat string=' ' times=$node->depth-1}
{/if}
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 11:49 am
				by Solutic
				Hello,
S'il y a un "return false;" dans le code du onclick, cela implique que le lien href ne sera jamais appelé.
Autrement, juste pour être sûr d'avoir bien compris, le clic sur ce lien devrait afficher le contenu ou un second niveau de navigation?
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 11:59 am
				by berninoel42
				Le lien doit appeler le contenu, mais je pense avoir mal placé ma ligne de code.
Je ne sais pas où est le lien qui renvoie sur le contenu.
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 1:18 pm
				by Jean le Chauve
				C'est effet est prévu pour que lorsque tu cliques sur une ancre dans la même page, une div apparaisse.
A première vue, ça ne peut pas fonctionner puisque tu changes de page en cliquant sur le lien.
Explique-nous ce que tu désires exactement. Le mieux serait également de nous donner un lien.
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 1:32 pm
				by berninoel42
				Si l'on prend le thème et le gabarit de base de cmsms 1.8.1, je ne voudrais recharger (actualiser) que la partie "main" de la page. Le passage d'une page à une autre se matérialise par cette animation "slide" dans cette partie "main". 
Je n'ai pas d'exemple sous la main pour cmsms...
J'espère que les infos que je vous donne sont à peu près claires..
merci en tout cas
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 2:07 pm
				by Solutic
				Dans ce cas, il faudrait passer par de l'ajax. Par contre, ne connaissant pas trop scriptaculous, je ne peux pas trop t'aider
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 2:15 pm
				by berninoel42
				Merci Solutic et en ajax tu peux m'indiquer des pistes ( sur quels fichiers travaillé? des liens? )? l'as tu déjà réalisé? Que se soit en ajax ou dans une autre technologie ce qui m'importe c'est le résultat.
			 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 3:57 pm
				by Jean le Chauve
				Je vais me permettre de te déconseiller d'utiliser cette technique pour afficher un nouveau contenu.
Il n'y a pas pire technique pour le SEO (search engine optimisation).
Google ne verra qu'une seule page et un seul contenu, celui par défaut.
Si tu insistes dans ce non sens, voici un lien qui contient la solution :
http://calguy1000.com/Blogs/9/60/jquery ... -news.html 
			
					
				Re: Effet d'affichage du contenu
				Posted: Tue Jul 27, 2010 4:10 pm
				by Solutic
				Perso, je ne l'ai jamais fait avec CMSMS, mais en gros, il faudrait créer les pages de contenu de façon "traditionnelle" avec CMSMS et leur assigner ton template...
Ensuite, lorsque tu cliques sur ton lien, tu fais charger en ajax le contenu du lien dans la zone que tu veux.
En jQuery, ça donnerait quelques chose comme ça:
Code: Select all
$('.menu a').click(function() {
 $.ajax({
  var url_a_charger=$(this).attr("href")+ "&showtemplate=false";
  url: url_a_charger,
  success: function(data) {
    $('#ID_DU_DIV_DANS_LEQUEL_TU_VEUX_CHARGER_LE_CONTENU').html(data);
  }
 });
});
(la synthaxe est peut être foireuse, j'ai pas essayé)
Evidemment, il faut faire les appels à jQuery dans ta page.
EDIT: Merde, grillé... Par contre, mon système permettra quand même à Google de référencer le site, vu que les liens dans le menu ne changent pas... En prime, cela permettra aux gens qui n'ont pas javascript de quand même surfer sur ton site.
En gros,  tu fais ton site sans te préoccuper de l'effet d'animation, et une fois le JS ajouté, tout "devrait" fonctionner correctement