[KLWP][TUTO] Créer un lecteur RSS

Sujets dédiés à l'usage des outils de personnalisation (ex ZOOPER, UCCW, les Launchers)
#1

[KLWP][TUTO] Créer un lecteur RSS

Messagepar jhowlett468 » 27 Avr 2016, 17:04

Image

Cliquez sur les images pour les voir en grand

Bonjour !

Le but de ce topic est d'expliquer comment un lecteur RSS avec KLWP. Dans mes cas, les lecteurs de flux RSS sont empaquetés au format ".komp" ( komponent ) pour être plus facilement exportables et importables indépendamment du skin utilisé.
Je me concentrerai sur le lecteur RSS du blog Galaxy'S Team car pour l'importation des miniatures des articles, c'est un peu un "cas d'école".

Voila à quoi ressemble mon lecteur RSS :

Image

Et dans le détail :

Image
1 : logo du flux ( logo du site retaillée selon mes besoins avec Photofiltre )
2 : heure de publication du flux ( pas toujours fiable, avec certains flux, KLWP se contente d'afficher... L'heure qu'il est... )
3 : nom du site ( un clic dessus ouvre le lien du site )
4 : titre d'un article
5 : début d'un article
6 : miniature d'un article
4 et 5 sont un seul et même module texte et un clic dessus ouvre le lien de l'article.

Les points 1, 2 et 3 sont assez "bâteaux" à mettre en oeuvre. Je m'attarderai donc sur les points 4, 5 et 6 qui sont plus ardus ( principalement sur l'aspect "code", l'aspect "graphique" étant une affaire de goût ).

Déjà pour commencer, comment faire pour trouver l'adresse du flux RSS qui nous intéresse, sésame de nombreuses fonctions KLWP dont j'aurai besoin plus loin. Dans le cas du blog Galaxy'S Team, c'est assez simple, il suffit de se rendre sur le site et de cliquer en haut à droite sur "flux RSS" :

Image

On se retrouve alors sur le flux RSS du site et il suffit alors d'en récupérer l'adresse dans la barre :

Image

La démarche est souvent la même pour de nombreux sites, il suffit de trouver le bouton "flux RSS" ;) De plus, l'avantage d'utiliser Firefox est qu'il embarque nativement un lecteur RSS ce qui permet de visualiser le flux RSS et donc de s'assurer qu'on est au bon endroit ( par exemple avec Chrome mobile, en ouvrant le lien d'un flux RSS, on obtient juste un message d'erreur ).

Bien ! Rentrons dans le vif du sujet et voyons comment j'ai demandé au lecteur de récupérer les titres et les débuts d'articles du flux ( les premiers en tout cas ).

Le code "brut" d'un bloc titre / début d'article :

Code : Tout sélectionner
[c=$gv(1)$]$tc(ell, wg("blog.galaxys-team.fr/?format=feed&type=rss", rss, 0, title), 45)$[/c]
$tc(ell, wg("blog.galaxys-team.fr/?format=feed&type=rss", rss, 0, desc), 280)$


La 1ère ligne correspond au titre et la deuxième au début de l'article.

Code : Tout sélectionner
[c=$gv(1)$]xxx[/c]


Attribue au texte une couleur codée dans un global.

Code : Tout sélectionner
$tc(ell, xxx, 45)$


Affiche uniquement les 45 premières lettres du texte "xxx".

Code : Tout sélectionner
$wg("blog.galaxys-team.fr/?format=feed&type=rss", rss, 0, title)$


Affiche le titre du premier article ( le plus récent ) du flux.

La première ligne veut donc dire : "affiche-moi les 45 premières lettres du titre de l'article le plus récent du flux RSS du blog Galaxy'S Team en affichant le texte de la couleur global 1".

Même raisonnement pour la deuxième ligne mais la commande "desc" qui remplace la commande "title" pointe vers le contenu de l'article et non plus vers son titre.
La deuxième ligne veut donc dire : "affiche-moi les 280 premières lettres du contenu de l'article le plus récent du flux RSS du blog Galaxy'S Team".

Le "0" correspondant au premier article peut être remplacé par un "1" ( 2ème article le plus récent ) et ainsi de suite.

A ce bloc de texte, j'ai associé la commande "touché -> ouvrir un lien" ou le lien est codé de cette manière :

Code : Tout sélectionner
$wg("blog.galaxys-team.fr/?format=feed&type=rss", rss, 0, link)$


Cette commande récupérant l'URL de l'article le plus récent et permettant de l'ouvrir via navigateur web.

Concernant l'affichage des miniatures, ça se corse. Il existe une variable dans KLWP et c'est celle-ci :

Code : Tout sélectionner
$wg("blog.galaxys-team.fr/?format=feed&type=rss", rss, 0, thumb)$


