Mettre à jour MT MediaManager pour l’API Amazon
Image via CrunchBase
Comme vous le savez, ce blog utilise MediaManager pour Movable Type afin de gérer la médiathèque. Ce plugin utilise l’API d’Amazon afin de récupérer les informations sur les livres, CD, etc. qui sont représentés par des billets. Malheureusement de temps en temps Amazon change son API… depuis quelques temps les requêtes à l’API doivent inclure un paramètre « Associate Tag » dans les requêtes. Alors comment faire pour que MediaManager connaisse ce nouveau paramètre ? Facile suivez ces instructions détaillées !
Dans sa dernière version, MediaManager – et plus précisément son module MTAmazon –
s’appuie en réalité sur le module CPAN
Net::Amazon. Ce choix de l’auteur de MediaManager permet de ne pas avoir à maintenir
le code d’accès à l’API Amazon contrairement à ce qui était fait dans les premières versions.
Quand on regarde attentivement le contenu du répertoire plugins/MediaManager/extlib/Net
et son fichier Amazon.pm on constate que la version embarquée est la 0.55. La
dernière version disponible au moment où
j’écris ce billet est la 0.61. On va donc commencer par mettre à jour cette version par la
dernière en cours.
- Téléchargez la version 0.61 de Net::Amazon
sur http://search.cpan.org/dist/Net-Amazon/ - Décompressez le fichier dans un coin… il y a un répertoire lib qui contient
un répertoire Net. - Remplacer le répertoire plugins/MediaManager/extlib/Net par le
répertoire lib/Net décompressé précédemment
Cela ne suffit malheureusement pas à faire fonctionner MediaManager car il
faut que le plugin MTAmazon renseigne l’associate tag. Pour cela on va modifier
le fichier plugins/MediaManager/lib/Amazon/Plugin.pm :
Autour de la ligne 56 repérez le code suivant :
my $ua = Net::Amazon->new( token => $config->{accesskey}, secret_key => $config->{secretkey}, locale => $config->{locale}, ($cache ? (cache => $cache) : ()), );
et remplacez le par :
my $ua = Net::Amazon->new( token => $config->{accesskey}, secret_key => $config->{secretkey}, locale => $config->{locale}, associate_tag => $config->{associateid}, ($cache ? (cache => $cache) : ()), );
Sauvegardez… et voilà, votre blog devrait à nouveau pouvoir utiliser MediaManager et son extension MTAmazon !
Did you ever figure out how to print an array using Media Manager? It appears to me that it actually returns the number of strings, not an actual array. So you appear to be on the right track by using setvar command & then looping through it. Though your comment from 2 years ago says you didn’t get it to work. Let me know if you figured it out.
-Tom
No, never… I have to admit I did not give it a lot of time either!