Passer de l'ancien champ personnalisé à un nouveau post_thumbnails

4

Je viens de prendre le contrôle d'un site WordPress occupé qui compte environ 800 messages à ce jour.

Le site existe depuis assez longtemps pour qu'il ait été lancé avant que post_thumbnails ne soit disponible. Ils ont corrigé cette lacune avec un champ personnalisé appelé "Image" contenant une valeur correspondant au chemin d'accès relatif à l'image, par exemple "/wp-content/uploads/2012/11/image.jpg"

.

Le thème utilise Tim Thumb pour créer différentes tailles de pouce.

J'aimerais sortir de là et utiliser simplement la fonctionnalité post_thumbnails et définir les tailles dans functions.php et supprimer complètement timthumb.php.

J'ai fait une recherche, mais je n'ai pas trouvé le bon moyen de faire le changement. Des suggestions?

    
posée NatalieMac 09.12.2012 - 21:53

1 réponse

5

J'ai eu le même problème la semaine dernière et voici ce que j'ai fait:

if (has_post_thumbnail()) 
    //if the post already has a post thumbnail then just use that
    the_post_thumbnail($size = 'post-thumbnail', $attr = '');
else{
    //if not then convert the custom field to the post thumbnail and display that
    $at_url = get_post_meta($post->ID, 'image', true);
    $at_id = get_image_id_by_url($at_url);
    delete_post_meta($post->ID, 'image');
    if ($at_id){
        set_post_thumbnail($post, $at_id);
        the_post_thumbnail($size = 'post-thumbnail', $attr = '');
    }else{
        //else just display a default image or not :)
    }
}
    
réponse donnée Bainternet 09.12.2012 - 22:22

Lire d'autres questions sur les étiquettes