Estou trabalhando em um plug-in que cria o tipo de postagem personalizado "portfólio", juntamente com o shortcode para inserir em qualquer página ou postagem.
O código de acesso é: [portfolio option1=“1” option2=“0” option3=“1” ]
E funciona muito bem, mostra todas as postagens personalizadas via personalizada WP_query
. Mas eu quero ir mais longe.
Crie um botão personalizado ao lado de upload media
para gerar uma saída de código curto do portfólio, onde o usuário pode selecionar qual postagem incluir e definir todas as opções. Portanto, a saída seria:[portfolio option1=“1” option2=“0” option3=“1” ids=“12,311,432,443,” ]
Este é o código para um botão que encontrei no arquivo media.php do 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 faz o que faz. Mas, agora, qual é a melhor maneira de modificar o conteúdo da janela criada? Aqui está uma imagem de como eu o vejo, é melhor que qualquer descrição:
Quão potencialmente complicado e complicado isso seria para conseguir? Não sei em que direção devo procurar, isso é possível? Por favor, informe todas as sugestões de onde devo começar a procurar a solução.
PS: Ou talvez eu esteja errado em primeiro lugar e deva considerar o uso do ThickBox? Mas eu quero manter a aparência nativa do pop-up de upload de mídia.
Felicidades!
EDITAR:
Bem, talvez uma solução muito melhor seria usar o padrão de código de acesso da galeria nativa. Não é difícil adicionar um novo item de menu na janela de upload de mídia, como explicado por exemplo aqui .
Portanto, a visão final é algo como isto:
Isso deve ser feito com o Backbone.js, eu acredito? Mas a questão principal, ele pode manipular postagens personalizadas em vez de imagens?
Respostas:
Dê uma olhada no meu guia aqui - http://www.wpexplorer.com/wordpress-tinymce-tweaks/ - para que você possa ver como criar uma janela pop-up onde poderá selecionar suas opções e inserir um código abreviado. Se você fizer o download do meu plugin Free Symple Shortcodes, também poderá ver uma implementação ao vivo.
Em vez de permitir que o usuário selecione as postagens a serem inseridas, adicione uma taxonomia de Categorias ao seu portfólio para que o usuário possa organizar os itens em categorias. Em seguida, você pode ter um menu suspenso simples na janela pop-up para o usuário selecionar de qual categoria puxar as postagens.
Isso é muito mais fácil para o usuário final gerenciar no futuro, pois ele apenas precisa adicionar suas postagens à categoria e o código abreviado as exibirá automaticamente sem a necessidade de atualizar manualmente o código abreviado para incluir as novas postagens.
fonte