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>
</B_p>
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 :
Discussions par date d’activité
19 discussions
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
je suis d’accord, nottament pour les traductions et les monnaies relatives au pays :)
Répondre à ce message
Bonjour,
En v3.09, j’ai un soucis, il me manque les 50 derniers pays. J’ai désactivé , supprimé réactivé, etc... rien n’y fait , la base spip_pays reste à 200 enregistrements !
Pareil chez moi : le peuplement de la base s’arrête au 200e pays, les Samoa...
Je ne sais pas si l’auteur verra ce commentaire, donc si le plugin n’est pas mis à jour dans l’immédiat, il faut télécharger le plugin et retirer la ligne 260 du fichier v3.0.9/base/peupler_base.php
(il y a deux lignes identiques, on retrouve bien un pb dans les logs à l’insertion en base du dernier paquet de 50 pays, d’où l’arrêt au 200e)
Je ferais bien remonter sur une plateforme de dev mais je ne sais plus trop où ça se passe... si qqun sait je ferai suivre.
Merci pour ce plugin en tout cas :-)
Bonjour,
Je n’avais pas vu vos messages. J’ai corrigé ces 2 erreurs :
- z83531 -> http://zone.spip.org/trac/spip-zone/changeset/83531
- z83532 -> http://zone.spip.org/trac/spip-zone/changeset/83532
merci Teddy !
Répondre à ce message
J’ai ajouté (version 2.1.1 - http://zone.spip.org/trac/spip-zone/changeset/60302) un script pour migrer une colonne d’une table SQL qui a des pays écrits en dur (en français) vers un id_pays. On remplace le texte par un id donc. Ça s’utilise comme ça :
Dans un squelettes/mig.html :
Puis :
/ ?page=mig sur votre site. Et hop.
Il est possible qu’il y ait des erreurs (pays absents), auquel cas, il faudra corriger ceux là à la main :)
Répondre à ce message
les noms des pays sont stockés dans un champ texte de la base, sous la forme d’une balise SPIP
<multi>
; ces noms sont disponibles en [fr],[en],[de],[es],[it],[nl] et [pt] ; les titres de balise pour l’interface du plugin sont stockés dans 2 fichiers de langue, seulement dispo en [fr] et [en].Selon le contexte de la page (variable
?lang=xx
dans l’url) l’affichage des noms de pays change.outre la traduction affichée, il peut être intéressant d’avoir le nom officiel dans la langue officielle (qui peut ne pas être l’anglais ou le français et donc différer de l’appellation officielle de l’ONU...)
il y a un nouvel état africain qui vient de naitre... il faudra penser à mettre à jour dès que son code sera disponible.
Répondre à ce message
Est ce possible de les reprendre dans le plugin forms et tables afin de proposer dans un formulaire une liste de pays ?
Bonjour,
Livrée avec le plugin, il y a une « saisie » qui s’appelle « pays.html ». Elle génère directement une liste déroulante avec tous les pays, que l’on peut appeler ensuite dans les formulaires SPIP.
Voici un exemple d’appel de la saisie depuis un formulaire SPIP :
L’instruction
defaut =70
indique que le pays N°70 (la France) apparait sélectionnée dans la liste.Prenons l’exemple du plugin « coordonnées » qui utilise le plugin « pays ». Dans le formulaire qui permet de saisir une adresse postale, le champ « pays » est listé par cette saisie. Voici un extrait du code du formulaire en question :
En espérant que cela te soit utile,
—
Cyril
Merci beaucoup. Par contre dans forms et tables doit voir comment faire, car les types de champs ajoutables sont déjà définis et aucun ne permet l’ajout d’un fichier, puis idéalement faudrait aussi que ca gère le multilinguisme.
pays n°70 ? pourquoi ne pas utiliser directement les code ISO-2 qui sont pourtant non-ambigus ? :(
pourrait-on reprendre le même exemple montrant l’usage de ces codes ?
Répondre à ce message
arriverait on à créer un groupe de mots clés « pays » qui créerait automatiquement un mot clé par pays en attribuant le code iso dans le descriptif du mot clé par ex ?
Répondre à ce message
Bonjour,
J’ai juste un petit soucis d’activation, lorsque je veux l’activer sur la version 1.0.6 - stable, et Spip 2.1.10 [17657], j’ai :
Je peux l’activer en modifiant manuellement par
Mais je suis persuadé que ce n’est pas la bonne façon :)
Répondre à ce message
le plugin est excellent.
Le seul petit bémol c’est que je vois pas certain pays dans la liste des pays de ce plugin.
Pour l’instant c’est tout ce que j’ai noté.
Bon travail !
il y avait un doublon dans la liste des codes alphabétiques qui empêchait le peuplement complet de la base (227 pays chargés au lieu de 244) ; merci d’avoir remonté le bug ;-) corrigé en version 1.0.4 (révision [40033]) ;
Répondre à ce message
Comment se passe le multilinguisme ?
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 :
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.
Suivre les commentaires : |