¿Cómo puedo vincular las miniaturas de las galerías a diferentes URL utilizando la galería nativa de wp?

3

¿Es posible vincular cada miniatura de galería si uso la galería nativa de WordPress integrada?

    
pregunta fuxia 26.05.2012 - 05:12

1 respuesta

1

Puedes filtrar 'post_gallery' . Si no devuelve una cadena vacía, WordPress usará su valor de retorno y no construirá la galería con el código nativo. Pero luego tienes que reconstruir todo el código de la galería ...

La segunda opción: Enmascara el shortcode de la galería y filtra solo 'wp_get_attachment_link' .

Código de muestra (no probado, solo una idea):

add_action( 'after_setup_theme', 'wpse_53368_replace_gallery_shortcode' );

/**
 * Replace the default shortcode handlers.
 *
 * @return void
 */
function wpse_53368_replace_gallery_shortcode()
{
    remove_shortcode( 'gallery' );
    add_shortcode( 'gallery', 'wpse_53368_gallery_shortcode' );
}

function wpse_53368_gallery_shortcode( $attr )
{
    // Add a filter for attachment links:
    add_filter( 'wp_get_attachment_link', wpse_53368_gallery_link_filter, 10, 6 );

    // Let WordPress create the regular gallery …
    $gallery = gallery_shortcode( $attr );

    // Remove the filter for attachment links:
    remove_filter( 'wp_get_attachment_link', wpse_53368_gallery_link_filter, 10 );

    return $gallery;
}
function wpse_53368_gallery_link_filter( $full_link, $id, $size, $permalink, $icon, $text )
{
    // Inspect the attachment by its ID and build a link.
    return $link;
}

Consulte ¿Cómo puedo agregar un campo de URL a la ventana de archivos adjuntos? para ver un ejemplo de cómo almacenar otra URL en los metadatos del archivo adjunto.

    
respondido por el fuxia 26.05.2012 - 05:45

Lea otras preguntas en las etiquetas