Fairweb

Développement WordPress, WordPress Mu, BuddyPress

fw-post-image

Click here for English version

Description

Ce plugin ne fonctionne pas avec une version de WordPress inférieure à 2.9 !
Depuis WordPress 2.9, vous pouvez choisir quelle image représente votre article et sera affichée en miniature. Ce plugin vous permet une rétro-compatibilité pour vos anciens articles sur lequels vous n’avez pas utilisé cette fonctionnalité propre à WordPress 2.9.
Il filtre la fonction the_post_thumbnail(). Si aucune miniature n’est désignée, le plugin recherche la première image qui appartient à l’article. Si aucune image n’appartient à l’article, le plugin scanne alors le contenu de l’article et récupère la première image qu’il trouve dans le contenu.

L’image sera affichée selon les arguments (taille et attributs) passés à l’appel de the_post_thumbnail().

Installation

  1. Uploadez le répertoire `fw-post-image` dans le répertoire `/wp-content/plugins/`
  2. Activez le plugin via le menu Extensions de WordPress
  3. Assurez-vous que votre thème supporte le système de miniatures en ajoutant dans le fichier the functions.php de votre thème add_theme_support('post-thumbnails');
  4. Mettez le template tag `the_post_thumbnail($size, $attr)` dans la boucle (the loop) de votre template là où vous voulez voir apparaître la miniature. Par exemple
    <?php the_post_thumbnail('thumbnail', 'class=alignleft'); ?>

FAQ

Le plugin ne fonctionne pas

  1. Assurez-vous que vous disposez de WordPress 2.9 ou supérieur
  2. Assurez-vous que votre thème supporte le système de miniatures en ajoutant `add_theme_support(‘post-thumbnails’);` dans le fichier functions.php de votre thème.
  3. Ajoutez le template tag `the_post_thumbnail($size, $attr)` dans la boucle (the loop) dans votre thème là où vous voulez voir apparaître la miniature. Par exemple :

<?php the_post_thumbnail('thumbnail', 'class=alignleft'); ?>

Changelog

1.2

  • Evite une erreur sur getimagesize (ligne 92) lorsque le plugin scanne le contenu et trouve une image qui n’existe pas.

1.1

  • Modification du nom du filtre post_thumbnail_html (précédemment post_image_html)
  • Modification du nom de l’action pour begin_fetch_post_thumbnail_html (précédemment begin_fetch_post_image_html)
  • Modification du nom de l’action pour end_fetch_post_thumbnail_html (précédemment end_fetch_post_image_html)

1.0

  • Première release (ne fonctionne plus)

Téléchargement

Téléchargez le plugin depuis le répositoire de plugins de WordPress


Share

