Comment puis-je définir le logo dans mon thème personnalisé dans Drupal 8?
Je peux voir que Drupal recherche le fichier logo.svg. J'ai un fichier PNG logo.png que j'ai utilisé dans Drupal 7 et je voudrais le réutiliser. Je ne peux pas définir le logo comme paramètre de thème comme dans Drupal 7.
Existe-t-il un moyen via l'interface utilisateur ou du code personnalisé dans le thème pour définir le logo?
8
theme-settings
batigolix
la source
la source
Réponses:
Après Drupal 8.6.x
Dans votre
THEME.info.yml
ajouter une ligne commelogo: logo.png
. Vous devez vider le cache pour Drupal pour détecter ce changement.Avant Drupal 8.6.x
Le fichier de logo par défaut est maintenant devenu
logo.svg
dans Drupal 8. Cependant, pour utiliserlogo.png
ou autre chose, vous devez ajouter une définition de paramètres personnalisés dans votre thème. Pour ce faire, ajoutez les lignes suivantes auconfig/install/THEME.settings.yml
fichier dans votre dossier de thème (remplacez-leTHEME
par le nom d' ordinateur de votre thème).Après cela, vous devez réinstaller votre thème s'il est déjà installé. Le fichier demande à Drupal d'installer les paramètres donnés lors de l'installation du thème. Par conséquent, lorsque vous installez le thème, le
path
paramètre logo est enregistré dans la base de données et le logo par défaut est désactivé par leuse_default
paramètre.la source
drush cim -y --partial --source=path/to/theme/config/install
. Je l'ai utilisé plusieurs fois et cela fonctionne.\Drupal::service('config.installer')->installDefaultConfig('theme', 'theme_name');
Pour les thèmes réguliers, vous pouvez simplement aller à la page d'apparence, aller dans l'onglet Paramètres et désélectionner
Use the logo supplied by the theme
. Le formulaire de téléchargement qui apparaît permet de télécharger une autre image à la place.Si vous êtes en train de créer le thème et que vous souhaitez fournir une image par défaut, veuillez vous reporter à l'une des autres réponses.
la source
Dans le fichier MYTHEME.theme de votre thème, ajoutez le code suivant.
Placez le fichier logo dans le répertoire MYTHEME. Remplacez MYTHEME par le nom de machine de votre thème.
la source
Depuis Drupal 8.6, votre thème contrib ou personnalisé (disons qu'il s'appelle mythemename) peut facilement définir le logo par défaut dans son
mythemename.info.yml
fichier:logo: images/acme-logo-stacked.png
Voir https://www.drupal.org/docs/8/theming-drupal-8/defining-a-theme-with-an-infoyml-file#logo
Notez que pour être utilisé, le
use_default
paramètre du logo doit être vrai.la source
Dans Drupal 8, le logo par défaut doit être un fichier SVG. Vous pouvez toujours utiliser un fichier PNG avec un logo personnalisé, ou si le thème a des paramètres personnalisés supplémentaires pour prendre en charge les logos par défaut non SVG.
C'est ce qui est rapporté dans Le type de logo par défaut pour les thèmes est SVG , un enregistrement de changement pour Drupal 8.0.0-beta5.
Comme indiqué dans le commentaire, vous pouvez également utiliser les éléments suivants dans le fichier de paramètres de thème.
Cela utiliserait automatiquement un logo personnalisé sans le définir à partir de l'interface utilisateur.
la source
Dans le fichier /your-drupal-folder/themes/THEME.theme , ajoutez ceci:
la source
Dans Drupal 8.6, cela peut être défini dans votre fichier .info.yml comme suit:
le chemin du thème est automatiquement ajouté au chemin src
la source
Je ne pense pas que vous ayez besoin de changer le code. Dans certains cas,
Global settings
il se peut que vous vous empêchiez de prendre le logo du thème respectif. Par conséquent, assurez - vousLOGO IMAGE
de paramètres globaux et le logo de votre thème devrait être le même dans Drupal 8 (certains cas).la source
Une option simple consiste à placer le logo dans un bloc personnalisé.
ceci est flexible et particulièrement utile si vous voulez que ce logo apparaisse différemment dans d'autres sections du site
la source