Contenuti di caricamento di contenuti multimediali personalizzati per l'inserimento di codici brevi personalizzati per i post


12

Sto lavorando a un plugin che crea un tipo di post personalizzato "portfolio" insieme a shortcode da inserire in qualsiasi pagina o post.

Lo shortcode è: [portfolio option1=“1” option2=“0” option3=“1” ]

E funziona benissimo, mostra tutti i post personalizzati tramite personalizzato WP_query. Ma voglio andare oltre.

Crea un pulsante personalizzato accanto upload mediaper generare un output shortcode del portfolio, in cui l'utente può selezionare quale post includere e definire tutte le opzioni. Quindi l'output sarebbe:[portfolio option1=“1” option2=“0” option3=“1” ids=“12,311,432,443,” ]

Questo è il codice per un pulsante che ho trovato nel media.php di wp:

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>';
}

E fa quello che fa. Ma ora qual è il modo migliore per modificare il contenuto della finestra creata? Ecco una foto di come la vedo, è meglio che qualsiasi descrizione:

inserisci qui la descrizione dell'immagine Quanto potenzialmente complicato e difficile sarebbe questo da realizzare? Non so in che direzione dovrei guardare, è possibile? Si prega di avvisare eventuali suggerimenti dove dovrei iniziare a scavare per la soluzione.

PS: O forse mi sbaglio in primo luogo e dovresti considerare l'utilizzo di ThickBox? Ma voglio mantenere l'aspetto nativo del popup di caricamento dei media.

Saluti!

MODIFICARE:

Bene, forse una soluzione molto migliore sarebbe quella di utilizzare il modello di shortcode della galleria nativa. Non è difficile aggiungere una nuova voce di menu nella finestra di caricamento dei file multimediali, come spiegato qui ad esempio .

Quindi la visione finale è qualcosa del genere:

inserisci qui la descrizione dell'immagine inserisci qui la descrizione dell'immagine

Deve essere fatto con Backbone.js credo? Ma la domanda principale, può manipolare post personalizzati anziché immagini?


1
Penso che probabilmente non sia una buona idea usare l'editor multimediale per gestire post personalizzati. Non potresti creare un nuovo tipo di mime allegato chiamato "portfolio" e creare gallerie di portfolio con lo shortcode esistente e la gestione dell'editor dei media?
Fabien Quatravaux,

Grazie @FabienQuatravaux, non sono sicuro di capire come dovrebbe funzionare, ma ora indagherò in questa direzione, potresti consigliarmi di leggere?
Nikita,

A cosa serve esattamente il tipo di post personalizzato? Utilizzi il tipo di post personalizzato solo perché inserisce il menu corretto nell'area di amministrazione? Come si collega l'immagine a un post di portfolio (come mostrato nello screenshot)?
Fabien Quatravaux,

Ho usato il tipo mime di allegato personalizzato nel mio plugin Twikin , ma non sono sicuro che sia completamente pertinente per il tuo caso d'uso.
Fabien Quatravaux,

Risposte:


1

inserisci qui la descrizione dell'immagine

Dai un'occhiata alla mia guida qui - http://www.wpexplorer.com/wordpress-tinymce-tweaks/ - così puoi vedere come creare una finestra pop-up in cui puoi selezionare le tue opzioni piuttosto che inserire un shortcode. Se scarichi il mio plugin Free Symple Shortcodes puoi vedere anche un'implementazione live.

Invece di chiedere all'utente di selezionare i post da inserire, aggiungi invece una tassonomia di categorie al tuo portfolio in modo che l'utente possa organizzare gli articoli in categorie. Quindi puoi avere un semplice menu a discesa nella finestra popup per consentire all'utente di selezionare la categoria da cui estrarre i post.

Questo sarà molto più facile da gestire per l'utente finale in futuro poiché deve solo aggiungere i propri post alla categoria e il codice funzione li visualizzerà automaticamente senza dover aggiornare manualmente il codice breve per includere i nuovi post.

  • AJ
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.