SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 353 visiteurs en ce moment

Accueil > Navigation > Navigation transversale > a2a > Le plugin a2a pour lier des articles

Le plugin a2a pour lier des articles

4 octobre 2009 – par b_b – 89 commentaires

33 votes

Ce plugin permet de lier des articles de façon ponctuelle sans avoir à utiliser les mots-clés de SPIP. Il peut être utilisé pour mettre en place des liens de type « Lire aussi » comme dans le squelette Sarka-SPIP.

Installation

Zip - 19.2 ko
Version 0.4.6
SPIP 2.x
Zip - 37.6 ko
Version 2.2.0
Pour SPIP 3.x

Installation et activation comme tous les plugins.

Utilisation dans l’espace privé

Le plugin ajoute un bloc d’informations sur les pages d’édition d’articles de l’espace privé.

Pour rechercher un article à lier, il faut entrer les termes à rechercher dans le champ prévu à cet effet. Ce champ vous permet d’effectuer une recherche libre dans le titre ou le contenu de l’article que vous désirez lier.

Remarque : une recherche sur artXX permet d’afficher directement l’article numéro XX.

Bloc du plugin a2a

Après avoir validé une recherche, les résultats de celle-ci s’affichent sous le champ de recherche. Il suffit de cliquer sur « Lier » pour attacher l’article correspondant à celui en cours d’édition.

Depuis la version 0.4 du plugin, il est possible de lier les articles de façon bidirectionnelle en cliquant sur « Lier des deux côtés ».

Depuis la version 2.0 du plugin, il est possible de typer les relations entres articles : ceci fait l’objet d’un article spécifique : Typage des relations entre articles avec A2A.
Champ de recherche de a2a

Il est aussi possible de gérer l’ordre ou le rang des articles liés en cliquant sur « Monter » et « Descendre ».

Trie des articles avec a2a

Utilisation dans vos squelettes