Mais cette variable ne fonctionne avec aucun des flux que je suis via KLWP ( le blog Galaxy'S Team, Jeuxvideo.com, Jeuxvideo-live.com, 01net.com et Google News )... Je suis tombé sur une pirouette sur la communauté KLWP grâce à Carla Jacobs, cf ce post. Cette astuce repose sur l'identification du site où sont stockées les miniatures.
Dans le cas du blog Galaxy'S Team, voila le raisonnement ( applicable à d'autres flux RSS, le tout étant de correctement "découper" l'adresse par la suite ). On se rend sur le site ( ou directement sur le flux RSS selon les cas ) puis on fait un clic droit sur une miniature :

Image

Puis on clique sur "afficher l'image" :

Image

La miniature s'affiche avec l'adresse du fichier dans la barre d'adresse :

Image

Ici, la bonne adresse s'arrête à "cache", ce qui donne : "http://blog.galaxys-team.fr/cache/".
L'astuce de Carla Jacobs se code de cette manière :

Code : Tout sélectionner
$wg("http://www.repubblica.it/rss/homepage/rss2.0.xml", url, "repstatic.it/content/",1)$


Dans mon cas, il y juste à remplacer les adresses :

Code : Tout sélectionner
$wg("blog.galaxys-team.fr/?format=feed&type=rss", url, "blog.galaxys-team.fr/cache/",0)$


L'intérêt de ces formules qui peuvent sembler un peu barbares est qu'au lieu de récupérer "en dur" les liens concernés, on reste sur quelque chose de dynamique et qui peut donc être mis à jour sans modifier tous les liens ( après libre à vous de mettre dans votre skin KLWP un module permettant de mettre à jour vos flux RSS ).

Après test, cette formule fonctionne et permet de récupérer l'adresse des miniatures des articles du flux RSS du blog du site. Il suffit d'intégrer cette formule dans un bitmap ( appui long là où on choisit l'emplacement image dans un module image, clic sur la fonction calculatrice puis re-clic sur la calculatrice qui s'est affichée sur la ligne et copié-collé de la formule ) :

Image

Voila, sans détailler tout le cheminement pour créer un lecteur RSS, je pense avoir déblayer certains aspects pas forcément simples. N'hésitez pas à poser vos questions ;)

Crédit images : screenshots de mon téléphone et du blog Galaxy'S Team réalisés et modifiés par moi-même
Huawei P8 Lite 2017 (PRA-LX1) | ROM PRA-LX1C109B120 full stock (ROM Orange)
Gear Fit (SM-R350) | ROM BOA2

Liens importants | Nouveau ?
Drivers 1.5.51 -> Install
Vérifiez votre modèle (modèles plus récents)
Téléphone qui bootloope ? | En ULTIME recours ? ---> ICI
Ex-rédac chef du Blog
Avatar de l’utilisateur
jhowlett468
Ancien du Staff
Ancien du Staff
 
Message(s) : 9304
Inscription : 16 Août 2011, 19:28
Localisation : Xavier's Intitute for Gifted Youngers, 1407 Graymalkin Lane, Westchester County, NY /// La DZ

#2

[KLWP][TUTO] Créer un lecteur RSS

Messagepar jhowlett468 » 27 Avr 2016, 17:05

Réservé
Huawei P8 Lite 2017 (PRA-LX1) | ROM PRA-LX1C109B120 full stock (ROM Orange)
Gear Fit (SM-R350) | ROM BOA2

Liens importants | Nouveau ?
Drivers 1.5.51 -> Install
Vérifiez votre modèle (modèles plus récents)
Téléphone qui bootloope ? | En ULTIME recours ? ---> ICI
Ex-rédac chef du Blog
Avatar de l’utilisateur
jhowlett468
Ancien du Staff
Ancien du Staff
 
Message(s) : 9304
Inscription : 16 Août 2011, 19:28
Localisation : Xavier's Intitute for Gifted Youngers, 1407 Graymalkin Lane, Westchester County, NY /// La DZ

#3

Re: [KLWP][TUTO] Créer un lecteur RSS

Messagepar DuD » 27 Avr 2016, 21:24

Super, très bon boulot... Merci ! ;)
Galaxy Note EDGE ;-)
SM-N915FY
ANDROID 5.1.1 LOLLIPOP
N915FXXU1COI1
Version Kernel 3.10.40-5674927
KNOX : 0X0
-------------------------
-------------------------
-------------------------
Avatar de l’utilisateur
DuD
Ancien du Staff
Ancien du Staff
 
Message(s) : 1653
Inscription : 04 Oct 2013, 10:40

#4

Re: [KLWP][TUTO] Créer un lecteur RSS

Messagepar edem84 » 28 Avr 2016, 11:21

Salut
du grand et bon job, bravo et merci !!!! 8-)
Galaxy Note 4 - SM-N910C : MM 6.0.1 N910CXXU2DPI7 / Root : CF-Autoroot
Opérateur : Maroc Telecom
Avatar de l’utilisateur
edem84
Ancien du Staff
Ancien du Staff
 
Message(s) : 4212
Inscription : 07 Sep 2010, 23:47
Localisation : Maroc

#5

Re: [KLWP][TUTO] Créer un lecteur RSS

Messagepar jhowlett468 » 28 Avr 2016, 11:26

Salut les gars !
Merci mais tout le mérite revient à Frank Monza ( le dev' de KLWP/KWGT ) et à Carla Jacobs pour la solution alternative de récupération des miniatures ;)
Huawei P8 Lite 2017 (PRA-LX1) | ROM PRA-LX1C109B120 full stock (ROM Orange)
Gear Fit (SM-R350) | ROM BOA2

Liens importants | Nouveau ?
Drivers 1.5.51 -> Install
Vérifiez votre modèle (modèles plus récents)
Téléphone qui bootloope ? | En ULTIME recours ? ---> ICI
Ex-rédac chef du Blog
Avatar de l’utilisateur
jhowlett468
Ancien du Staff
Ancien du Staff
 
Message(s) : 9304
Inscription : 16 Août 2011, 19:28
Localisation : Xavier's Intitute for Gifted Youngers, 1407 Graymalkin Lane, Westchester County, NY /// La DZ


Retour vers [Perso] Tutoriels / Astuces sur les outils de personnalisation

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité