Cómo extender la funcionalidad de ENLACE A EN LA CONFIGURACIÓN DE LA PANTALLA DE ADJUNTO

4

En WP 3.4.x y versiones anteriores, fue posible agregar un botón al administrador de medios jugando en un filtro attachment_fields_to_edit . Por ejemplo, un complemento podría, cuando descubrió que un elemento era un archivo de audio, agregar un poco de HTML para un botón adicional al campo url, como tal.

 $playertag = "[audio $url]";
 $fields['url']['html'] .= 
      "<button type='button' class='button data-link-url='$playertag' urlaudioplayer audio-player-$postid'>Audio Player</button>"; 

El nuevo administrador de medios ha cambiado el conjunto de botones que estaban en esa etiqueta html en un menú desplegable: un elemento <select .../> . El código html se emite en media-template.php. El nuevo código aún llama a attachment_fields_to_edit filtros, pero no pasa ningún campo.

¿Hay alguna forma de extender este elemento de selección sin hackear el núcleo (lo cual no haré)? ¿Es posible escribir un poco de js que usará jQuery para agregarle un elemento?

    
pregunta O. Jones 15.12.2012 - 01:28

1 respuesta

2

Sí, es posible de la misma manera que antes. No sé por qué crees que el filtro ya no está pasando los parámetros.

add_filter('attachment_fields_to_edit', 'user16975_edit_fields', 10, 2);
function user16975_edit_fields($form_fields, $attachment){

    // check for an audio attachment
    if ( substr($attachment->post_mime_type, 0, 5) == 'audio' ) {
        $playertag =  $playertag = "[audio ".wp_get_attachment_url($attachment->ID)."]";
        $form_fields["audioplayer"] = array(
            "label" => "Audio player",
            "input" => "html",
            "html" => "<button type='button' class='button' data-link-url='$playertag' audioplayer='audio-player-{$attachment->ID}'>Audio Player</button>",
        );
    }

    return $form_fields;
}

Aquí está el resultado:

    
respondido por el Fabien Quatravaux 01.07.2013 - 03:05

Lea otras preguntas en las etiquetas