Liste des pays avec codes ISO 3166-1

Les listes de codes de l’ISO 3166-1

Propose une boucle “pays” qui s’utilise comme suit (exemple) :

<B_p>#PAGINATION
<table class="spip" width="100%">
	<thead>
	<tr class="row_first">
		<th><:pays:id_pays:></th>
		<th><:pays:code:></th>
		<th><:pays:nom:></th>
	</tr>
	</thead>
	<tbody>
	<BOUCLE_p(pays){par nom}{pagination 20}>
	<tr[ class="(#COMPTEUR_BOUCLE|alterner{'row_odd','row_even'})"]>
		<td>#ID_PAYS</td>
		<td>#CODE</td>
		<td>#NOM</td>
	</tr>
	</BOUCLE_p>
	</tbody>
</table>

Le plugin installe une nouvelle table “pays” qui reprend la liste des pays issus de spip_geographie (mais seulement les pays) en l’enrichissant des codes à deux caractères établis pas l’Organisation Internationale de Normalisation (ISO). Des correspondances peuvent ainsi êtres faites avec d’autres bases de données donnant ce champ comme clé d’index.

Ce plugin est par exemple utilisé dans les plugins Coordonnées et Contacts et Organisations (C&O) pour générer la liste des pays dans une adresse postale, et dans une appli développée pour un service export.

Comme indiqué sur le site de l’ISO : «Les noms de pays (forme courte) de l’ISO 3166-1 et les codes alpha-2 sont mis à disposition par l’ISO gratuitement pour un usage interne et à des fins non commerciales

Ce plugin est accompagné d’un court exemple d’utilisation de la boucle pays. Pour afficher l’exemple, une fois le plugin installé affichez la page [1]: spip.php?page=demo/pays. Vous obtiendrez une liste des pays du monde similaire à celle-ci :

Mise à jour 3.1

Le plugin Pays permet désormais de lier un Pays à n’importe quel objet SPIP. La liste des objets qui peuvent être liés à des pays est paramétrable sur la page de configuration du plugin (?exec=admin_plugin ou menu Configuration > Gestion des plugins) :

Ensuite, sur ces objets une nouveau bloc permet d’effecter un ou plusieurs pays à l’objet :

Footnotes

[1Vous devez être webmestre du site pour voir cette page

l’icône du globe terrestre provient du site tutsps.com

updated on 6 April 2020

Discussion

18 discussions

  • Chers écureuils,

    Il n’y a pas de balise <!--nb_elements--> dans les squelettes /prive/objets/infos/pay.htm et pays.html.

    L’insertion d’éléments comme le nombre des enfants d’un pays (indiquant le nombre de zones administratives par exemple) est donc rendue difficile.

    Y-a-t-il une raison particulière pour ce choix ? Dans la négative, serait-il possible d’insérer cette balise ?

    Reply to this message

  • 5

    Bonjour,

    J’ai installé “Pays ISO 3166-1” en version 3.2.0 sur un SPIP 3.2.5
    Comme indiqué sur la documentation, je peux en effet choisir les objets auxquels lier un pays et ça marche. Mais (car il doit y envoir un) une fois Pays lié à mon objet Patate, comment exploiter cela dans mes squelettes ? Tout exemple serait bienvenu.

    Merci.

    • J’ai vu ce bug , mais le plugin pays n’est pas concerné.
      Dans cextras, il faut je crois modifier la définition technique du champ pays:
      le small int a besoin d’un int par défaut. Sinon l’erreur sql empêche la création du champ pays.
      Dommage que cextras ne remonte pas les erreurs.

    • pardon, le post précédent répond au pb de table pays inexistante de DD.

    • Bonjour,
      Merci pour ta réponse.
      Pour l’instant par défaut il y a :
      Définition SQL (obligatoire) smallint(6) DEFAULT '' NOT NULL

      j’ai changé en
      Définition SQL (obligatoire) smallint(6) DEFAULT '111111' NOT NULL

      Mais cela ne change rien (mais je suis ignare en sql)

    • Bonjour,

      il ne faut pas mettre de quotes je pense, sinon c’est encore un string.
      Mais il faut aussi que la table soit recréée. Mais ça concerne alors cextras

    • pour répondre à Gilcot:
      il y a un filtre lister_objets_lies , voir un exemple dans les astuces courtes.

    Reply to this message

  • Bonjour,
    Avec ce plugin à jour j’ajoute la liste des pays aux champs extra des auteurs mais cela retourne une erreur (par exemple sur la page d’un auteur) :

    Erreur SQL 1054
    Unknown column 'pays_1' in 'field list' 
    plugins/auto/cextras/v3.12.4/cextras_fonctions.php        champs_extras_voir_saisies(){ sql_fetsel(); }        356

    Erreur sur les 2 sites testés (à jour).
    Le champ n’est pas ajouté en base.
    Voilà, voilà
    Merci

    Reply to this message

  • 2

    Bonjour,

    Est-ce qu’il y a moyen de rajouter des logos aux pays ?

    Reply to this message

  • Bonjour,

    je souhaite permettre la création d’un article sur l’espace public, or je ne trouve pas le formulaire (#FORMULAIRE_EDITER_PAYS ?) me permettant de sélectionner un pays. Oukilé ?

    merci !

    Reply to this message

  • Bonjour,
    Impossible de faire afficher le champ nom (#NOM), je crois que c est maintenant une variable dynamique réservée. Je n y arrive pas non plus avec la fonction #INFO ni avec une syntaxe de balise non ambigue (ou explicite, je ne sais plus le terme), en plus il faut forcement passer par un filtre extraire_multi, non ? Ou alors, l a pon compris....
    amicalement
    triton

    Reply to this message

  • Bonjour,

    Dans la doc, le chapitre *Mise à jour 3.1* propose une évolution que je ne retrouve pas dans ma version actuelle du plugin (v3.0.11), jusqu’à là tout me semble normal ;-)

    Cependant, je ne retrouve pas d’archive pour la 3.1 sur cette page, ni dans *Gestion des plugins*. Cette mise à jour n’a-t-elle pas encore été publiée ?

    Merci par avance de ta réponse.

    Reply to this message

  • 1

    Bonjour

    Est-ce qu’une évolution de ce plugin pour utiliser la table pays dans les articles, rubriques, brèves est prévue ?
    Un peu à la manière des mots-clés pour ensuite pouvoir trier des listes d’articles ou de rubriques par pays.

    Merci de votre réponse

    yanik

    • Bonjour,
      Désormais le plugin peut être utilisé pour lier un pays aux objets éditoriaux de SPIP. Il faut penser à sélectionner les objets sur lesquels on peut lier des pays, depuis la page de configuration du plugin.

      ++
      Cyril

    Reply to this message

  • 1

    bonsoir

    j’ai une difficulté d’installation sans doute liée à un pb sql indépendant duplugin, puisque je l’ai sur d’autres, mais pour m’aider, si quelqu’un peut interpréter ce message surprenant d’installations erronée/réussie/erronée...

    coté log spip et sql, rien de précis

    merci d’avance

    ce qui apparait sur la page de gestion des plugins après activation...

    Gestion des plugins
    Erreurs survenues

    L’installation du plugin « Pays ISO 3166-1 » (version : 3.0.10) a échoué
    MAJ init .

    L’opération a échoué. init 2

    Actions réalisées

    L’activation du plugin « Pays ISO 3166-1 » (version : 3.0.10) s’est correctement déroulée
    L’installation du plugin « Pays ISO 3166-1 » (version : 3.0.10) a échoué

    Installation du plugin Pays ISO 3166-1
    MAJ init

    L’opération a échoué. init 2
    L’opération a échoué.

    • Bonjour,

      Je ne rencontre pas de soucis à l’installation du plugin en v3.0.10. J’ai réalisé une installation vierge pour tester, et pas de soucis…

      Quelle est le type de base de données utilisée ? MySQL ? SQLite ?

    Reply to this message

  • 1

    Pour information l’ensemble des codes iso sont disponibles en xml traduits via le projet Debian.

    Il peut être intéressant de voir si ça ne serait pas plus simple de se rallier à ce travail pour mutualiser les ressources :

    http://anonscm.debian.org/gitweb/?p=iso-codes/iso-codes.git;a=tree

    Comme quoi ça a parfois du bon de lire les logs de ses serveurs :p

    • brain_damage

      je suis d’accord, nottament pour les traductions et les monnaies relatives au pays :)

    Reply to this message

Ajouter un commentaire

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom