Contenido de carga multimedia personalizado para insertar shortcode de publicación personalizada


12

Estoy trabajando en un complemento que crea una "cartera" de tipo de publicación personalizada junto con un código corto para insertar en cualquier página o publicación.

El shortcode es: [portfolio option1=“1” option2=“0” option3=“1” ]

Y funciona bien, muestra todas las publicaciones personalizadas a través de personalizadas WP_query. Pero quiero ir más allá.

Cree un botón personalizado junto a upload mediapara generar una salida de shortcode de cartera, donde el usuario puede seleccionar qué publicación incluir y definir todas las opciones. Entonces la salida sería:[portfolio option1=“1” option2=“0” option3=“1” ids=“12,311,432,443,” ]

Este es el código de un botón que encontré en wp's media.php:

add_action( 'media_buttons', array( $this, 'media_buttons' ) );

public function media_buttons($editor_id = 'content') {
    $post = get_post();
    if ( ! $post && ! empty( $GLOBALS['post_ID'] ) )
        $post = $GLOBALS['post_ID'];

    wp_enqueue_media( array(
        'post' => $post
        ) );
    $img = '<span class="wp-media-buttons-icon"></span> ';

    echo '<a href="#" id="insert-media-button" class="button insert-media add_media" data-editor="' . esc_attr( $editor_id ) . '" title="' . esc_attr__( 'Add Portfolio' ) . '">' . $img . __( 'Add Portfolio' ) . '</a>';
}

Y hace lo que hace. Pero, ahora, ¿cuál es la mejor manera de modificar el contenido de la ventana creada? Aquí hay una foto de cómo lo veo, es mejor que cualquier descripción:

ingrese la descripción de la imagen aquí ¿Cuán potencialmente complicado y complicado sería lograr esto? No sé en qué dirección debo mirar, ¿es eso posible? Indique cualquier sugerencia sobre dónde debo comenzar a buscar soluciones.

PD: ¿O tal vez estoy equivocado en primer lugar y debería considerar usar ThickBox? Pero quiero mantener el aspecto nativo de la ventana emergente de carga de medios.

¡Salud!

EDITAR:

Bueno, quizás una solución mucho mejor sería usar el patrón de código corto de la galería nativa. No es difícil agregar un nuevo elemento de menú en la ventana de carga de medios, como se explica por ejemplo aquí .

Entonces, la visión final es algo como esto:

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

Debe hacerse con Backbone.js, creo. Pero la pregunta principal, ¿puede manipular publicaciones personalizadas en lugar de imágenes?


1
Creo que probablemente no sea una buena idea usar el editor de medios para administrar publicaciones personalizadas. ¿No podría crear un nuevo tipo de archivo adjunto MIME llamado "cartera" y crear galerías de cartera con el shortcode existente y la administración del editor de medios?
Fabien Quatravaux

Gracias @FabienQuatravaux, no estoy seguro de entender cómo debería funcionar, pero ahora investigaré en esta dirección, ¿podría recomendarme alguna lectura?
Nikita

¿Para qué se usa exactamente el tipo de publicación personalizada? ¿Utiliza el tipo de publicación personalizada solo porque inserta el menú adecuado en el área de administración? ¿Cómo se vincula la imagen a una publicación de cartera (como se muestra en la captura de pantalla)?
Fabien Quatravaux

Utilicé el tipo mime de archivo adjunto personalizado en mi plugin Twikin , pero no estoy seguro de que sea completamente relevante para usted.
Fabien Quatravaux

Respuestas:


1

ingrese la descripción de la imagen aquí

Eche un vistazo a mi guía aquí: http://www.wpexplorer.com/wordpress-tinymce-tweaks/ , para que pueda ver cómo crear una ventana emergente donde puede seleccionar sus opciones en lugar de insertar un código corto. Si descarga mi complemento Free Symple Shortcodes, también puede ver una implementación en vivo.

En lugar de que el usuario seleccione las publicaciones para insertar, agregue una taxonomía de Categorías a su cartera para que el usuario pueda organizar los elementos en categorías. Luego, puede tener un menú desplegable simple en la ventana emergente para que el usuario seleccione de qué categoría extraer publicaciones.

Esto es mucho más fácil de administrar para el usuario final en el futuro, ya que solo tienen que agregar sus publicaciones a la categoría y el shortcode las mostrará automáticamente sin tener que actualizar manualmente el shortcode para incluir las nuevas publicaciones.

  • AJ
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.