Soporte » Plugins y Hacks » Hacks » Problema con reproductor de audio en blog

  • Resuelto margr

    (@mar1984)


    ¡Hola!

    En una entrada de blog, cuando ponemos un enlace a un archivo MP3 pegando simplemente la URL, el reproductor de audio se muestra automáticamente (como documenta WordPress). No se está utilizando [audio], solo la url tal cual.

    Nuestro problema es que no se produce esa visualización en el listado de publicaciones del blog, donde aparece el extracto del contenido, ahí la URL se muestra como texto sin que aparezca el reproductor.

    El problema desaparece cuando se cambia a la plantilla predeterminada de WordPress. El soporte del tema terminó, esta es la idea que he desarrollado y funciona como queremos en este caso, que es ocultar esa url del texto. En el resumen busco la url del mp3 y la borro antes de mostrarlo, quería dejar aquí el código para que me indiquéis si esta solución está bien implementada y en caso de que sea así compartirla con el resto de usuarios

    function delete_mp3_url_extract() {

    global $post;
    $output = $post->post_excerpt;

    if($output == «»)
    $output = $post->post_content;

    //Borra URL mp3
    $output = preg_replace(‘/\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$]+?.(mp3)/i’, », $output);

    $output=strip_shortcodes($output);
    $output=wp_trim_words($output);

    if ( post_password_required($post) ) {
    $output = »;
    }

    return $output;
    }
    add_action(‘get_the_excerpt’, ‘delete_mp3_url_extract’);

Viendo 2 respuestas - 1 de 2 (de 2 total)
  • Moderador LGrusin

    (@lgrusin)

    Gracias @mar1984, pero para eso tienes varias opciones:

    – Añadir el mismo código que genera WordPress con el shortcode correspondiente, [audio] y ponerlo exactamente en el extracto manual. Después sólo tienes que permitir los shortcodes desde el archivo functions.php del tema.
    add_filter('the_excerpt', 'do_shortcode');

    – Crear tu propio extracto con límite de caracteres desde the_content modificando el index.php para que en vez de mostrar el the_excerpt que elimina todas las etiquetas HTML y shortcodes. De esta forma se mostrará el reproductor con su texto asociado.

    Un saludo

    • Esta respuesta fue modificada hace 1 año, 6 meses por  LGrusin.

    Gracias @lgrusin, me apunto estas otras opciones. En nuestro caso decidimos al final ocultar el reproductor, pero la segunda opción la tendré en cuenta por si se cambia de opinión.

    Muchas gracias, un saludo.

Viendo 2 respuestas - 1 de 2 (de 2 total)
  • El debate ‘Problema con reproductor de audio en blog’ está cerrado a nuevas respuestas.