J'ai le code suivant:
if (themedy_get_option('product_gallery')) { add_action('genesis_post_content', 'themedy_product_images', 1); }
function themedy_product_images() { ?>
<?php
global $post;
$images = get_children( array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'numberposts' => 999, 'order'=> 'ASC', 'orderby' => 'menu_order' ) );
if ( $images ) { ?>
<div class="twocol-one">
<?php echo get_the_post_thumbnail( $post->ID, 'product-400x600' ); ?>
<div class="product_images">
<div class="container">
<?php
foreach ( $images as $image ){
$gallery_image_info = wp_get_attachment_image_src( $image->ID, 'full' );
$gallery_image = $gallery_image_info[0];
$gallery_thumb_info = wp_get_attachment_image_src( $image->ID, 'Gallery Thumb' );
$gallery_thumb = $gallery_thumb_info[0];
$gallery_image_alt = get_post_meta($image->ID, '_wp_attachment_image_alt', true) ? trim(strip_tags( get_post_meta($image->ID, '_wp_attachment_image_alt', true) )) : trim(strip_tags( $image->post_title ));
echo '<a href="'.$gallery_image.'" title="'.$gallery_image_alt.'" class="fancybox" rel="single-gallery"><img src="' . $gallery_thumb . '" /></a>';
}
?>
</div>
</div>
</div>
Numéro 1: Où il est dit:
<?php echo get_the_post_thumbnail( $post->ID, 'product-400x600' ); ?>
_ {Il faut que je le dise} _
<a id="product" class="MagicZoomPlus" href=" <?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?> " rel="selectors-class: Active"><img src=" <?php echo get_the_post_thumbnail( $post->ID, 'product-400x600' ); ?> " alt="" /></a>`
Là où il fait écho aux images (grand et produit-400x600), j'ai besoin de n'écho que l'url img, sans tous les autres html qui l'accompagnent. Comment puis-je réparer mon code ci-dessus pour qu'il soit restitué comme je le souhaite?
Numéro 2: Où il est écrit:
echo '<a href="'.$gallery_image.'" title="'.$gallery_image_alt.'" class="fancybox" rel="single-gallery"><img src="' . $gallery_thumb . '" /></a>';
C'est une boucle de toutes les autres images de cette galerie. Pour chaque image de la boucle .. il faut que je le dise _
<a class="Selector" href="<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>" rel="zoom-id:product" rev="<?php echo get_the_post_thumbnail( $post->ID, 'medium' ); ?>"><img src="' . $gallery_thumb . '" alt="" /></a>
Encore une fois, même problème que le n ° 1 où j'en ai besoin pour faire écho à l'image url/src.
La façon dont cela devrait fonctionner est comme dans cet exemple: http://www.magictoolbox.com/magiczoomplus/
Merci d'avance!
Modifier
Ma première tentative selon la suggestion de Brian ci-dessous pour l'image sélectionnée fonctionne!
<?php
$image = wp_get_attachment_image_src(get_post_thumbnail_id(), 'full');
$image2 = wp_get_attachment_image_src(get_post_thumbnail_id(), 'product-400x600');
?>
<?php echo '<a id="product" class="MagicZoomPlus" href="'.$image[0].'" rel="selectors-class: Active"><img src="'.$image2[0].'" alt="" /></a>'; ?>
La question est de savoir comment procéder pour les éléments de la galerie d'images.
Voici les fonctions que vous devez connaître:
Exemple sans taille:
echo wp_get_attachment_url(get_post_thumbnail_id());
Exemple avec taille:
$image = wp_get_attachment_image_src(get_post_thumbnail_id(), 'large');
echo $image[0]; //as HREF in your A tag
Vous pouvez récupérer toutes les images de la galerie comme suit:
$args = array(
'order'=> 'ASC',
'post_mime_type' => 'image',
'post_parent' => $post->ID,
'post_type' => 'attachment'
);
$attachments = get_children( $args );
foreach($attachments as $attachment){
//use $attachment->ID to retrieve attachment information
$image = wp_get_attachment_image_src($attachment->ID, 'large');
}