Brechcake (interface do shortcode)
Contributors: fusionengineering, mattheu, danielbachhuber, zebulonj, goldenapples, jitendraharpalani, sanchothefat, bfintal, davisshaver, garyj, mte90, fredserva, khromov, bronsonquick, dashaluna, mehigh, sc0ttkclark, kraftner, pravdomil
Tags: códigos de short
Requer pelo menos: 4.5
Testado até: 5.0.3
Tag estável: 0.7.4
Licença: GPLV2 ou mais tarde
Licença URI: http://www.gnu.org/license/gpl-2.0.html
O brechcake faz com que o uso de shortcodes do WordPress um pedaço de bolo.
Descrição
Utilizado ao lado de add_shortcode
, o shortcake fornece uma interface amigável para adicionar um código de short a uma postagem e visualizá-lo e editá-lo de dentro do editor de conteúdo.
Depois de instalar o plug -in, você precisará registrar a interface do usuário para seus códigos de curta Para inspiração, confira exemplos de brechos de brechas na natureza.
Para relatar bugs ou solicitações de recursos, use problemas do GitHub.
Instalação
O shortcake pode ser instalado como qualquer outro plug -in do WordPress.
Depois de fazer isso, você precisará registrar a interface do usuário para o seu código.
Novo em 0.4.0 é a capacidade de anexar funções JavaScript às atualizações de atributos do evento. Os ganchos de ação podem ser usados para mostrar ou ocultar dinamicamente um campo com base no valor de outro ou para implementar regras de validação personalizadas.
Perguntas frequentes
Como faço para registrar a interface do usuário para pares de chave/valor arbitrários como atributos de código de short?
O shortcake não suporta tecla personalizada => pares de valores como atributos de código de curto, porque não é uma ótima experiência do usuário.
Após a atualização para o shortcake 0.7.x, alguns dos campos de interface do código de curta O que posso fazer?
Na versão 0.7.0, atualizamos para a ramificação mais recente da biblioteca SELECT2, que fornece os campos de seleção aprimorados nesses tipos de campo. Isso causa um conflito conhecido com plugins que envolvem versões mais antigas do Select2. (Os plug -ins populares com conflitos conhecidos incluem WooCommerce e Fields Custom Provaned Pro, entre outros.)
Se você achar que está enfrentando conflitos com esses plugins, poderá definir um sinalizador para carregar o Select2 em um espaço de nome distinto, definindo o constante SELECT2_NOCONFLICT
no seu wp-config.php (ou em qualquer lugar que seja definido antes do gancho 'init'.)
define( 'SELECT2_NOCONFLICT', true );
Testes de execução
Temos cobertura de teste para PHP usando phpunit e javascript usando jasmim.
Testes de execução localmente
Os testes de jasmim podem ser executados usando grunt jasmine
e também são executados como parte da tarefa grunt scripts
. Para atualizar os arquivos do WordPress principal usados pelo Jasmine Test Suite, execute grunt updateJasmineCoreScripts --abspath="/path/to/wordpress-install"
.
Capturas de tela
1. Sem shortcake, os códigos de atalho têm uma interface do usuário mínima.
2. Mas com o shortcake, o Tinymce renderizará o código de atalho em uma visão de Tinymce.
3. E adicione uma interface do usuário fácil de usar para editar o conteúdo e os atributos do código de atalho.
4. Adicione novos códigos de atalho à sua postagem através de "Adicionar mídia".
Aviso de atualização
0.4.0
Removemos o calço de compatibilidade para o argumento do atributo placeholder
. Você deve registrar um espaço reservado para o seu campo usando o meta
argumento.
0.3.0
Removemos o calço de compatibilidade para o atributo content
mágico. Se você estava usando isso para apoiar o conteúdo interno da edição, precisará alterar seu registro da interface do usuário para usar inner_content
.
Changelog
0,7,4 (16 de janeiro de 2019)
- Compatibilidade do editor de blocos: impedir que os modelos sejam emitidos antes da cabeça do documento, o que forçou o navegador a entrar no QuirksMode, quebrando alguns estilos CSS no editor de blocos.
- Correção de bug: o bugfix acima.
- Correção de bug: corrija um erro JavaScript que faria com que o elemento de inserção modal esteja em branco se algum código de atalho contiver um campo selecionado sem opções visíveis e nenhum conjunto padrão.
- Correção de bug: corrija um bug no qual o botão "Selecionar arquivos" no controlador de mídia ficou sem resposta depois que um elemento post foi inserido.
- Aprimoramento: adicione um atributo de campo "Permitir claro" a ser passada para selecionar 2 campos (postagem, usuário ou termo selecionar) para que os campos de múltiplas seleções possam ser limpos com um único clique. (Esta opção padrão é desligada e não deve afetar os campos existentes.)
0,7,3 (5 de setembro de 2017)
- Segurança: use o NONCE Validation no Ajax Render Shortcode Returb para proteger contra o CSRF.
- Correção de bug: verifique se o mesmo JS liga os tipos de campo em todos os tipos de campo.
- Correção de bugs: corrige os bugs que afetam vários campos de seleção (os valores não poderiam ser desnecessários uma vez definidos e vários valores padrão não poderiam ser definidos).
- Correção de bug: impedir que os campos codificados contendo caracteres de dois por cento quebrem.
- Correção de bug: corrija alguns problemas em que o estado modal da mídia não foi redefinido corretamente se um código de atalho foi fechado sem economizar.
- Correção de bug: casos de suporte em que existem várias instâncias WP_EDITOR em uma página e verifique se o código de curto -short que está sendo editado é enviado para a página correta.
- Aprimoramento: quando o campo Post_Select estiver selecionando de mais de um tipo de postagem, mostre o tipo de postagem ao lado do nome da postagem para facilitar a seleção.
- Aprimoramento: mostre miniaturas de anexo para qualquer tipo de anexo, não apenas imagens.
- Aprimoramento: adicione mais mensagens de erro mais úteis se não houver códigos de brechas com interface do shortcake.
- Atualize a tradução norueguesa
0,7,2 (24 de abril de 2017)
- Correção de bug: corrige o comportamento no WordPress 4.7.4, onde a edição de um shortcode inseriria um novo código de atalho no editor, em vez de atualizar o código de curta
- Correção de bug: a substituição usada para escapar dos caracteres (%) em atributos apenas substituiu a primeira aparição
- Correção de bug: para selecionar campos com múltiplo = true, permita que várias opções sejam selecionadas por padrão
- Adicionado i18n para todas as cordas no modelo de campo de anexo
- Tradução finlandesa adicionada
0.7.1 (16 de março de 2017)
- Altere a formatação de código de curto para adicionar um espaço antes da barra de fechamento automático.
- Corrija o alinhamento das visualizações de anexo com nomes de arquivos longos.
- Correção de bug: Defina um valor inicial em Selecionar Campos (anteriormente, nenhum valor seria definido para um campo selecionado, a menos que o usuário interaja com o campo).
- Aprimoramento/correção: reutilize uma cópia do modal de mídia e redefina seu estado após o fechamento, em vez de criar uma marcação duplicada cada vez que o modal for acessado.
- Compatibilidade: usa a versão "completa" do select2.js 4.0.3 para evitar conflitos no plug -in com outros plugins que esperam que a versão completa seja inserida.
- Compatibilidade: Adicione o sinalizador
SELECT2_NOCONFLICT
para carregar o Select2 em um espaço para nome exclusivo para evitar conflitos com outros plug -ins que estão carregando select2.js versão 3. - Tradução norueguesa adicionada.
- Múltiplas correções de estilo de codificação.
0,7,0 (18 de novembro de 2016)
- Adiciona botão "Adicionar elemento post" aos botões de mídia - um clique para abrir a lista de shortcode, em vez de clicar no botão "Adicionar mídia" e encontrar "inserir elemento de postagem" no menu.
- Adicionado tipo de campo "Selecionar termo".
- Adicionado tipo de campo "Selecionar usuário".
- Adicionados novos ganchos que disparam na renderização/edição/fechamento de um shortcode, que pode ser usado para tipos de campo que exigem inicialização ou limpeza personalizados de JavaScript.
- Selecione Campos: Adicione suporte completo para vários campos de seleção.
- Selecione Campos: Suporte a ordenação personalizada de opções.
- Selecione Campos: Opção de agrupamento de suporte em
<optgroup>
s, passando -os como uma matriz aninhada. - Campos de anexo: suporta seleção múltipla.
- Campos de anexo: suporta imagens SVG (se os uploads SVG forem ativados por um plug -in ou tema).
- Correção de bug: manipule sinais percentuais ao decodificar campos com
encode=true
especificado. - Correção de bug: corrija o problema onde leva dois cliques em um shortcode no editor para criar o modal de código de shortcods.
- Correção de bugs: corrija o problema ao pesquisar códigos de short pelo nome, onde se vários códigos de shorts iniciarem com a string de pesquisa, apenas o primeiro será retornado.
- Correção de bug: produza apenas um campo de descrição em um atributo se não estiver vazio.
- Compatibilidade: Remova os calços para manusear o modal de mídia nos WP 4.1 e 4.2.
- Compatibilidade: Upgrade Select2 Library para 4.0.3 para evitar conflitos com outros plugins que usam a versão mais recente do Select2.
- Tradução turca adicionada.
- Tradução finlandesa adicionada.
- Adicionado tradução sueca.
- Adicionou tradução húngara.
0.6.2 (12 de novembro de 2015)
- Correção de bugs: ouve o evento "alteração" nos botões de rádio e nas caixas de seleção para garantir que os atributos do código de curto sejam atualizados.
- Correção de bug: garante que
register_shortcode_ui
seja sempre executado antes de ligar para get_shortcodes (). FIXE POST POST Selecione o retorno de chamada do AJAX Ao usar o gancho register_shortcode_ui
.
0.6.1 (9 de novembro de 2015)
- Corrige JavaScript TypeError ao clicar em itens de menu de quadros de mídia.
- Corrige os links no ReadMe.
0.6.0 (2 de novembro de 2015)
- Suporta um
encode=true
para atributos, para permitir suporte limitado de HTML. Os atributos precisam ser executados através shortcode_atts()
para serem decodificados adequadamente. - Define uma constante de
SHORTCODE_UI_DOING_PREVIEW
ao fazer uma visualização de código de atalho, que permite que os retornos de chamada sirvam uma representação diferente do shortcode no tinymce. - Quando um anexo já está selecionado para um atributo de código de curto, a Biblioteca de mídia de abertura incluirá selecionada.
- Alinhamento vertical do ícone limpo na interface do usuário do elemento de inserção.
- Adicionado classes de utilitário CSS a todo o campo HTML. Por exemplo, o campo de anexo agora está envolvido com
shortcode-ui-field-attachment
. - Filtros adicionados para modificar os argumentos da interface do shortcode sobre o registro.
- Limpou o plug -in de exemplo, por isso é uma referência de desenvolvedor muito mais útil.
- Usa o JavaScript Regex do Core para analisar códigos de curto, em vez de manter o regex separado.
- Permite HTML em rótulos e descrições de campo.
- Adicionou tradução dinamarquesa.
- Tradução italiana adicionada.
- Tradução alemã adicionada.
- Integração do núcleo: suporta totalmente o PHP 5.2.
- Correção de bug: persiste atributos de código de short e conteúdo interno quando não há interface do usuário registrado para eles. Anteriormente, eles seriam descartados.
- Correção de bug: Exiba a descrição no campo Selecionar postagem.
- Correção de bug: o evento de alteração do campo de atributo liga -se ao evento
input
em vez de keyup
. - Notas de lançamento completas
0.5.0 (26 de agosto de 2015)
- Campo de anexo: facilitou a alteração do anexo clicando na miniatura; Adicionados metadados de anexo na exibição de campo.
- Campo de anexo: refatorado JavaScript para acionar eventos.
- Adicionado um tipo de entrada
range
. - Introduziu um gancho
register_shortcode_ui
para plugins para registrar mais com segurança a interface do usuário. - A guia de visualização removida para aproximar o usuário do ShortCake, no qual a visualização visual em linha é preferida em uma visualização separada no modal de mídia.
- Limpo JavaScript usando Jshint.
- Adicionou tradução russa.
- Tradução portuguesa adicionada.
- Adicionado PHPDOC a todas as classes.
- Correção de bug: persiste no
inner_content
para um código de curta, mesmo quando a interface do usuário não está definida. - Correção de bug: pressionar o ESC em uma visualização de bordo agora fechará o modal. (Corrigido no núcleo.)
- Correção de bug: pressionar Excluir quando uma visualização de brechake é selecionada no editor visual agora resulta no shortcode sendo removido. (Corrigido no núcleo.)
- Correção de bug: A função 'pesquisa' de brechcake não é mais conflita visualmente com a grade de código de shortcode em tamanhos de tela pequena. (Corrigido no núcleo.)
- Correção de bug: use
get_post_type()
em vez de get_current_screen()->post_type
, então o contexto é definido corretamente no front-end. - Notas de lançamento completas
0.4.0 (22 de junho de 2015)
- Usando os gancho Carldanley/WP-JS para uma API básica para registrar retornos de chamada JS nos atributos de código de atalho.
- O campo de fixação usa um indicador de carregamento quando a visualização para um anexo está carregando.
- Adicionou tradução chinesa.
- Tradução francesa adicionada.
- Adicionado tradução em espanhol.
- Correção de bug: evita fatal quando o editor é carregado no contexto do front -end.
- Correção de bug: o campo de cores também suporta
meta
argumentos. - Correção de bug: remove o espaço em branco à direita de códigos de short sem atributos.
- Correção de bug: remove Slash duplo no caminho CSS do editor.
- Notas de lançamento completas
0.3.0 (27 de abril de 2015)
- Breaking Change : removemos o calço de compatibilidade do atributo
content
mágico. Se você estava usando isso para apoiar o conteúdo interno da edição, precisará alterar seu registro da interface do usuário para usar inner_content
. - Novo tipo de campo
post_select
para selecionar de uma lista de postagens. Suporta um parâmetro query
adicional para modificar a consulta de pesquisa. - Usando um novo argumento
post_type
, a interface do shortcode pode ser registrada para tipos de postagens específicos. Isso é útil se você deseja a interface do usuário para um determinado shortcode para aparecer apenas em tipos de postagens específicos. - Para cada atributo de código de curto, um
meta
-argumento pode ser especificado para adicionar atributos arbitrários de HTML ao campo. Adicionamos um calço de compatibilidade para o argumento placeholder
existente. Este calço de compatibilidade será removido em v0.4. - Ao inserir um shortcode, a interface do usuário mostra uma mensagem útil quando o shortcode não possui atributos para configurar. Anteriormente, o usuário recebia uma tela relativamente em branco.
- Nosso plug -in de exemplo pode ser ativado através do Admin WordPress.
- Clicar em "Inserir elemento de postagem" no menu esquerdo atua efetivamente como botão de volta para selecionar um shortcode.
- A linguagem em torno da experiência de edição reflete o código de atalho que você está editando. Por exemplo, com um código de atalho PullQuote, "Editar elemento post" se torna "Editar PullQuote".
- Adicionou tradução holandesa.
- Os arquivos JavaScript de origem foram movidos para
js/src
para obter clareza entre a fonte e o JavaScript construído. - Os arquivos PHP são digitalizados usando php_codesniffer.
- Correção de bug: os atributos de código de curto não cotados são suportados adequadamente.
- Correção de bug: o campo de anexo registra corretamente as dependências.
- Correção de bug: a experiência "Inserir elemento post" deve funcionar quando o editor visual estiver desativado. O shortcake é apenas vagamente acoplado ao tinymce.
- Correção de bug: os estilos do editor são carregados no
after_setup_theme
para evitar fatais. - Notas de lançamento completas.
0.2.3 (8 de abril de 2015)
- Corrija o problema de compatibilidade com versões anteriores do WP 4.1, restaurando argumentos passados para o SHIM de compatibilidade com Tinymce View.
0.2.2 (6 de abril de 2015)
- Atualize os argumentos passados para a renderização de visualização TINYMCE para compatibilidade WP 4.2. O argumento aprovado anteriormente não era necessário, portanto, a remoção não quebra a compatibilidade com versões anteriores.
0.2.1 (18 de março de 2015)
- Certifique -se de que o uso do jQuery respeite o modo jQuery.noconflict () no WP.
0.2.0 (18 de março de 2015)
- JS abstraído usando o BrowSerify.
- Aprimoramentos para "Adicionar elemento post": códigos de shortcados classificados em ordem alfabética; Pesquisa com base no rótulo.
- Muito mais fácil selecionar visualizações de código de short que incluem iframes.
- WordPress 4.2 Compatibilidade.
- Adicionado o selecionador de cores à lista de campos em potencial.
- Correção de bug: IE11 Compatibilidade.
- Correção de bug: o campo da caixa de seleção agora pode ser desmarcado.
- Notas de lançamento completas.
0.1.0 (23 de dezembro de 2014)
- Suporta todos os tipos de entrada HTML5 para campos de formulário.
- Guia de visualização de código de curto na experiência de edição. }* Re-rotulou a interface do usuário em torno de "elementos de postagem", que é mais descritivo do que "itens de conteúdo".
- Muitas correções de bug.
- Notas de lançamento completas.