Plugin Publication Ouverte

Nouvelle version du plugin openPublishing, avec plus d’options, moins de bugs, et un nouveau nom !

description du plugin

Le plugin « Publication Ouverte » a pour but de fournir une interface de publication d’article publique et anonyme permettant à n’importe quel visiteur d’un site spip de publier un article sans aucune authentification. Cette méthode de gestion/création de contenu est appelé « Publication ouverte » (ou open-publishing en anglais). La publication ouverte est principalement pratiqué par le réseau indymédia, ainsi que de nombreux autres sites d’informations alternatives.

Article wikipedia

Important : ce projet n’est plus maintenu par son auteur faute de temps et de motivation. Il est donc libre d’être repris. N’hésitez pas à explorer le code, et à commiter les modifications pour offrir à la communauté une nouvelle version débarrassé des derniers bugs et compatible avec les dernières versions de spip.

Principe de fonctionnement

Le plugin « Publication Ouverte » fourni un formulaire accessible par les visiteurs d’un site SPIP, qu’ils soient ou non enregistré comme auteur. Ce formulaire permet d’écrire un article sans devoir posséder un compte sur le site en question. Pour cela, tous les articles écrits via ce formulaire serons attribué à un auteur par défaut, communément appelé auteur « anonyme ». Il est aussi fortement conseillé de désactiver le stockage des IP de SPIP (cf. paragraphe « Avertissement IP »).

Il est aussi possible pour un auteur identifié, de publier un article « en son nom » plutôt qu’au nom de l’auteur « anonyme ». (cf. paragraphe « Auteurs spip »).


openPublishing devient Publication Ouverte

Le plugin openPublishing fait une évolution majeure, sa structure ayant énormément changé depuis la version précédente, on en profite également pour en changer le nom. « openPublishing » s’appelle maintenant « Publication Ouverte ». (ça fait plus spipiens non ?)

Ce qui change par-rapport aux versions précédentes

-  Les données propres à ce plugin ne sont plus stockés dans des tables particulières mais stocké dans les champs extras de la table articles ou brèves.
-  La configuration du plugin passe entièrement par le plugin CFG
-  Le plugin peut maintenant être utilisé par d’autres plugins pour proposer des options supplémentaires à la publication ouverte (cf. paragraphe sur l’interaction avec les autres plugins).
-  Les formulaires ont été simplifiés pour permettre une meilleur intégration dans un site (Disparition des feuilles de styles spécifiques au plugin).
-  Possibilité de donner un logo à l’article.
-  L’identification et la gestion des documents s’appliquent maintenant aussi aux brèves (lors de l’utilisation de la gestion agenda du plugin publication ouverte)
-  L’identification des auteurs apparaîtra dans l’interface privée
-  Possibilité d’activer la notification par mail lorsqu’un article est publié.

Les amalgames

Attention, ne pas confondre :

-  La gestion agenda du plugin Publication ouverte avec le plugin Agenda (ils n’ont strictement rien à voir entre eux).
-  L’identification optionnelle proposé par le plugin « Publication Ouverte » n’a aucun rapport avec la gestion des auteurs enregistrés dans un site spip).


Dépendance

Le plugin Publication Ouverte dépend du plugin CFG. Il est indispensable d’installer le plugin CFG avant d’installer le plugin « Publication Ouverte ».

-  CFG


Installer le plugin

Comme pour tous les autres plugins, il suffit de récuperer le zip, de le décompresser dans son répertoire « plugins », puis d’aller l’activer dans la page de gestion des plugins.

-  Installer un plugin


Passer de openPublishing à Publication Ouverte

-  Chemin d’accès : Configuration->Gestion des plugin->Publication Ouverte->Mise à jour
-  Url : ?exec=op_base

Cet espace de mise à jour permet de passer du plugin openPublishing au plugin Publication Ouverte.

Le plugin Publication Ouverte diffère énormément du plugin openPublishing. Pour effectuer une mise à jour correcte :

-  Dé-activer le plugin openPublishing dans la page de gestion des plugins
-  Supprimez le répertoire openPublishing dans votre répertoire "plugins"
-  Installez le plugin "Publication Ouverte"
-  Avant de passer à la configuration du plugin Publication Ouverte, il faut impérativement passer par une étape intermédiaire permettant de faire la transition entre openPublishing et Publication Ouverte.

Suivez pas à pas toutes les étapes en lisant entièrement toutes les explications. Tout devrais bien ce passer.

-  La première action consiste à supprimer les tables devenue obsolète de votre base de donnée. Histoire de garder une base propre.
-  La version 0.4 du plugin "Publication Ouverte" n’utilise plus la table "spip_op_auteurs" pour stocker les données d’identifications des rédacteurs, mais utilise les champs "extras" de la table "spip_articles". L’option suivante va vous permettre de mettre à jour tous les articles ayant eu un rédacteur s’étant identifié via ce système. Cela vous permettra de conserver les données identifications de vos rédacteurs et donc de supprimer la table "spip_op_auteurs" devenue obsolète.
-  La dernière étape consiste à supprimer la table "spip_op_auteurs".

Et voila, votre base de donnée est maintenant nettoyé des anciennes tables du plugin openPublishing. Vous pouvez maintenant passer à l’étape de configuration du plugin Publication Ouverte.


Configurer le plugin Publication Ouverte

-  Chemin d’accès : Configuration->cfg->Publication Ouverte
-  Url : ?exec=cfg&cfg=op

Cette espace de configuration permet de modifier les options suivantes :

Le choix des rubriques ou les articles seront placés

Vous pouvez choisir une ou plusieurs rubriques (déjà existantes ou crées pour l’occasion) qui recevrons les articles publiés via Publication Ouverte. Il suffit simplement de cocher ou de décocher les rubriques.

Le choix de l’auteur "anonyme"

La publication Ouverte assigne automatiquement à un auteur les articles publiés par l’interface de publication ouverte. Vous pouvez içi choisir cet auteur. L’utilisation "normale" consiste à créer pour l’occasion un auteur portant le nom "anonyme", et n’ayant aucun accès à l’interface privée (donc pas de mot de passe), puis de le choisir dans cette liste.

Le choix des champs à utiliser

Le plugin Publication Ouverte peut utiliser tous les champs de spip, c’est à dire le Sur-titre, le sous-titre, le descriptif, le chapeau, et le post-scriptum. Vous pouvez choisir içi quel champs utiliser dans l’interface de publication ouverte.

Le choix des options disponibles aux rédacteurs

Le plugin Publication Ouverte peut aussi permettre d’ajouter des objets à un articles :
-  des mots-clés
-  des documents
-  des documents distants
-  des images
-  un logo

Activez ou désactivez ces options en fonctions de vos besoins.

Auteurs spip

Cette option permet d’offrir le choix aux rédacteurs enregistrés comme auteur spip de publier au nom de l’auteur "anonyme" ou "en leur nom".

-  Cochez l’option "Permettre aux rédacteurs enregistrés en tant que "auteur Spip" ..."

Le formulaire de publication proposera alors (si l’utilisateur s’est préalablement logué via #LOGIN_PUBLIC ou #LOGIN_PRIVE), une case à cocher permettant d’attribuer l’article à cet utilisateur. (les champs "pseudo" et "mail" seront alors remplis avec les données de cet utilisateur).

La gestion de l’agenda

Si vous cochez cette option, le plugin "Publication Ouverte" proposera aux rédacteurs de publier leurs articles sous forme de "date" dans l’agenda. Il s’agit en réalité de publier le contenu de l’article sous forme de brève dans une rubrique spécifique.

Le choix du statut des articles

Lorsqu’un article est publié par l’interface de publication ouverte, il faut qu’il reçoive un statut (en rédaction, publié, ou proposé). Vous pouvez donc choisir ici quel sera ce statut.

Vous pouvez aussi activer la notification par mail. (Vous devez avoir préalablement activé le "suivie de l’activité éditoriale dans votre configuration de SPIP). L’email indiqué dans votre configuration de SPIP recevra un mail de notification a chaque article publié.

Les options de post-traitement du texte

Ces options vous permettent d’effectuer quelques tests sur le chmps textes des articles publiés :

-  anti-spam : remplace les @ des adresse email par un groupe de lettre aléatoire
-  anti-majuscule : remplace toutes les majuscules d’un titre par des minuscules
-  taille minimale du titre : determine la taille minimal en caractère des titres des articles

La gestions des renvois automatiques

Lorsqu’un rédacteur valide un article ou abandonne, le formulaire affiche un message et redirige le rédacteur au bout de quelques secondes vers une autre page du site. Les options ci-dessous permettent de configurer cela. Attention, il faut indiquer des urls de type : « /spip.php ?page=ma_page », le plugin complétera automatiquement l’url.


Au niveau du squelette

-  Appeler le formulaire "Publication Ouverte"

Dans une page du squelette (par exemple : "publication.html"), placez l’appel suivant :

	[(#FORMULAIRE_ARTICLE{#SELF})]

Vous pouvez appeler cette page depuis n’importe qu’elle autre page de votre site.

<a href="#URL_PAGE{publication}">Publiez un article</a>

Le plugin fourni aussi une page standard disponible via l’url :

/spip.php?page=publication_ouverte

-  Lister les rubriques recueillant les articles « Publication Ouverte »

<BOUCLE_rubrique(RUBRIQUES){openPublishing}>
</BOUCLE>

-  Récupérer les données d’identification :

<BOUCLE_article(ARTICLES){id_rubrique}>
- Le pseudonyme utilisé :#EXTRA|OP_pseudo<br />
- Le mail : #EXTRA|OP_mail<br />
</BOUCLE_article>

-  Exemple plus poussé (liste tous les articles « Publication Ouverte », classé par rubrique et par date)

<BOUCLE_rubriques(RUBRIQUES){openPublishing}{par id_rubrique}>

<ul>
		<BOUCLE_article_rubrique(ARTICLES) {id_rubrique=#ID_RUBRIQUE} {par date}{inverse} {0,15}>
	
			<li>
				<a href="#URL_ARTICLE">[(#TITRE|lignes_longues{27})]</a><br />
	
				publi&eacute; le [(#DATE|affdate_jourcourt)]<br />
                                [Auteur : (#EXTRA|OP_pseudo)  |  ]
				[Mai : (#EXTRA|OP_mail)  |  ]
			</li>
		</BOUCLE_article_rubrique>
		</ul>
</BOUCLE_rubriques>

Avertissement IP

Par défaut, spip log les adresses IP des visiteurs de votre site. Il est fortement conseillé de désactiver cela afin d’avoir une publication ouverte anonyme. Le plugin couteau suisse fournit la possibilité d’activer ou de désactiver ce stockage des adresses IP. Ne sera stocké qu’une version cryptée md5.

-  Le Couteau Suisse


Interactions avec d’autres plugins

Pour les utilisateurs

Si vous utilisez d’autres plugins effectuant des traitements au moment de la sauvegarde d’un article dans l’espace privée, ces traitement seront aussi actifs pour les articles publié par « Publication Ouverte ».

Pour les développeurs

Cette section ne concerne QUE les développeurs d’autres plugins. Vous pouvez donc vous dispenser de sa lecture si vous n’avez pas l’intention de rendre « Open » l’un de vos plugins.

-  Les pipelines de spip :

Le plugin Publication Ouverte utilise les pipelines « pre_edition » et « post_edition ». Cela veut dire qu’il est tout a fait possible pour un autre plugin de se brancher sur ces pipelines afin d’y effectuer des traitements., ils s’effectueront aussi bien sur les articles publiés via l’espaces privée que sur les articles publiés via Publication Ouverte.

-  Les pipelines spécifiques à Publication Ouverte :

Le plugin Publication Ouverte fournie aussi ces propres pipelines, permettant à un plugin tiers de s’insérer dans Publication Ouverte. C’est à dire d’ajouter dans le formulaire de publication son propre bout de formulaire. Les pipelines permettant de faire cela sont :

-  OP_environnement

ce pipeline permet aux plugins d’ajouter des variables d’environnement et éventuellement de leur donner un « type » en fonction du traitement necessaire au champs.

exemple :

$flux['data']['champs_pri']['url'] = _request('url');
$flux['data']['champs_pri']['mon_champs'] = '';
$flux['data']['champs_pri']['mon_autre_champs'] = '';

$flux['data']'type']['mon_champs'] = 'texte';

$flux['data']['actions']['mon_action'] = '';
  • La variable « url », étant déjà remplie, ne passera pas par le traitement stripslashes
  • La variable « mon_champs », n’étant pas remplie, passera par le traitement stripslashes, et étant « typée » texte, passera aussi par le traitement entities_html (la récupération des valeurs du formulaire est effectuée par Publication Ouverte)
  • La variable « mon_action » correspond au bouton « submit » du formulaire.
  • Important : le nom des variable doit correspondre au « name » dans les champs <input />.

-  OP_abandon

Que faire losrque l’utilisateur abandonne ? nettayage des valeurs temporaire dans la base, etc ...

exemple :

	if ($flux['data']['champs_pri']['id_article']) {

		$query = sql_select(
			array('id_mot'),
			array('spip_mots_articles'),
			array('id_article = '.sql_quote()
		);

		while ($row = sql_fetch($query)) {
			sql_delete(
				array('spip_mots'),
				array('id_mot = '.sql_quote(row['id_mot']).' LIMIT 1')
			);
		}
         }

-  OP_squelette

On y « branche » le formulaire.

exemple :

 	$flux = @unserialize($flux);

 	return inclure_balise_dynamique(
 			array('formulaires/formulaire_tag-machine', 0,
 				array(
				'bouton' => "Ajouter ce/ces tag(s)",
				'id_article' => $flux['id_article']
 				)
 			), false);

-  OP_validation

ce pipeline permet aux plugins d’effectuer une validation « alternative »
p.e : pour passer ailleur que par la création d’un article (création d’un evenement p.e)

IMPORTANT ; ne surtout pas oublier de mettre le flag_valider à true, sinon on embraye sur les autres types de validation

IMPORTANT : tester le flag_valider, il ce peut qu’un autre plugin le mette à true avant :)

IMPORTANT : tester sa variable action .. sinon le process se déroulera si on clique sur un autre bouton

-  OP_pre_validation

ce pipeline permet aux plugins d’effectuer des traitements avant la validation

p.e : traitements typographiques sur le texte

-  OP_action

ce pipeline permet aux plugins d’effectuer les traitements sur les variables.

pourra contenir des manipulations de la base de donnée, etc ..

IMPORTANT : toujours commencer par un test sur sa variable action !

Désactiver/Activer l’interaction

Dans l’espace de configuration, rubrique « post-traitement », cochez ou décochez la case « Interactivitée avec les autres plugins ».

Ajout du pipeline dans le fichier plugin.xml

Pour qu’un plugin puisse utiliser un pipeline du plugin publication ouverte, il faut l’ajouter dans le fichier plugin.xml de la manière suivante :

<pipeline>
        <nom>OP_squelette</nom>
        <action>OP_squelette</action>
        <inclure>prefixe_pipelines.php</inclure>
</pipeline>

Discussion

65 discussions

  • 5
    Insffix

    Bonjour,

    Une adaptation de ce plugin est-elle prévue pour spip 3 ?

    Répondre à ce message

  • Bonjour,
    J’utilise ce plugin qui est hyper interressant mais j’ai un problème, jaimerai que le titre de l’article soit obligatoire. J’ai bien écrit [obligatoire] mais même sans titre on peut envoyé. Qu’est ce que j’ai loupé ? Merci

    Répondre à ce message

  • 1

    C’est encore moi :)

    En fait j’ai un autre soucis...

    Je suis sous Spip 2.1.12, et la barre typo ne s’affiche pas par défaut, et j’ai comme des extraits du cache qui s’affichent au milieu des champs. Certains champs s’affichent également en double (ajout de documents, identification de l’auteur, soit tous les champs supplémentaires activés dans l’interface d’admin)

    J’ai mis la dernière révision du plugin (53768), censée être compatible avec Spip 2.1... mais les soucis relevés ci-dessus ne viennent-ils pas d’une incompatibilité quelque part ?

    • Réponse à moi-même, puisque la solution a été trouvée... pour résoudre ces 2 soucis ! ça se passe dans le fichierpublication_ouvert/formulaires/formulaire_article.html

      -  Il faut commenter l’appel du #PIPELINE (tant pis, on se privera de pipeline, mais bon...) : ça supprime l’affichage de caractères ésotériques et les champs qui s’affichent de façon multiple !

      -  pour afficher la barre typo, il faut aussi modifier un peu autour du form qui contient tout les champs et l’inclure dans une div avec les class « formulaire_spip » et « formulaire_article » :

      <div class="formulaire_spip formulaire_article">
      <form action="[(#ENV{url})]" method="post" name="formulaire_article" enctype="multipart/form-data">
       ...
      </form>
      
      </div>

    Répondre à ce message

  • Bonjour !

    Joyeux utilisateur de ce plugin, j’utilise également le plugin ckEditor, afin de simplifier le travail aux utilisateurs lambda. Sauf que je n’arrive pas à les faire se causer l’un à l’autre : j’aimerais tellement que ckEditor prenne la main sur le formulaire de publication ouverte... Quelqu’un aurait une solution ?

    Merci :)

    Répondre à ce message

  • 14
    laurent

    salut a tous

    j’ai un soucis : la barre typo ne s’affiche pas .
    quelqu’un a t- il ce probleme ? une idée pour le regler ?

    sinon tout roule.
    spip 2.08 Publication ouverte (v0.5) Rév. 33917

    merci d’avance

    http://www.fsl-nancy.fr/spip.php?page=agenda&id_rubrique=18&annee=2010&mois=03#publier

    • Salut Laurent,

      Il y a un peu de latence par rapport à ton message mais je suis confronté au même souci en utilisant Publication Ouverte sur un SPIP 2.1.
      Je vois que sur ton site du forum social local tu as réussi à afficher Porte Plume sur ton formulaire de contribution à l’agenda. Pourrais-tu me faire savoir comment tu y es parvenu ?

      Pour ma part, j’ai beau intégrer le bout de JS et la bonne classe à mon form, la barre d’outils typo ne s’affiche pas.

      Par avance merci !

    • laurent

      le truc c’est que je suis sous 2.010 expres et j’utilise la version stable de PO.

      avec 2.1 (et la branche 2.10 de PO) j’avais un soucis en plus : affichage de ce qui semblait etre les id_article, rubrique, date... le tout en vrac. j’ai pas trop cherché de ce coté je l’avoue ;)
      t’a réussi à resoudre ce ce probleme ?

      et en plus un probleme de declaration des pipelines qui me faisait buguer le site (toutes les pages en blanc (y compris en privé)) a chaque purge du cache.
      ce probleme se manifeste d’ailleurs avec le site actuellement, ce qui m’oblige a effacer le fichier charger_pipelines dans le repertoire cache.
      plus précisément, pas avec spip 2.010 [14698] mais a partir des modif de gestion du cache (de memoire à partir de [14708] ).
      j’ai pas encore regarder pour regler le probleme mais il semble qu’un pipeline soit declaré deux fois (?)

      pour les modif que j’ai apporter à P O (j’avoue que c’est surement un peu du bricolage vu mes competence en programmation... j’ai fait ca apres comparaisons de beaucoup de formulaires qui affichaient eux la barre typo, et... beaucoup de test. c’est donc peut etre pas la bonne methode, je m’en contente pour l’instant vu le temps que j’ai) :

      • le fichier formulaire_article :
        <form class="formulaire_article" action="[(#ENV{url})]" method="post" name="formulaire_article" enctype="multipart/form-data"> 
        <div class="formulaire_spip">
      • le fichier inc/op_fonctions :
        function barre_article($texte, $rows, $cols, $lang='')
        {
        	static $num_formulaire = 0;
        	//include_ecrire('inc/layer');
        	include_spip('inc/layer');
        
        	$texte = entites_html($texte);
        	if (!$GLOBALS['browser_barre'])
        		return "<textarea name='texte' rows='$rows' class='forml' cols='$cols'>$texte</textarea>";
        	
        	$num_formulaire++;
        	
        	return afficher_barre("document.getElementById('formulaire_$num_formulaire')", false) .
        	  "<textarea name='texte' rows='$rows' class='forml no_previsualisation' cols='$cols'
        	id='formulaire_$num_formulaire'
        	onselect='storeCaret(this);'
        	onclick='storeCaret(this);'
        	onkeyup='storeCaret(this);'
        	ondbclick='storeCaret(this);'>$texte</textarea>";
        }

      j’ai rajouté la classe no_previsualisation pour ne pas afficher l’onglet « voir » du PP, car je n’ai pas reussi a la faire fonctionner :(
      j’ai enlevé $GLOBALS[’options’] ; parce que ca affichait « avancée » juste apres le textarea

      voila j’espere qu ca pourra t’aider que l’on pourra faire avancer tout ca peut etre...
      (hésites pas a me dire ce que tu (ou vous) en pense(z), suis la pour apprendre !)

      a tres bientot

      laurent
      http://www.fsl-nancy.fr

    • laurent

      le pipeline declaré en trop (dans plugin.xml et op_options) est op_pre_validation, que j’ai supprimé dans op_options.
      plus de probleme avec le cache :)

      bon, apres verif , ya quand meme un dommage collatérale :(
      l’article s’enregistre à la racine du site , donc n’est pas editable et on ne peux pas l’ouvrir pour changer la rubrique...

      astuce à la c... : passer par le plugin cisf (edition d’articles simplifié) :
      apres une previsualisation de l’article , on le modifie avec cisf qui lui peux l’ouvrir (va savoir pourquoi) et donc specifier la rubrique.
      c’est pas terrible je l’avoue.

      si d’autres personnes ont resolu le probleme de cache ? ...

    • laurent

      autant pour moi, le probleme de cache est bien réglé sans dommage collatérale.

      le probleme d’enregistrement dans la rubrique ne venait pas du tout de ca :
      j’avais supprimé le champs « choix rubrique » dans formulaire_article.html ne voyant pas son utilité avec 1 seule rubrique de possible pour les redacteurs (choix dans la config)
      MAIS mon formulaire etait precedement dans le squellette d’une rubrique. donc les articles s’enregistraient dans celle ci.
      j’avais depuis peu basculer vers la page du formulaire P.O (/spip.php ?page=publication_ouverte) et donc celui ci n’etait plus « connecté ». donc... enregistrement des articles a la racine... J’avais juste pas noté le « bug » a ce moment.

      en re-plaçant l’appel du choix de la rubrique mais cette fois en l’encadrant d’un « display:none », le résultats recherché au debut est la ET l’article s’enregistre la ou on veut.

      ouf ! ;)

    • Salut Laurent,

      Je reviens vers toi pour expliquer rapidement ce que j’ai fait, car oui j’ai ma barre d’édition sur mon formulaire publication Ouverte ; D
      J’ai suivi ça Marcimat’s Docs
      Je pense que je me mélangeais entre les deux répertoires du plugin OP (à savoir /branches/spip-2.1 et /stable) et que je n’avais pas rigoureusement mis les deux class (l’une sur le FORM, l’autre sur le textarea - dans le fichier /inc/op_functions.php qui génère le textarea du champs « texte »)

      C’est moins « abouti » que de créer une fonction et de créer / modifier un pipeline mais ça me semble coller simplement au principe d’utilisation de l’extension Porte Plume.

      Pour ton dernier point, masquer la liste déroulante de sélection de la rubrique, car moi aussi je n’en ai qu’une à viser, j’ai procédé comme ceci, ce qui revient a priori au même :
      -  J’ai commenté / supprimé le bloc qui gère la select de la rubrique
      -  J’ai inséré en 2e champ input hidden (donc après le 1er qui est sous la déclaration du form) ceci :

      <input type="hidden" name="id_rubrique" value="[(#ENV**{id_rubrique})]" >
    • laurent

      ok :)

      merci pour le retour !

      ++

    • delorimier

      « je n’avais pas rigoureusement mis les deux class (l’une sur le FORM, l’autre sur le textarea - dans le fichier /inc/op_functions.php qui génère le textarea du champs « texte ») »

      Je n’y arrive pas. Avez-vous des précisions là-dessus ?

      Quel FORM au juste ? Dans quel fichier ? Quelles classes ajouter exactement dans les deux cas ?

      Merci.

    • delorimier

      J’y suis arrivé finalement - merci

    • delorimier

      Il y a un problème avec une de ces modifs - à chaque fois qu’on fait « modifier cet article » dans l’interface privée, on obtient « Il n’y a pas d’article à cette adresse ».

    • delorimier

      J’ai recommencé à zéro et ça marche avec la version 2.1 ici http://files.spip.org/spip-zone/ , spip 2.1.8 et tous les plugins à jour.

    • delorimier

      Cette modif était à l’origine du problème :

      input type=« hidden » name=« id_rubrique » value=« [(#ENV**id_rubrique)] »

      Elle ne transmet pas le numéro de rubrique, et donne 0, ce qui empêche la modification de l’article.

    • pour le problème de l’affichage des variables à la suite (ce que tu appelles « affichage de ce qui semblait etre les id_article, rubrique, date... le tout en vrac »), cela vient de la non déclaration de la pipeline OP_squelettes.

      Il y a 2 modifications à faire pour faire la correction.

      Dans plugins.xml, ajouter :

       <pipeline>
                      <nom>OP_squelette</nom>
                      <action>OP_squelette</action>
                      <inclure>op_fonctions.php</inclure>
              </pipeline>

      dans op_fonctions.php, ajouter :

      /* indispensable lorsque aucun plugin ne viens ce brancher. renvoie une chaine vide
         ce n'est pas propre ... mais bon.*/
      function op_OP_squelette($flux) {
              return '';
      }

      Sauf que d’aprèsles infos de trac, la déclaration forcée corrompt le fichier charger_pipelines.php car le fonction est declarée deux fois. Sauf que c’est le seul moyen que j’ai trouvé pour ne pas afficher ces caractères, et pour moi ça marche tout aussi bien...

    • bon, en fait, j’ai enlevé l’appel à la pipeline squelettes dans le formulaire article, et je n’ai pas besoin des modifications que je viens de décrire...

      J’ai encore quelques trucs qui ne marchent pas, mais je n’ai pas l’impression que cela vienne de là !

    • en fait, c’est le fait d’enlever cet appel

      #PIPELINE{OP_squelette,#ENV*}

      qui fait que la prévisualisation ne marche plus

    Répondre à ce message

  • 1
    Alexandre

    Bonsoir, je suis tout nouveau sur SPIP, je ne comprends pas la partie sur le squeulette, qu’entendez l’auteur par « Appeler le formulaire « Publication Ouverte » »

    Merci, Bonne soirée

    • pour appeler le formulaire, il faut écrire dans le squelette :

              [(#FORMULAIRE_ARTICLE{#SELF})]

    Répondre à ce message

  • 1

    Tout d’abord merci pour ce plugin très utile ! j’ai plusieurs questions comment rendre les champs obligatoire, car en faisant des tests le bouton « envoyez » envoi même si les champs sont vide ?
    et comment rendre l’inscription « obligatoire » et non « optionnel », même si la base de ce plugin est d’être anonyme, je trouve intéressant d’éviter au rédacteur de passer par l’interface privé qui n’est pas adapté au design de mon site. Merci pour vos réponse !

    • J’ai finalement trouvé une solution simple en mettant la publication dans une zone session :

      [(#SESSIONid_auteur| ?’ ’)
      [(#FORMULAIRE_ARTICLE#SELF)]
      ]

      Comme cela elle n’apparait que lorsqu’un auteur c’est auparavant connecté, ce qui la rend obligatoire.

      Il faut maintenant que je règle le problème des champs vide et aussi pouvoir redimensionner automatique les image pour ne pas avoir trop de fichier lourd dans le uppload... Si quelqu’un a une solution je suis preneur.

    Répondre à ce message

  • 1

    Boujour edd

    j’ai modifié la fonction de retour après validation
    j’ai ajouté la possibilité de choisir, si la validation est ok, d’afficher l’article que l’on vient de publier
    ce choix est optionnel (on ajoute une checkbox dans le formulaire de config)

    me permettez-vous de comiter cette modification ?

    Répondre à ce message

  • Bonjour et merci pour ce beau plugin !

    J’ai un soucis en essayant de l’utiliser à l’intérieur d’une page rubrique. Le formulaire contenant un input « id_rubrique », le visiteur est redirigé sur la page de la rubrique selectionnée pour « contenir » sa contribution quand il prévisualise/valide son article.

    Le problème se règle simplement en utilisant un autre nom pour l’attribut permettant de choisir la rubrique et en adaptant les #ENV & co en fonction.

    Par contre j’ai toujours tout un tas de bug a cause de la barre typo (qui ne fonctionne pas).

    Répondre à ce message

  • Bonjour,

    J’utilise le plugin publication ouverte qui marche très bien.
    Cependant j’ai un soucis lorsque je veux rentrer un numéro de téléphone dans un champs du formulaire dans l’espace public..
    Lorsque je valide le formulaire et que je vais dans l’espace privé le champs avec le numéro de téléphone est incorrecte en effet il manque le 0 devant. Pourtant quand je créer un nouvel article dans l’espace privé je n’ai pas ce problème le numéro est en entier.

    Comment puis-je régler cela ?

    Merci.

    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