#FORMULAIRE_ARTICLE

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Balise a placer dans les squelettes pour pemettre à un visiteur ou un rédacteur de proposer un article dans une rubrique à partir du site public.

Objectifs

Cette balise génère un formulaire qui permet à un visiteur ou un rédacteur de proposer un article dans une rubrique à partir du site public. les fichiers sont codés avec des fonctions, des boucles et des fichiers langues de spip.

2Voici ses fonctionalités :2

-  l’article envoyé est proposé à la publication. Son statut peut-être personalisé par une variable dans mes_options ;
-  le formulaire permet de remplir les champs surtitre, titre, soustitre, descriptif, chapo, texte, ps, et de choisir la langue de l’article envoyé ;
-  Entièrement multilingue
-  Un courriell est envoyé à la liste de suivi.

2Différences avec [(#FORMULAIRE_ARTICLE)] : Permettre aux visiteurs de proposer un article sur votre site2

-  c’est une balise, elle est donc plus facile à placer dans les squelettes (il suffit d’y écrire #FORMULAIRE-ARTICLE) et ne demande pas d’utiliser de php ou d’inclusions.
-  c’est codé dans l’esprit des autres formulaires spip, avec un squelette .html pour la personnalisation et un .php3 pour les traitements techniques.

Installation

21) copier les fichiers2

L’archive se compose de 4 fichiers, qu’il vous faut copier dans votre répertoire de squelettes :

-  formulaire_article.html : le squelette du formulaire proprement dit
-  formulaire_article_previsu.html : squelette de prévisualisation
-  formulaire_login_article.html : identique à formulaire_login_forum exepté le message affiché ! Permet d’afficher l’interface de connection si la modération est « sur abonnement ».
-  inc-formulaire_article.php3 : traitement des données du formulaire et envoi dans la base de donnée spip.

22) choississez votre type de modération2

Si vous souhaitez une modération a priori, vous pouvez sauter cette étape !
Une variable dans mes fonction permet de déterminer la modération à appliquer, à l’image des forums de spip [1]. Cette variable globale doit être placée dans mes_options.php3. elle peut prendre deux valeurs :

-  sur abonnement : il sera nécessaire de s’identifier pour proposer un article. La variable qui doit être placée dans mes_options est :

$GLOBALS['articles_publics']  = 'abo';

-  a posteriori : l’article est directement publié en ligne. Dans ce cas écrivez :

$GLOBALS['articles_publics']  = 'pos';

Si cette variable est omise ou différente des valeurs ci-dessus, la modération se fait a priori (l’article est proposé et doit être validé par un admin).

23) Placez la nouvelle balise dans vos squelettes2

Une fois que les fichiers ont été copiés vous pouvez utiliser la balise #FORMULAIRE_ARTICLE dans vos squelettes.
Attention ! cette balise doit être placée dans une boucle RUBRIQUE !

Exemple, pour un formulaire qui propose un article dans la rubrique n°1 :

<BOUCLE_proposer(RUBRIQUES){id_rubrique=1}>
#FORMULAIRE_ARTICLE
</BOUCLE_proposer>

24) Adaptez a vos besoins2

Vous pouvez modifier les squelettes formulaire_article.html et formulaire_article_previsu.html pour les adapter au graphisme de votre site.

Évolutions possibles

-  permettre le choix de la rubrique avec un formulaire de sélection.
-  Inscrire automatiquement comme visiteur la personne qui publie.

Notes

[1pour rappel, une modération a postériori signifie que la modération se fait après la publication. L’article est directement publié, et l’administrateur peut choisir de le supprimmer par la suite. Ceci à la différence de la modération a priori, ou l’article doit être validé par un admin avant d’apparaitre en ligne.

Discussion

14 discussions

  • 1

    Je réexpose ma question mal posée dans un post précédent :

    "Et une question : dans le fichier de prévisualisation je ne comprend pas en line 4 :

    <div class='spip_encadrer important'>

    et surtout l’espace important ainsi que l’utilisation d’apostrophes à la place de guillemets. Pourriez-vous m’éclairer ?
    Sinon c’est super, à quand la création de mots clés ? qui complèteraient bien cette balise ?

    • Cette division n’est pas indispensable. Les deux class spip_encader et important permettent de personaliser l’affichage grace au CSS. Ca n’a pas plus d’utilité que ca, et tu peux donc les supprimmer si ca te dérange.

    Répondre à ce message

  • Bonjour et Bravo pur ce travail !
    J’aimerai pouvoir placer #ORMULAIRE_ARTICLE à la suite d’un menu déroulant pour que le formulaire ne s’affiche que f=dans la rubrique selectionnée.
    Sauriez vous me dire comment je peux faire ?
    Merci d’avance et encore félicitations !

    Répondre à ce message

  • 1

    Super contribution, c’est pratique et facile à mettre oeuvre. Merci encore.

    • Juste un détail dans formulaire_article.html il faut remplacer (line 21) <:info_soustitre :> par Soustitre :

      Et une question : dans le fichier de prévisualisation je ne comprend pas en line 4 :

      et surtout l’espace important ainsi que l’utilisation d’apostrophes à la place de guillemets. Pourriez-vous m’éclairer ?

      Sinon c’est super, à quand la création de mots clés ? qui complèteraient bien cette balise ?

    Répondre à ce message

  • 1

    Bonjour,

    merci pour votre contribution qui va m’être fort utile.

    Le formulaire correspond parfaitement à mes besoin, toutefois pourriez-vous me dire s’il est possible d’y rajouter une fonctionnalité qui permettrait aux internautes d’uploader des documents joints, en particulier des images ?

    D’avance merci de votre réponse

    • je ne pense pas que ce soit une bonne idée l’upload de documents pour les visiteurs. mieux vaut s’inscrire.
      les plus motivés mettront des liens vers des images stockés ailleurs, comme on faot lorsqu’on poste dans les forums.

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom