PluXml.org

Blog ou CMS à l'Xml

Vous n'êtes pas identifié(e).

#1 02/12/2017 12:59:39

limul
Membre
Inscription : 16/12/2010
Messages : 11

Trier une liste d'articles alpha inverse

Bonjour à tout le monde,
j'avoue être un eu honteux, car je cherche une aide depuis plusieurs jours (pas à temps plein, je vous rassure smile pour trier me liste d'articles en alpha inversé sur le titre. Or je sèche lamentablement !

Je m'explique:
chaque article est le compte rendu d'une année. Un article par année. Le titre de l'article EST l'année en chiffre et je voudrais afficher la liste des articles en commençant par l'année la plus grande (ie la dernière).
exemple:
330 AUC
329 AUC
328 AUC
328 AUC
etc

Une âme charitable pourrait-elle me donner une idée ? merci smile

mon code:

[== Indéfini ==]
<?php while($plxShow->plxMotor->plxRecord_arts->loop()): ?>

					<article class="article" id="post-<?php echo $plxShow->artId(); ?>">

						<header>
							<h4>
								<?php $plxShow->artTitle('link'); ?>
							</h4>
							
						</header>

Hors ligne

#2 02/12/2017 17:50:08

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 102
Site Web

Re : Trier une liste d'articles alpha inverse

Ta question est bizarre.

PluXml permet de trier les articles, d'une façon générale ou pour une catégorie précise selon un des critères suivants :
* par date décroissante, par défaut
* par date croissante
* par ordre alphabétique
* tri aléatoire
Donc si tu as édité chaque article au bon moment, tes articles devraient être listés dans l'ordre souhaité.
Si ce n'est pas le cas tu peux modifier la date de création dans la page d'édition de chaque article.

Si tu tiens vraiment à un tri alphabétique inversé, il faut te préparer à mettre les mains dans le cambouis et à modifier le code de PluXml.
* fonction plxGlob::query(..) ligne #178
* fonction plxMotor::getArticles(...) ligne #609
* IFHM dans categories.php
* IFHM dans parametres_affichage.php

IFHM : interface femme/homme machine  smile

Dernière modification par bazooka07 (02/12/2017 18:10:38)

Hors ligne

#3 02/12/2017 19:17:45

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

Merci Bazooka pour ta réponse rapide !

Avant de plonger dans le bain du code (ou d'essayer), je précise ma demande car il se peut que je n'aie pas été assez clair;

Tu mentionnes: "* par ordre alphabétique". J'ai testé cette option. j'obtiens mes articles triés par alpha sur le titre. C'est déjà ça...
=> Mais, j'aimerais le même tri inversé (ie que s'affiche l'année la plus grande en premier)

PS: en fait, il s'agit de la reprise d'un site sous spip qui a été piraté il y a plusieurs années et que l'on me réclame. Donc les articles ne vont pas être saisis forcément dans l'ordre désiré... (http://limul.info/wikiRomejpem/index.ph … rubrique-1)

Hors ligne

#4 02/12/2017 22:01:48

Stéphane
Responsable du projet
Lieu : pas loin de Metz
Inscription : 07/08/2007
Messages : 6 275
Site Web

Re : Trier une liste d'articles alpha inverse

limul a écrit :

PS: en fait, il s'agit de la reprise d'un site sous spip qui a été piraté il y a plusieurs années et que l'on me réclame. Donc les articles ne vont pas être saisis forcément dans l'ordre désiré... (http://limul.info/wikiRomejpem/index.ph … rubrique-1)

Bonjour

Tu peux changer manuellement la date de création de l'article pour lui redonner la date originale: panneau de droite sur la page de rédaction/modification de l'article


Mes articles et tutoriels pour PluXml
Pluxopolis mon site sur PluXml, mais pas seulement...
Twitter: @pluxopolis

Hors ligne

#5 03/12/2017 11:27:06

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

Merci Stéphane, je vais leur dire de faire comme ça pour démarrer smile

Hors ligne

#6 03/12/2017 11:38:28

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 102
Site Web

Re : Trier une liste d'articles alpha inverse

Rajouter un tri alpha inversé n'est pas très compliqué.
Juste une ligne à rajouter ou modifier à 4 ou 5 endroits, hors les 9 langues.

Tu sais te servir de Git ?
Tu es sous Windows ?
Tu as combien d'articles sous Spip à récupérer ?

"330 AUC" n'est pas un titre très pertinent pour le visiteur. Ni pour se faire bien référencer

Hors ligne

#7 03/12/2017 16:06:39

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

Bazoka,

Je ne sais pas me servir de Git, suis sous W10 et il y a plusieurs centaines de pages à reprendre.

Il s'agit d'un jeu de rôle sur la Rome républicaine qui fonctionne depuis 2003. Il a donc une histoire énorme. Il a démarré en 200 AUC (ab urbe condita) et nous sommes actuellement en 404 AUC. Il y a donc au moins 204 pages à re-saisir smile

Je veux bien modifier le coeur du code, mais cela ne causera-t-il pas de problèmes lors des mises à jour de version ?

Hors ligne

#8 03/12/2017 23:32:08

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 102
Site Web

Re : Trier une liste d'articles alpha inverse

Pour aller au plus simple pour toi, il y a une archive PluXml-ralpha.zip à télécharger à cette adresse :
http://kazimentou.fr/divers/PluXml/
L'archive contient un critère de tri supplémentaire "ralpha"

Pour ceux qui connaissent git ( branche ralpha ) :

[== bash ==]
git clone https://github.com/bazooka07/PluXml.git -b ralpha

Basé sur le dernier pull request accepté sur le dépôt PluXml/PluXml.

Aucun souci avec la prochaine version de PluXml, la structure de données n'est pas changée pour l'instant.

Pour 204 articles, il y a peut-être un intérêt à faire une moulinette pour importer les articles depuis Spip.
Il faut avoir des compétences en MySQL et cela prendra un peu plus de temps

Quelqu'un avait planché sur le sujet, il y a 3 ans mais son projet semble avoir été oublié (Faire une recherche sur Google avec "spip pluxml")

Tu utilises quelle version de Spip ?
Tu connais phpMyAdmin ?

Dernière modification par bazooka07 (03/12/2017 23:33:23)

Hors ligne

#9 03/12/2017 23:49:20

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

1- Ascii inversé c'est pile-poil ce dont j'ai besoin ! Comment puis-je installer cette version ? Quels sont les fichiers à remplacer ?
2- pour SPIP de mémoire, ça doit être du SPIP 2.0, je connais My-SQL et phpMyAdmin.
Spip => PluXml: http://forum.pluxml.org/viewtopic.php?id=1600 ! Je regarde ça demain soir !

merci beaucoup pour ces pistes et conseils !

Hors ligne

#10 03/12/2017 23:57:15

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 102
Site Web

Re : Trier une liste d'articles alpha inverse

Installe le à côté du PluXml que tu utilises et remplace le dossier data avec ce que tu as déjà.

Tu peux sortir le schéma de la base de données, avec par exemple les 10 derniers articles pour avoir un jeu de données pour tester ?

Hors ligne

#11 04/12/2017 08:36:09

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

Déjà, voici le lien contenant les éléments de ma base SPIP:
http://limul.info/rome/BdDCodex.zip
smile

Dernière modification par limul (04/12/2017 08:36:38)

Hors ligne

#12 04/12/2017 10:34:50

Stéphane
Responsable du projet
Lieu : pas loin de Metz
Inscription : 07/08/2007
Messages : 6 275
Site Web

Re : Trier une liste d'articles alpha inverse

Bonjour
J'ai ajouté le tri alpha inversé en natif dans PluXml
Dispo sur la version de github: https://github.com/pluxml/PluXml

Merci JP (aka bazooka07) pour les modifs


Mes articles et tutoriels pour PluXml
Pluxopolis mon site sur PluXml, mais pas seulement...
Twitter: @pluxopolis

Hors ligne

#13 11/12/2017 02:09:05

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 102
Site Web

Re : Trier une liste d'articles alpha inverse

@limul,

Pour pouvoir avancer, il faudrait m'exporter le résultat des requêtes SQL suivantes avec phpMyAdmin :

[== SQL ==]
select * from spip_rubriques;

select * from spip_auteurs_articles
    where id_article <= 30;

select id_auteur, nom, bio, email, login, statut, webmestre from spip_auteurs
	where id_auteur in (
		select id_auteur from spip_auteurs_articles
		where id_article <= 30
	);

select * from spip_mots;

select * from spip_mots_articles
    where id_article <= 30;

J'ai testé les requêtes avec PhpMyAdmin.

Cela me permettra d'avoir un jeu d'essai complet pour faire des essais.

D'après ce que tu m'as donné précédemment, tu as dans les 300 articles

[== SQL ==]
select count(*) from spip_articles;

Hors ligne

#14 11/12/2017 19:36:29

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

Bonsoir Bazooka,

377 enregistrements.

Le contenu des 4 requêtes est ici => http://limul.info/rome/spip_auteurs_articles_mots.zip

Hors ligne

#15 12/12/2017 01:28:13

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 102
Site Web

Re : Trier une liste d'articles alpha inverse

Il y avait 5 requêtes.

Tu as oublié la 1ère requête :

[== SQL ==]
select * from spip_rubriques;

Les rubriques correspondent aux catégories de PluXml, mais sans groupe ou sous-groupe.

Dernière modification par bazooka07 (12/12/2017 01:28:54)

Hors ligne

#16 12/12/2017 08:07:18

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

Hors ligne

#17 14/12/2017 00:47:37

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 102
Site Web

Re : Trier une liste d'articles alpha inverse

@limul,

Je t'ai préparé le plugin kzSQLimport pour importer les données depuis Spip 2.29.
D'après le jeu de données, cela semble pas trop mal marché.
Télécharger le plugin kzSQLimport
Je suis parti avec l'optique de pouvoir importer des articles depuis n'importe quelle base SQL. ( Wordpress n'est pas encore dans mon radar)
Pour l'instant, il marche seulement avec Spip 2.29.

Si tu as déjà PluXml installé, le mieux est de créer un nouveau répertoire pour recevoir les données importées. Trois fois hélas, PluXml ne sait pas faire cela !
Tu peux faire cela avec le plugin moveMyDatas et ainsi basculer d'un répertoire à l'autre.
Télécharger le plugin moveMyDatas
Tu dois avoir un pilote mySQL installé sur ton serveur Web (librairie PDO)
Dans le panneau de config, renseigne le nom de la base, login et mot de passe pour se connecter dessus.
Si tu as saisi les bonnes infos, tu as un aperçu pour quelques tables.
Tu cliques ensuite dans le menu de gauche sur "import SQL" et tu coches au choix une à trois cases et sur le bouton importer.
Tous les mots de passe des utilisateurs sont ré-initialisés à la valeur du login :
login : limul
password: limul

Quelques remarques :
* PluXml ne gére pas les groupes de rubriques mais les articles peuvent appartenir à plusieurs rubriques
* Les sous-titres sont mis dans le champ meta_description. Pour afficher dans le theme, utilise la commande qui figure normalement dans le header de la page HTML :
<?php $plxShow->meta('description') ?>
* les entités html des articles ont été transformés en caractères utf-8
* les liens entre articles ont été mis à jour
* je n'ai pas vu d'image dans tes articles.

Je n'ai pas trouvé comment Spip 2.0 gère le lien entre le logo et un article. Apparement, cela n'est pas géré par SQL.

Ce n'est qu'une version béta. Donc on travaille avec des sauvegardes.

Bon amusement.

Hors ligne

#18 14/12/2017 07:52:40

limul
Membre
Inscription : 16/12/2010
Messages : 11

Re : Trier une liste d'articles alpha inverse

bazooka, je te remercie infiniment pour tout le boulot que tu as fait pour moi que tu ne connais pas et qui débarque tout juste sur le forum !
Je t'en suis extrêmement reconnaissant.

C'est un beau cadeau au réveil !

Je vais tester tout ça rapidement (ce week-end je pense avoir le temps) et te fais un retour immédiat.

Hors ligne

Pied de page des forums

A propos Nous soutenir Contact Twitter Google+
Copyright © 2006-2018 PluXml.org, tous droits réservés