Pour récupérer la liste des articles liés à l’article de l’environnement :

  1. <B_les_articles_lies>
  2. <ul>
  3. <BOUCLE_les_articles_lies(ARTICLES_LIES){id_article}{par rang}>
  4. <li>
  5. <BOUCLE_article_lie(ARTICLES){id_article = #ID_ARTICLE_LIE}>
  6. <a href="[(#URL_ARTICLE)]">#TITRE</a>
  7. </BOUCLE_article_lie>
  8. </li>
  9. </BOUCLE_les_articles_lies>
  10. </ul>
  11. </B_les_articles_lies>

Télécharger

On peut raccourcir cette écriture à l’aide de la balise #ARTICLES_LIES qui renvoie un tableau contenant les #ID_ARTICLE des articles liés à l’article de l’environnement. Par défaut, le tableau renvoyé par la balise est classé par rang. Il est possible d’inverser le tri des articles du tableau avec l’écriture #ARTICLE_LIES{inverse}.

  1. <B_articles_lies>
  2. <ul>
  3. <BOUCLE_articles_lies(ARTICLES){id_article IN #ARTICLES_LIES}>
  4. <li><a href="[(#URL_ARTICLE)]">#TITRE</a></li>
  5. </BOUCLE_articles_lies>
  6. <ul>
  7. </B_articles_lies>

Télécharger

Pour récupérer la liste des articles liant l’article de l’environnement :

  1. <BOUCLE_liant(ARTICLES_LIES){id_article_lie=#ID_ARTICLE}{par rang}>
  2. <BOUCLE_lesArticlesLiants(ARTICLES){id_article}>
  3. <a href="[(#URL_ARTICLE)]">#TITRE</a>
  4. </BOUCLE_lesArticlesLiants>
  5. </BOUCLE_liant>

Télécharger

Depuis la version 2.1.0 du plugin, on peut simplifier à l’aider de la balise #ARTICLES_LIANT :

  1. <BOUCLE_lesArticlesLiants(ARTICLES){id_article IN #ARTICLE_LIANT}>
  2. <a href="[(#URL_ARTICLE)]">#TITRE</a>
  3. </BOUCLE_lesArticlesLiants>

Télécharger

Par défaut, la balise retourne les articles liant dans l’ordre de rang. Elle peut prendre un argument optionnel {inverse}. Cependant, ce tri n’en général pas pertinent, on pourra préférer un tri à l’aide d’un critère de boucle "classique", par exemple par titre :

  1. <BOUCLE_lesArticlesLiants(ARTICLES){id_article IN #ARTICLE_LIANT}{par titre}>
  2. <a href="[(#URL_ARTICLE)]">#TITRE</a>
  3. </BOUCLE_lesArticlesLiants>

Télécharger

Typage des relations entre articles

À partir de la version 2.x, le plugin permet de typer les relations entre articles. Voir l’article consacré à ce sujet.

Voir en ligne : http://plugins.spip.net/a2a

Dernière modification de cette page le 3 avril 2015

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 11 janvier à 14:48, par Julien En réponse à : Le plugin a2a pour lier des articles

    J’avais un problème en suivant : #ARTICLES_LIES{'','liaison'} qui retournait les articles en ordre inverse.

    J’ai résolu en revoyant le code de la balise ARTICLES_LIES comme suit pour que ça trie par ASC comme il se doit si le premier argument est vide :

    1. function lister_articles_lies($id_article, $ordre_brut,$type_liaison=null){
    2. $ordre = (empty($ordre_brut)) ? 'ASC' : 'DESC';
    3. if ($type_liaison==null)
    4. return sql_allfetsel('id_article_lie','spip_articles_lies','id_article=' . sql_quote($id_article),'',"rang $ordre");
    5. else
    6. return sql_allfetsel('id_article_lie','spip_articles_lies','id_article=' . sql_quote($id_article) . ' AND type_liaison=' . sql_quote($type_liaison),'',"rang $ordre");
    7. }
    8.  
    9. function balise_ARTICLES_LIES($p) {
    10. $id_article = champ_sql('id_article', $p);
    11. $type_liaison=interprete_argument_balise(2,$p);
    12. $ordre = interprete_argument_balise(1,$p);
    13. $type_liaison ? $p->code = "lister_articles_lies($id_article, $ordre,$type_liaison)" : $p->code = "lister_articles_lies($id_article, $ordre)";
    14. $p->type = 'php';
    15. return $p;
    16. }

    Télécharger

    Si vous ne voulez pas réintégrer cela au plugin, merci de me dire ce que je fais de mal. Merci !

    Répondre à ce message

  • Le 28 juillet 2012 à 01:34, par rburton En réponse à : Le plugin a2a pour lier des articles

    Bonjour,

    M. Marcillaud travaille à un nouveau plugin permettant d’affecter une information supplémentaire aux liens entre objets (appelée « rôle »).
    Ce serait formidable (je n’ai malheureusement pas les compétences pour le faire) si votre plugin évoluait vers plus de généricité, en permettant
    1/ de lier n’importe quel objet (natif à spip ou non) à lui même (perso, je trouve que cette fonctionnalité devrait même être intégrée dans le core, ou dans un plugin « core »)
    2/ en intégrant la fonctionnalité « rôle ».

    Cordialement,
    Roger Burton

    Répondre à ce message

  • Le 18 juin 2013 à 19:30, par Casp En réponse à : Le plugin a2a pour lier des articles

    Bonjour, existerait il a votre avis une astuce, permettant de classer par date les articles, lorsqu’on récupére la liste des différents articles étant lié à l’article de l’environnement ?

    avec la boucle :

    1. <ul>
    2. <BOUCLE_articles_lies(ARTICLES_LIES){id_article_lie=#ID_ARTICLE} >
    3. <BOUCLE_suite_articles_lies(ARTICLES) {id_article}>
    4. <li><a href="#URL_ARTICLE">#TITRE</a></li>
    5. </BOUCLE_suite_articles_lies>
    6. </BOUCLE_articles_lies>
    7. </ul>

    Télécharger

    Merci.

    • Le 18 juin 2013 à 20:02, par Maïeul En réponse à : Le plugin a2a pour lier des articles

      Oui, il faut faire une jointure au niveau de la boucle (ARTICLES_LIES) sur la table spip_articles, et utiliser le critère {par date}, comme pour n’importe quelle boucle article. Cela permet au passage d’économiser une boucle.

      1. <ul>
      2. <BOUCLE_articles_lies(ARTICLES_LIES spip_articles){id_article_lie=#ID_ARTICLE} {!par date}>
      3. <li>#TITRE</li>
      4. </BOUCLE_articles_lies>
      5. </ul>

      Télécharger

    • Le 18 juin 2013 à 20:35, par Maïeul En réponse à : Le plugin a2a pour lier des articles

      par ailleur, la version 3.1.0 (qui sera bientôt zippé, proposera une balise #ARTICLES_LIANT qui permettra de faciliter l’écriture :

      1. <BOUCLE_articles_liants(ARTICLES){id_article IN #ARTICLES_LIANT}{!par date}>
      2. <li>#TITRE</li>
      3. </BOUCLE_articles_liants>

      Télécharger

    • Le 18 juin 2013 à 20:56, par Casp En réponse à : Le plugin a2a pour lier des articles

      Un grand merci pour cette réponse ultra rapide, cela fonctionne parfaitement.
      Je ne connaissais pas l’existence des jointures.

    Répondre à ce message

  • Le 26 mars 2013 à 13:22, par Casp En réponse à : Le plugin a2a pour lier des articles

    Bonjour, j’aurai aimé savoir si dans le cas d’un site multilangue , avec liens de traductions entre les articles.
    Est ce que l’on dois manuellement lier :
    article_fr_1 / article_fr_1X puis
    article_en_1 / article_en_1X etc...

    Ou bien il suffit de lier les articles dans la langue principale du site pour que les traductions soit elles aussi liés ?

    • Le 26 mars 2013 à 13:29, par Casp En réponse à : Le plugin a2a pour lier des articles

      Enfin remarque je me dis que ma question est un peu bête... Je vais essayer je verrai bien :-)
      en tout cas comme à chaque fois je ne saurai trop dire merci aux dev qui passe du temps pour SPIP.

    • Le 26 mars 2013 à 18:15, par b_b En réponse à : Le plugin a2a pour lier des articles

      Salut, non le plugin ne duplique pas automatiquement les liens des articles/traductions. Mais pour te simplifier la vie u devrais le faire comme ça :

      • sur la page de l’article d’origine ; afficher les articles liés à celui-ci
      • sur la page d’une traduction ; boucler sur les articles liés à l’article d’origine puis boucler pour renvoyer les traductions de ces articles

      Ainsi, tu t’éviterais le travail d’affecter les liens sur les articles d’origine et sur les traductions. Deux fois moins de travail pour les rédacteurs quoi ;)

    Répondre à ce message

  • Le 15 août 2014 à 20:42, par Hanjo En réponse à : Le plugin a2a pour lier des articles

    Bonjour,

    Après le mis-à-jour de SPIP (version 3.0.16 à 3.0.17) j’ai une erreur dans l’espace privé (exec=article) : « recherche sur une table sans clef primaire atomique » sur ligne 6 de /plugins/auto/a2a/v2.1.5/prive/objets/liste/articles_lies.html

    Cordialement,
    Hanjo

    • Le 16 août 2014 à 14:31, par Hanjo En réponse à : Le plugin a2a pour lier des articles

      Probablement une problème liée à la mise-à-jour, parce-que maintenant tout fonctionne bien !

      Merci,
      Hanjo

    • Le 16 août 2014 à 15:01, par b_b En réponse à : Le plugin a2a pour lier des articles

      Content que ça fonctionne de nouveau :) Hésite pas à nous signaler si le problème revient.

    • Le 3 septembre 2014 à 00:40, par DD En réponse à : Le plugin a2a pour lier des articles

      Hello,

      Depuis le dernière mise à jour du plugin (je crois) je ne vois plus les articles liés qui étaient auparavant listés sur la page de l’article liant :

      Par exemple il est indiqué :
      [Changer]
      3 articles liés # Rang Titre :
      [Lier à un ou des articles]

      On dirait que les liens sont cassés dans le sens article liant > article lié
      car lorsque je vais sur l’article lié l’article liant est bien listé.

      Si je rrecrée le lien à partir de l’article liant cela fonctionne mais ensuite s’affiche :

      4 articles liés # Rang Titre :
      Article publié 4 Sortie nature (2084)
      [Fermer]

      les anciens liens sont connus mais toujours pas affichés.

      donc pas facile de retrouver les liens perdus.

      dd

    • Le 3 septembre 2014 à 09:12, par b_b En réponse à : Le plugin a2a pour lier des articles

      Salut, les articles qui n’apparaissent pas ne seraient pas des « pages uniques » du plugin éponyme par hasard ?

    • Le 3 septembre 2014 à 12:34, par DD En réponse à : Le plugin a2a pour lier des articles

      Bonjour,

      Bon désolée, je n’avais pas assez fouillé : en fait les articles qui n’apparaissent pas sont les articles supprimés. Il y a eu une cassure quelque part dans le nettoyage de la table articles_lies

      Par exemple dans la base j’ai :
      id_article id_article_lie rang
      617 480 3
      617 2084 4
      617 456 2
      617 398 1

      mais les articles 480, 456 et 398 n’existent plus.

      donc un peu fouillis mais rien de perdu !

      dd

    Répondre à ce message

  • Le 13 février 2013 à 05:56, par Nico En réponse à : Le plugin a2a pour lier des articles

    Bonjour,
    Est-il possible de lier une brève à un article ?
    Si oui comment faire ?

    Merci !
    Nico

    Répondre à ce message

  • Le 2 décembre 2012 à 11:39, par bcolo En réponse à : Le plugin a2a pour lier des articles

    Bonjour

    J’utilise ce plugin très utile depuis la version 2.1 de SPIP. Mais depuis que je suis passé à la version 3.0.5, impossible de retrouver le champ « lier des articles » dans l’admin ! Dans l’interface publique de mes articles précédents comprenant des articles liés, la mention apparaît bien, mais pas dans l’interface privée. J’ai pourtant pris soin de mettre à jour a2a, CFG et Spip Bonux.

    Comment faire ? Merci d’avance.

    • Le 2 décembre 2012 à 12:15, par bcolo En réponse à : Le plugin a2a pour lier des articles

      Désolé, je me suis trompé, j’ai téléchargé via le chargeur de SPIP 3 la version obsolète (pour spip 2). avec la bonne version (que le chargeur ne trouve pas d’ailleurs, j’ai dû l’installer à la main) c’est OK.

    • Le 2 décembre 2012 à 13:13, par b_b En réponse à : Le plugin a2a pour lier des articles

      Content que tu aies résolu ton problème, en fait le chargeur de plugin ne propose par défaut que les plugins stables, il faut modifier les critères de recherche pour accéder aux plugins dans d’autres états (comme a2a pour SPIP 3 qui est en état test).

    Répondre à ce message

  • Le 3 mars 2015 à 16:48, par Sylvain En réponse à : Le plugin a2a pour lier des articles

    Hello,

    j’ai l’impression que le plugin ne marche pas avec SPIP 3.0.17 (site n’ayant pas déjà eut ce plugin)

    apparemment l’installation ne crée pas la table, j’ai des erreurs :

    peut-être une piste : je ne vois pas de 'CREATE TABLE ...' dans le fichier a2a_administrations.php

    merci d’avance

    • Le 3 mars 2015 à 19:12, par b_b En réponse à : Le plugin a2a pour lier des articles

      Salut, si le plugin n’a pas créé ses tables lors de l’installation, tu peux tenter de le désinstaller/réinstaller pour voir. Sinon regarde du côté des logs mysql dans tmp/log pour voir si tu y trouves des infos qui pourraient nous être utiles afin de t’aider plus.

      peut-être une piste : je ne vois pas de ’CREATE TABLE ...’ dans le fichier a2a_administrations.php

      Oui c’est normal :)

    • Le 5 mars 2015 à 17:06, par Sylvain En réponse à : Le plugin a2a pour lier des articles

      Hello,
      J’avais pourtant bien désactivé, activé, désactivé, supprimé, réinstallé ... sans résultat.
      Et là c’est passé.

      désolé pas plus de détails

    • Le 5 mars 2015 à 17:43, par b_b En réponse à : Le plugin a2a pour lier des articles

      Content que tu aies réglé le problème :)

    Répondre à ce message

  • Le 3 février 2012 à 00:47, par Tagada En réponse à : Le plugin a2a pour lier des articles

    Bonjour,

    Et merci pour ce super plug-in !
    Je préviens : je suis novice ....

    Je souhaiterai pouvoir mettre 2 boites type « Lire aussi » par articles (avec des articles liés différents).
    Pour la première pas de problème. C’est parfait.

    Est ce que je peux me « re-servir » de ce plug-in pour la seconde ?

    Merci de votre indulgence...

    • Le 5 février 2012 à 01:52, par DD En réponse à : Le plugin a2a pour lier des articles

      Bonjour, je ne sais pas si j’ai bien compris ton besoin. est-ce que ceci y répond :

      Tu peux dupliquer la boucle en changeant le nom :

      <BOUCLE_liant2(ARTICLES_LIES){id_article_lie=#ID_ARTICLE}{par rang}>
      <BOUCLE_lesArticlesLiants2(ARTICLES){id_article}>
      <a href="[(#URL_ARTICLE)]">#TITRE</a>
      </BOUCLE_lesArticlesLiants2>
      </BOUCLE_liant2>

      et changer ajouter les critères en fonction de ce que tu veux.

    • Le 5 février 2012 à 14:02, par Tagada En réponse à : Le plugin a2a pour lier des articles

      BONJOUR,

      Merci pour la réponse mais ce que je voulais c’est une aute module a2a, y compris dans la partie privé, pour pouvoir lier d’autre articles.
      J’ai réussi en bidouillant : ce n’est surement pas orthodoxe mais j’ai dupliqué le plug-in, je l’ai nommé b2b et modifié le noms des variables dans chaque fichier qui pouvaient créer une « interférence » avec a2a.
      Ca fonctionne : partie admin j’ai 2 blocs distincts « articles liés » que je peux donc faire apparaitre comme je veux dans ma page.
      Désolée si je n’emploie pas les bons termes, mais je débute....
      Merci en tous cas à toutes les bonnes âmes de Spip-contrib qui me permettent d’avancer....

    • Le 9 septembre 2013 à 17:34, par Sandrine En réponse à : Le plugin a2a pour lier des articles

      Bonjour Tagada,

      Il semble que je rencontre la même problématique que vous (nécessité de dupliquer a2a pour créer 2 zones « A voir » distinctes).
      Avez-vous une trace de vos « bidouillages » ? je ne suis pas développeuse, et ne voit pas bien comment m’y prendre...
      Merci d’avance !

    • Le 10 juin 2014 à 19:07, par Casp En réponse à : Le plugin a2a pour lier des articles

      Je ne suis pas sûr de ce que vous recherchez, mais à priori vou devriez pouvoir le faire avec le plugin de base.

      Vous pouvez créer plusieurs type de liaison (voir panneaux de configuration du plugin)
      Que vous nommez diférement , et que vous récuperez à l’aide du critère : type_liaison=nomdelaliaison
      au sein d’une boucle (ARTICLES_LIES)

      du style :

      1. <BOUCLE_liant(ARTICLES_LIES)
      2. {id_article_lie=#ID_ARTICLE}
      3. {type_liaison=auteur}
      4. {par rang}>
      5. <BOUCLE_lesArticlesLiants(ARTICLES){id_article}>
      6. <article>
      7. [<a href="#URL_ARTICLE">
      8. (#LOGO_ARTICLE_RUBRIQUE|inserer_attribut{alt,#TITRE|attribut_html})
      9. </a>]
      10. </article>
      11. </BOUCLE_lesArticlesLiants>
      12. </BOUCLE_liant>

      Télécharger

    Répondre à ce message

  • Le 12 décembre 2014 à 16:57, par casp En réponse à : Le plugin a2a pour lier des articles

    Dans la dernière version j’ai un bug .. pas très gènant mais je le signal. (version spip 3.0.17)
    Lorsque j’ajoute plusieurs liaisons à un article, le petit cadre récapitulatif fait un refresh ajax en boucle.
    je dois recharger la page pour qu’il arrête de clignoter :-)

    Cela n’impacte pas le fonctionnement.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mode portail Communiquant pour SoyezCréateurs

    29 septembre 2010 – 20 commentaires

    5e mode d’affichage de la page d’accueil, ce mode se distingue des autres par une animation proposant un fondu/enchaîné des logos des articles à la une. Zonage Configuration Zone d’entête Nom du site Slogan si plugin bandeau présent (...)

  • Configurer Sparkpost

    25 avril – 14 commentaires

    N’hésitez pas à relire le préambule de cette rubrique avant de créer un compte sur une plateforme tierce . Présentation Sparkpost est une société d’envoi de mailing https://www.sparkpost.com/ Sur les petits volumes ( <100.000 emails / mois), (...)

  • Plugin Logo SVG : pouvoir utiliser des logos SVG

    17 octobre – commentaires

    Le SVG est un format vectoriel donc très léger et redimensionnable sans pertes, mais SPIP ne l’acceptait pas sur les logos. Ce plugin comble ce manque. Comment ça fonctionne ? Vous installez ce plugin, vous l’activez, et c’est tout. Crédits Une (...)

  • Utilisez le framework Foundation dans vos squelettes !

    13 août 2013 – 58 commentaires

    Foundation est un framework CSS et Javascript très complet pour réaliser des sites sur une grille propre et homogène. Mais surtout, il permet de rendre un site responsive très facilement ! Ce plugin ajoute le framework Foundation sur l’espace (...)

  • LinkCheck : vérificateur de liens

    13 février 2015 – 65 commentaires

    Ce plugin permet de chercher et tester l’ensemble des liens présents dans les objets. Vous pourrez donc en quelques clics connaître les liens brisés ou défectueux qui se sont immiscés dans le contenu de votre site SPIP. La vérification s’effectue en (...)

Ça spipe par là