Soporte » WordPress Avanzado » Obtener lista de imagenes de galería

  • Resuelto kmytort

    (@kmytort)


    Hola, e investigado en muchas partes y no logro obtener la lista de imágenes de la galería de wordpress, lo único que logro es obtener las imágenes que se adjuntan o el attachmen option, no logró obtener todas las imágenes que adjunte desde la galleria del post hay alguna forma de obtener todas las imágenes que llamo a la libreria de la galeria del post y no solo las adjuntas o attachment options
    este es mi codigo

    function slideshowGallery() {
        global $post;
        $images = get_attached_media( 'image', $post->ID );
        $slides = '';
        if ( $images ) {
            foreach ($images as $image) {
                $image_title = $image->post_title;
                $image_html = wp_get_attachment_image($image->ID, 'medium');
                $image_url = wp_get_attachment_url($image->ID, false);
                $slides .= "<li class='slide'><a href='$image_url' title='$image_title'>$image_html</a></li>";
            }
            echo $slides;
        }
    }
    slideshowGallery();
Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • Buenas,

    ¿Con que plugin haces la galería de WordPress? De entrada WordPress no utiliza galerías para los posts.

    Si estas utilizando la opción de añadir media para crear la galería deberías utilizar esta función https://developer.wordpress.org/reference/functions/get_post_gallery_images/

    Espero que con estas opciones encuentres lo que necesitas y vuelvas al foro a comentar tus avances. Y cerrarlo en caso de que sea positivo.

    Salut!

    kmytort

    (@kmytort)

    Hola, lo siento no vi este mensaje antes, necesitaba otra estructura y con otras clases, mi solución fue javascript mover nodos y ponerlos y organizar toda esta parte,
    y solo pude imprimirlo con esta opción para poder manipularlo mejor,
    pero creo que la opción que me dabas era mejor no tuve tiempo de probarla, pero mañana voy hacer la prueba.

    Gracias

    function awp_get_excerpt($post=false) {
    	if (!$post) { 
    		global $post;
    	}
    	if (!$post) { return ''; }
    	$excerpt = '';
    	$blocks = parse_blocks($post->post_content);
    	if (count($blocks) == 1 && $blocks[0]['blockName'] == null) {  // Non-Gutenberg posts
    		$excerpt = get_the_excerpt($post->ID);
    	} else {
    		foreach ($blocks as $block) {
    			if ($block['blockName'] == 'core/gallery') {
    				$excerpt = $block['innerHTML'];
    				break;
    			}
    		}
    	}
    	return $excerpt;
    }

    if ( ! awp_get_excerpt() ) :?>

    Moderador josearcos

    (@josearcos)

    Marcamos el debate como resuelto.

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • Debes estar registrado para responder a este debate.