web-dev-qa-db-fra.com

Quel est le meilleur moyen de fournir aux utilisateurs de plugins un moyen de personnaliser les styles

Je travaille sur un plugin destiné à être rendu public, c’est un plugin très simple qui inclut un seul élément html dans la page html. Je peux faire beaucoup de choses pour permettre aux utilisateurs de personnaliser son apparence: 1. Laissez-les remplacer un CSS par défaut inclus en tant que configuration de plug-in (sur un écran de gestion) 2. Exigez qu'ils modifient leur ce plugin) Et probablement une taxe plus

l'option 1 semble être la plus conviviale des utilisateurs, puisqu'elle permet à tout administrateur de modifier le style sans avoir besoin d'accéder à du code. Mais je me demande s'il pourrait y avoir un meilleur moyen?

Est-il possible de fournir un fichier CSS par défaut pour le plug-in, indépendant du thème et modifiable via un écran de gestion? Le style doit persister quel que soit le thème choisi.

Des pensées?

3
Moshe Eshel

C'est possible? Oui.

Option 1

Enregistrez et mettez en file d'attente votre feuille de style par défaut. La feuille de style de thème peut ensuite être utilisée pour remplacer les styles que vous avez mis en œuvre.

function register_my_styles() {
    wp_register_style( 'default-style', plugins_url('default.css', __FILE__) );
    wp_enqueue_style( 'default-style' );
}
add_action( 'wp_enqueue_scripts', 'register_my_styles' );

Option 2

Enregistrez les options personnalisées dont vous avez besoin sur une page d’options de plug-in spécifique ou à l’aide de l’API Paramètres de WordPress . Exportez ensuite ces styles dans un ancien bloc de script standard dans l'en-tête du thème.

function output_custom_scripts() {
    ?><style type="text/css">
        <?php echo get_option( 'custom_css' ); ?>
    </style><?php
}
add_action( 'wp_head', 'output_custom_scripts' );
1
EAMann