Création d'un module /override du module views_rss

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,

afin de gérer automatiquement la création d'une playlist pour le lecteur audio DewPlayer, je me suis amusé à modifier le module views_rss (qui permet d'ajouter des champs à un flux rss généré par une vue) afin que le fichier .xml généré soit lisible par DewPlayer en tant que playlist.

Seulement voila : comme je le lisais sur plusieurs sites, il serait intéressant de ne pas laisser nommé views_rss, premièrement parceque la finalité du module change du module de base (je comptais par exemple l’appeler dewplayer_playlist_maker) et aussi parce que si jamais par mégarde je venais à mettre a jour le module views_rss, je perdrais toutes les modifications effectuées.

J'ai donc essayé de créer ce nouveau module en renommant toutes les occurrences de "views_rss" en "dewplayer_playlist_maker" dans les noms de fichier et à l'intérieur des fichiers.

mais évidemment ça n'a pas fonctionné (sinon je ne serais pas en train d'écrire ces lignes :D )
ça a fait une erreur au moment de l'activation du module, probablement due au fait que le module views_rss est aussi présent, mais le but est justement de pouvoir avoir les deux modules sans qu'il y ai de problème de compatibilité.

Je voudrais donc savoir quelle solution choisir entre overrider le module views_rss ou créer un nouveau module ?
et aussi comment faire pour l'une ou l'autre de ces solutions!

Merci d'avance!

Forum : 
Version de Drupal : 

Bon, j'ai re-testé, et je n'ai plus de message d'erreur à l'installation du module.
Sauf que ça marche pas!

j'explique :
après avoir modifié à ma guise le module views_rss, je me suis appliqué à modifier tous les fichiers dans l'optique de créer un module nommé dewplayer_playlist_maker. C.A.D. que j'ai renommé dans les fichiers du module toutes les occurrences "views_rss" par "dewplayer_playlist_maker".
j'ai renommé tous les fichiers de la même manière, et j'ai essayé de faire en sorte que toutes les références internes entre les fichiers soient correctes.

Ensuite, ayant uploadé le nouveau module, et l'ayant installé (sans message d'erreur donc cette fois) je vais dans mes views, display: feed, et là, dans le format, où devrait apparaitre une nouvelle option "DewPlayer Playlist Maker", n'apparaissent que les 2 options déjà présentes (celle de base : "RSS Feed" et celle ajoutée par views_rss : "RSS Feed - Fields")

Comme je ne comprends pas assez ce que je fais, si quelqu'un plein de motivation à l'envie de m'aider dans cette quête, voila le module de base : views_rss (http://ftp.drupal.org/files/projects/views_rss-7.x-1.x-dev.zip) et voila le module que je tente de créer : dewplayer_playlist_maker (www.radio-wewewe.fr/sites/default/files/dewplayer_playlist_maker.zip)

je pense que pour quelqu'un qui à l'habitude de créer des modules sous drupal, ça doit pas être bien compliqué, mais pour moi, c'est galère! :)

Merci d'avance!!

Pour ajouter les choix dans Views, il faudrait coder un plugin, ce qui ne se fait pas tout seul, la documentation étant rare, pas à jour et éclatée dans 100 endroits différents. C'est un système dans le système, compliqué mais très intéressant et très puissant.

J'ai codé un module qui inclus un plugin, qui peut servir de source d'inspiration : http://drupal/org/project/sgrid, mais qui ne remplit pas du tout le même genre de fonction. Je ne le cite qu'à titre de module pas trop compliqué permettant de se faire une idée du boulot nécessaire.

Je n'ai pas le temps de creuser plus avant, et ne suis donc pas client pour bosser sur votre problème.

ok, merci pour l'exemple, mais ce que je ne m'explique pas, c'est que si views_rss permet d'ajouter une option dans views, partant de ce même module, je devrais pouvoir afficher une nouvelle option... ?

bref, pas de soucis si tu n'as pas de temps pour bosser dessus, j'avais plus envie de mettre ça en place pour pouvoir proposer ce modules a des gens intéressés que pour moi même!

Le système de plugins de View n'est pas très intuitif à comprendre ; il y a des namespaces, des fichiers chargés automatiquement, d'autres non, certains hooks à utiliser dan certains cas et pas dans d'autres, et je passe sur les surcharges de méthodes parce que tout ça est OO.

Pour dire qu'il y a peu de chance de s'en sortir avec du search/replace : il faut comprendre au moins partiellement l'architecture pour arriver à quelque chose.

Ceci dit, les plugins intégrés à Views sont d'excellents points de départ et on trouve des tutoriaux en cherchant vraiment (vraiment) beaucoup.