We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 19425
    • 10 Posts
    Bonjour,

    Je suis nouveau sous MODx et malgré une lecture approfondie de la doc (même en anglais), j’ai du mal à réaliser quelques petites choses, et j’espère que vous pourrez m’aider.

    Mon problème: J’ai une page d’actualités sur mon site. Je voudrais que cette page liste les news que j’ajoute par un formulaire d’ajout de news (que je n’ai pas encore créé car je ne trouve pas de solutions pour le moment). Ensuite, j’ai aussi ma page d’accueil, qui possède un petit encadré où je liste les deux dernières news ajoutée par mon fameux formulaire, avec un petit lien après la news : en savoir +, qui m’amène directement sur la page Actualités citée plus haut au niveau de la news sélectionnée (par un id dans la page du genre www.monsite.com/actualites#1234).

    Si vous comprenez mon problème, et que vous avez un semblant de solution, surtout n’hésitez pas à venir à me secours... Surtout que je n’ai plus beaucoup de temps pour le faire ! :p

    Merci d’avance !
    Mika
      • 11975
      • 2,542 Posts
      Salut,

      pour l’ajout des news,il y a FDM (voir forum in development) pour le front end sinon utilise le manager

      pour lister les news utilise ditto:
      pour limiter l’affichage à deux news => &display=`2`
      pour en savoir plus à la suite de chaque item, place un lien dans ton tpl ditto <a href="[~[+id+]~]" >en savoir plus</a>

      :-)
        Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
        • 19425
        • 10 Posts
        Salut,

        Merci pour ta réponse rapide ! Je vais m’atteler à la tâche.

        Maintenant, j’ai quand même quelques doutes concernant l’ajout de news dans ce que tu me dis :
        Quote from: "heliotrope"
        pour l’ajout des news,il y a FDM (voir forum in development) pour le front end sinon utilise le manager

        Quand tu parles d’ajouter des news dans le manager, il s’agit, à la main, d’ajouter des news dans le manager, mais cela n’équivaut-il pas à ajouter une page ?
        Et si ce n’est pas le cas, comment faire pour ajouter une news en lui attribuant un id automatique pour qu’ensuite, le <a href="[~[+id+]~]" >en savoir plus</a> pointe dessus ?
          • 11975
          • 2,542 Posts
          Quand tu parles d’ajouter des news dans le manager, il s’agit, à la main, d’ajouter des news dans le manager, mais cela n’équivaut-il pas à ajouter une page ?

          C’est bien ça. Chaque news est un nouveau document.
          Il te sufit de paramétrer ditto pour parcourir le/les folders pour afficher automatiquement les denrières news sur la home.

          :-)



            Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
            • 19425
            • 10 Posts
            Merci beaucoup, je viens enfin d’arriver à quelque chose ! laugh

            THks a lot !
              • 19425
              • 10 Posts
              Re !

              J’utilise le même post que pour l’ajout de news, mais le sujet est un peu différent...
              Il s’agit de l’ajout d’un snippet dans mon site, mais je n’arrive pas à le faire et j’aurais besoin d’un peu d’aide !

              Mon script PHP permet l’envoi d’un mail avec la fonction mail() de php.

              Le pb, c’est que je ne sais pas comment l’ajouter à MODx... La démarche que j’ai suivi :

              Ressources -> Gestion des ressources -> Snippet -> Nouveau Snippet. Là-dedans, j’ai mis un nom de snippet ( [[email_contact]] ), et le code PHP de mon script. Seule chose, c’est que, dès que j’appelle mon snippet directement dans la template de ma page (juste avant mon formulaire d’envoi de mail), ça me dit "Error while inserting event log into database".

              Je ne comprends donc pas pourquoi. Si vous pouvez m’aider, je suis ouvert à toutes les réponses !

              Voici mon code PHP:
              <?php
              if(isset($_POST['message']))
              {
              	$verif='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#';
              
              	$message=preg_replace('#(<|>)#', '-', $_POST['message']);
              	$message=str_replace('"', "'",$message);
              	$message=str_replace('&', 'et',$message);
              
              	$nom=preg_replace('#(<|>)#', '-', $_POST['nom']);
              	$nom=str_replace('"', "'",$nom);
              	$nom=str_replace('&', 'et',$nom);
              
              	$prenom=preg_replace('#(<|>)#', '-', $_POST['prenom']);
              	$prenom=str_replace('"', "'",$prenom);
              	$prenom=str_replace('&', 'et',$prenom);
              
              	$societe=preg_replace('#(<|>)#', '-', $_POST['societe']);
              	$societe=str_replace('"', "'",$societe);
              	$societe=str_replace('&', 'et',$societe);
              
              	$objet=preg_replace('#(<|>)#', '-', $_POST['objet']);
              	$objet=str_replace('"', "'",$objet);
              	$objet=str_replace('&', 'et',$objet);
              
              	$email=stripslashes(htmlentities($_POST['email']));
              	$message=stripslashes(htmlspecialchars($message));
              	$nom=stripslashes(htmlspecialchars($nom));
              	$prenom=stripslashes(htmlspecialchars($prenom));
              	$societe=stripslashes(htmlspecialchars($societe));
              	$objet=stripslashes(htmlspecialchars($objet));
              	
              	$envoi=htmlentities($_POST['envoi']);
              	
              	if((empty($message))or(empty($objet))or(!preg_match($verif,$email)))
              	{
              		if(empty($email)and(empty($message))and(empty($objet)))
                    {
                    	echo '<p class="error">Tous les champs sont vides.</p>';
                       $message='';$email='';$objet='';
                    }
              		else
                    {
                    	if(!preg_match($verif,$email))
                    		echo'<p class="error">Votre adresse e-mail n\'est pas valide.</p>';
                    	else
                    		echo'<p class="error">Il faut remplir tous les champs !</p>';
                    }
              	}
              	elseif((!empty($message))or(!empty($objet))or(preg_match($verif,$email)))
              	{
              		$objet='[INTERSA-contact] : '.$objet;
              		$headers='From: '.$email."\r\n".'Subject: '.$objet."\r\n".'Content-type:text/plain;charset=iso-8859-1'."\r\n".'Sent: '.date('l, F d, Y H:i');
              		
              		if(mail('[email protected]',$objet,"Nom : $nom \nPrénom : $prenom \nSociété : $societe \n\nMessage : \n$message",$headers))
              			echo '<p>Votre message a bien été envoyé. Merci.</p>';
              		else
              			echo '<p class="error">Un problème est survenu durant l\'envoi du mail.</p>';
              	}
              	else
              	{
              		echo '<p class="error">Une condition innatendue est survenue lors de l\'exécution du script.</p>';
              	}
              return " ";
              }
              ?>
                • 25857
                • 23 Posts
                Pourquoi tu n’utilise aps e-form pour faire ça? http://wiki.modxcms.com/index.php/Category:Fr:eForm