web-dev-qa-db-fra.com

téléchargement ou configuration automatique photo par utilisateur avatar

Je veux que l’avatar de l’utilisateur soit défini comme une image d’entité, s’il n’ya pas d’image en vedette.

J'essaie de faire comme ça.

function auto_featured_image() {
global $post;

if (!has_post_thumbnail($post->ID)) {
    $attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );
    //$attached_avatar = get_avatar( get_the_author_meta( 'ID' ));
    $attached_avatar = get_avatar(1);

  if ($attached_image) { // set feature image as the 1st image on post.
          foreach ($attached_image as $attachment_id => $attachment) {
               set_post_thumbnail($post->ID, $attachment_id);
          }
  }/*elseif($attached_avatar){ // set feature image as the avatar image.
            foreach ($attached_avatar as $attachment_id => $attachment) {
                set_post_thumbnail($post->ID, $attachment_id);
            }

  }*/
 }
}
 // Use it temporary to generate all featured images
add_action('the_post', 'auto_featured_image');
// Used for new posts
add_action('save_post', 'auto_featured_image');
add_action('draft_to_publish', 'auto_featured_image');
add_action('new_to_publish', 'auto_featured_image');
add_action('pending_to_publish', 'auto_featured_image');
add_action('future_to_publish', 'auto_featured_image');

définir une image caractéristique comme première image sur le post fonctionne bien. mais définir avatar comme image de fonction ne fonctionne pas.

Comment puis-je le faire fonctionner? Merci,

1
pulla

En général, les avatars ne peuvent remplacer les pièces jointes, à moins que vous ne disposiez d'un plug-in qui oblige tous les avatars à être chargés via le processus de téléchargement wordpress sur le site (ou, en d'autres termes, à être inclus dans la médiathèque). Les avatars peuvent être n’importe quelle URL tandis que les pièces jointes ont un identifiant dans votre base de données. Par conséquent, votre tentative de traiter l'avatar en tant que pièce jointe ne peut pas aboutir.

La seule façon de le faire fonctionner est de récupérer d'abord l'image de l'avatar dans le service sur lequel elle se trouve et de créer une pièce jointe. Ensuite, vous pouvez le traiter comme votre code l’imagine.

0
Mark Kaplun