🌍
Français
J'utilise ce code avec la version 1.7.2 de PWG et la version 1.9.2 de SPIP.
Dans le squelette, j'insère la balise #PWGIMAGE à l'endroit où je souhaite disposer de la miniature.
A insérer dans le fichier mes_fonctions.php dans votre dossier squelette :
// ===================================================================================================================== // Balise : #PWGIMAGE // ===================================================================================================================== // Auteur : PlisNuX // Inspiré de : http://phpwebgallery.net/doc/doku.php/fr:fonctionnalites:web_services // Fonction : affiche une image aléatoire // Parametre: Aucun // Licence : GPL // ===================================================================================================================== function balise_PWGIMAGE($params) { $params->code = 'fnc_pwg()'; $params->interdire_scripts = true; return $params; } function fnc_pwg() { // Plus d'explications ici : http://phpwebgallery.net/doc/doku.php/fr:fonctionnalites:web_services // initialisation de la session $session = curl_init(); /* (a) */ // configuration des options /* (b) */ curl_setopt($session, CURLOPT_URL, "http://photos.mondomain.tld/ws.php?format=php&method=pwg.categories.getImages&recursive=true&per_page=1&order=random&f_with_thumbnail=true&partner=laclepartenaire"); curl_setopt($session, CURLOPT_HEADER, 0); curl_setopt($session, CURLOPT_RETURNTRANSFER, true); // exécution de la session $response = curl_exec($session); /* Ici nous réceptionnons le tableau sérialisé de la requête (c) */ $thumbc = unserialize($response); /* que nous "désérialisons" (d) */ curl_close($session); /* fermeture des ressources (e) */ if ($thumbc["stat"]=='ok') { /* Réponse correcte ? (f) */ for ($i=0;$i<$thumbc["result"]["images"]["count"];$i++) { /* (g) */ $picture = $thumbc["result"]["images"]["_content"][$i]; /* (h) */ // dans picture nous avons : id, width, height, hit, file, name, comment, tn_url, element_url /* (i) */ $HTML_txt = '<a href="http://photos.mondomain.tld/picture.php?/'.$picture['id'].'" title="'.$picture['name'].'"> <img src="'.$picture['tn_url'].'" alt="'.$picture['name'].'" /></a><br /><br />'; return $HTML_txt; } } else { return 'La galerie est momentanément indisponible'; } }
Voilà !
Si ça peut servir un jour :)