Esse CSS Stuffing funciona, mas é uma boa prática?


9

Estou tentando incluir um css dinâmico no meu plug-in, estive pesquisando em qualquer lugar, mas não encontrei nenhum caso semelhante ao que faço. E o que eu costumo fazer é adicionar um arquivo css diretamente no final do meu arquivo php do plugin após o fechamento da tag php ?>sem adicionar outros itens, como chamar wp head etc.

Aqui está o exemplo do código que eu coloquei diretamente no final do arquivo do meu plugin:

<style type="text/css">

   .innertrow { background-color: <?php get_options('css_value');?>}

</style>

Essa é uma boa prática?

Respostas:


11

Você pode usar wp_add_inline_style () para adicionar a uma folha de estilo que você já definiu, como no seu plug-in. Dessa forma, uma tela de opções ou outras configurações do usuário podem afetar a saída final do estilo.

Isso pode se tornar muito tedioso, no entanto, dependendo de quantas mudanças você está dando ao usuário sobre o poder. No entanto, é a "melhor prática", tanto quanto eu sei.


11
E há funções que eu não conheço no WP. :) +1 Claro.
gmazzap

2

Claro que não é uma boa prática, pois será considerado como erro de plugin pelo Wordpress. Ele exibirá uma mensagem de erro na ativação do plug-in da seguinte maneira:

The plugin generated xxx characters of unexpected output during activation. If you notice headers already sent messages, problems with syndication feeds or other issues, try deactivating or removing this plugin.

Onde xxx é a quantidade de códigos + espaços que você coloca após a ?>tag. É o mesmo que localizar espaço (s) ou códigos não aceitos antes da primeira <?phptag no seu plug-in principal e ou depois dele.


1

Eu acredito que é possível escrever dinamicamente um arquivo CSS usando PHP, mas você precisa descobrir mais sobre isso, eu mesmo não sei muito sobre ele. Estou planejando fazê-lo em breve, pois notei que as pessoas colocavam MUITO CSS no tema em que eu estava trabalhando. É uma prática ruim de várias maneiras, então é melhor evitar sempre que possível. Infelizmente, existem apenas 24 horas em um dia ...!


1

Se você precisar adicionar CSS dinâmico e ainda não tiver uma folha de estilo adicionada à qual deseja anexá-la, poderá conectá-la e produzi-la no wp_headgancho de ação:

<?php
function wpse_111373_output_plugin_css() {
    ?>
    <style type="text/css">
        .innertrow { background-color: <?php get_option('css_value'); ?>;}
    </style>
    <?php
}
add_action( 'wp_head', 'wpse_111373_output_plugin_css' );

Não basta adicionar o CSS ao final do seu arquivo de plug-in. No entanto, na medida em que essa é uma "melhor prática", eu não sei. :)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.