30 Commentaires

  1. Pingback : » Développement Wordpress Plugin fw-post-image : pour gérer les miniatures depuis WP 2.9 sur les anciens blogs « Fairweb

  2. Pingback : » Développement Wordpress Mise à jour du plugin fw-post-image « Fairweb

  3. Pingback : » Développement WordPress WordPress 2.9 vient d’arriver « Fairweb

  4. Je viens de l’installer, ça marche nickel !!!!
    Merci

  5. Salut Philippe ! Merci du retour. As-tu signalé sur la page du plugin chez WordPress que ça marche afin que tous les utilisateurs connaissent la compatibilité de ce plugin ? C’est nouveau, autant s’en servir. Vas sur http://wordpress.org/extend/plugins/fw-post-image/ pour indiquer ton contexte en bas dans la colonne de droite. Merci encore.

  6. J’en ai fait un peu de pub sur twitter, et je viens de m’inscrire sur wordpress pour voter.

  7. Hi,
    Very helpful plugin.
    I wondering about the return code of the function, if no images found. Actually there is no return code. May be it is a good idea to return « false » if no image is found..
    if (the_post_thumbnail(‘thumbnail’,  »)===false){ …

  8. Hi Peter,

    Actually, the_post_thumbnail function is not a function I created but a core WordPress function which I am filtering with my plugin. I cannot have it return something else than what the core function is returning.

    I suppose you want to check if the post has an image ? in this case, you should use the core function has_post_thumbnail. However this function is related to the post meta system which makes me think I should go a little bit further with my plugin.

    Furthermore, the_post_thumbnail can only return a string (empty if nothing is found) and should not be tested as it is supposed to display something. However, I suppose you could check if (get_the_post_thumbnail(‘thumbnail’, ») == «  ») as this is what will be echoed in the_post_thumbnail and this sould work with my plugin.

    Please do not hesitate to come back with ideas. This feature is quite new and we can certainly have this plugin behave a better way.

  9. Pingback : Utiliser les vignettes avec WordPress 2.9 | Encre de Lune

  10. Bonjour,
    J’ai installé votre plugin mais aucune miniature ne s’affiche. Les modifications de thème semblent pourtant avoir fonctionné..
    Quel dommage, c’est pourtant exactement le plugin qu’il me faut

  11. Thibaut, il doit y avoir un problème au niveau de ton thème (ou ta version de php). Utilises-tu bien la fonction the_post_thumbnail dans ton thème et as tu bien mis add_theme_support('post-thumbnails'); dans ton fichier funtions.php ?

    As tu bien la version 2.9 de WordPress ?

  12. Bonjour,
    J’utilise actuellement le thème  » Technologic  » sur mon blog généré par wordpress avec logiquement des miniatures intégrés à chaque article et un diapo. Cependant, impossible pour moi de faire apparaitre des images en miniature par article ni dans mon diapo intégré.

    Après avoir passé en revue quelques sites de Thumbnail, on parle d’ajouter une ligne dans le fichier functions.php de mon thème mais étant une quiche dans ce domaine je m’y perd un peu. Je ne sais pas trop où implanter cette ligne…

    Si quelqu’un pourrait être assez gentil pour m’expliquer clairement ?
    Merci d’avance.

  13. Blogger, regarde ma réponse du 18 février à Thibaut juste au dessus de ton commentaire :)

  14. Un grand merci à toi même si je ne découvre ca que maintenant.

  15. Bravo pour ce plug … il fonctionne vraiment bien.
    Juste une question, les images sont ajoutées à la bibliotheque des medias ?

    • Celles qui sont ajoutées depuis l’article selon le système natif de WordPress le sont. Si l’image est scannée dans le contenu, mais n’appartient pas initialement à la bibliothèque, elle n’y sera pas ajoutée. Ce plugin est juste un système d’affichage mais il ne modifie en rien la base de données.

  16. je m’auto-réponds ;)

    A priori non, c’est un add_filter de la fonction post_thumbnail .. si je peux me permettre de proposer quelques evolutions pour ce joli plug :)
    - detecter que l’image soit d’une taille mini (pour exclure les smiley par exemple, qui sont parfois avant l’image principale du billet)
    - envoyer l’image dans la bibliotheque des medias en attachement comme proposé ici : http://www.emmanuelgeorjon.com/wordpress-2-9-une-piste-pour-gerer-les-vignettes-des-anciens-articles-2456/

    Grace à cela on pourrait utiliser un des nombreux « Regenerate Thumbnails » lorsqu’on fait évoluer nos themes (et donc la taille de nos vignettes)

    en tout cas bravo, apres avoir tester plusieurs solutions, celle si est la plus fiable :)

  17. oups … j’avais pas vu la réponse entre mes 2 commentaires :)

  18. Fred, j’ai hélas trop peu de temps en ce moment pour me pencher sur une telle évolution. Le problème, c’est que ce filtre se fait à l’affichage, je ne peux pas lui imposer en plus de scanner la bibliothèque pour voir si la photo existe et de l’enregistrer le cas échéant à chaque affichage. Je pense que la rapidité du site en souffrirait trop. N’oublions pas que ce plugin a pour but de conserver les archives de contenus anciens sur un thème moderne donc les nouveaux contenus ne devraient pas être tellement concernés si on utilise bien les fonctionnalités natives de WordPress. Merci pour toutes ces réflexions et il ne faut pas hésiter à proposer.

  19. ouioui je comprends … je vais me pencher sur la question de mon coté (par contre j’ai également peu de temps ^^ ).
    L’idée c’est pas de scanner toute la bibliothèque a chaque affichage, mais de vérifier si le billet à un attachement ou pas. S’il n’en a pas, lui coller la première image parsée. Ca permettrait de réactualiser en DB les billets antérieurs à WP 2.9
    A partir de là, on peut faire passer l’image dans une moulinette pour la « thumbnailiser » avec les nouvelles dimensions du function.php associées à un nouveau thème.
    je regarde si c’est possible … dés que je peux :)

    Merci pour tes réponses :)

  20. J’ai le cerveau un peu surchargé, Fred, j’avais pas vu les choses comme ça mais c’est une bonne idée. Si tu as du temps et que tu fais évoluer le plugin existant, je rajoute ce que tu auras fait (ton nom en contributeur aussi) et je sors une nouvelle version du plugin. Merci à toi.

  21. OK je regarderai …
    De ce que je comprends, les images sont depuis toujours dans « uploads » de WP_content (quelque soit la version de WP). Par contre, toutes n’ont pas la meta_data qui permet d’ajouter l’image dans « media » et donc de la transformer en thumbnail. Tu le comprends comme ça toi aussi ?

    • Non pour le répertoire d’images, y a une constante qui permet de le déterminer donc si quelqu’un l’utilise dans son paramétrage, faut que ça continue de fonctionner. En fait, faut utiliser au max les fonctions natives de WP qui prennent déjà tout ça en considération. Pour faire ce que tu veux, en fait, c’est ma méthode get_image_in_content () dans le fichier class qu’il faut modifier afin que l’image soit enregistrée comme appartenant à l’article à la fin de l’exécution de la méthode. Le problème, c’est qu’on a pas le fichier $_FILES (avec toutes les infos de l’image) puisqu’on ne provient pas d’un formulaire donc les fonctions de WP vont nous envoyer promener. C’est ambitieux ton idée, mais peut-être qu’on peut contourner le problème. Après, pour remplir des infos, on peut toujours utiliser le nom de l’image à défaut des meta mais c’est surtout de respecter WP et de ne pas se faire jeter par ses restrictions de sécurité. Y a un bout de code à pondre c’est certain.

  22. okok …. j’ai pas encore regardé de ce coté de l’API, jamais trop eu besoin en fait … dés que j’ai plus de temps je regarde. Merci

  23. Bonjour, je me sert de votre plugin, qui fonctionne très bien.
    J’ai juste un bug sur certain navigateur avec les bordures qui sont affichées. Pouvez-vous me dire comment mettre border zéro aux images par défault dans la fonction SVP ?
    Merci

  24. Je précise que je me sert de la fonction dans une newsletter et que je ne peux pas insérer le border=0 dans une fichier css externe (ni interne).

  25. Est-il possible d’avoir plus de détails pour les novices comme moi ?
    Rien ne se passe après avoir fait les modifications sous WP 3.0.3. via l’éditeur.
    Où exactement faut-il insérer ces codes ?

    J’aimerai que ma page d’accueil présente les résumés avec une vignette automatique provenant du post…

  26. Pingback : 3ième article

Laisser un commentaire

Champs Requis *.

*