web-dev-qa-db-fra.com

Comment créer un lien vers l'image sélectionnée vers l'URL du fichier multimédia

J'ai activé une fonction lorsque j'ai téléchargé une image, elle crée automatiquement une publication avec cette image comme image sélectionnée.

Maintenant, je souhaite faire un lien entre cette image sélectionnée et celle de l'URL du fichier image/du fichier multimédia afin que les effets lightbox puissent fonctionner. Mais vous ne savez pas comment mettre cela en œuvre? Toute aide sera très appréciable. La fonction que j'ai utilisée est -

add_action('add_attachment', 'create_post');
function create_post( $attach_ID ) {

$attachment = get_post( $attach_ID );

$my_post_data = array(
'post_title' => $attachment->post_title,
'post_type' => 'post',
'post_category' => array('0'),
'post_status' => 'publish'
);
$post_id = wp_insert_post( $my_post_data );

// attach media to post
wp_update_post( array(
'ID' => $attach_ID,
'post_parent' => $post_id,
) );

set_post_thumbnail( $post_id, $attach_ID );

return $attach_ID;
}
1
kalyan

Vous devez modifier votre fichier de modèle themes single.php et modifier la ligne de code appelant l'image sélectionnée. Cela ressemblerait à ceci:

<?php the_post_thumbnail(); ?>

Remplacez-le par ceci ...

<?php 
 if ( has_post_thumbnail()) {
   $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'large');
   echo '<a class="lightboxclassname" href="' . $large_image_url[0] . '" title="' . the_title_attribute('echo=0') . '" >';
   the_post_thumbnail('thumbnail');
   echo '</a>';
 }
 ?>

Assurez-vous ensuite de remplacer le nom de la classe ('lightboxclassname') par le nom de la classe pour lequel votre script Lightbox actuel doit déclencher la fenêtre contextuelle au clic.

Vous pouvez trouver des informations sur WordPress Codex ici: http://codex.wordpress.org/Function_Reference/the_post_thumbnail

1
Matt Royal