web-dev-qa-db-fra.com

Comment changer la hauteur de l'image sélectionnée dans le thème des enfants de Twenty Eleven

J'essaie de changer la hauteur de mon image sélectionnée à 350 px dans le thème de mon enfant pour Twenty Eleven.

Quelqu'un peut-il aider?

Remarque: J'utilise Twenty Eleven et il n'y a pas de fichier functions.php dans mon thème enfant, car le fichier functions.php du thème parent est inclus après le fichier functions.php du thème enfant.

Lors de la création d'un thème enfant, vous ne copiez pas le fichier functions.php à partir du thème parent.

Les seuls fichiers que j'ai dans le thème de l'enfant sont style.css, header.css et footer.css.

Je n'ai pas encore ajouté de code pour le changement de hauteur de l'image sélectionnée, car je ne sais pas quoi mettre. J'aimerais obtenir de l'aide.

2
wolf

Si vous souhaitez que le thème enfant ait une taille différente de celle du thème parent, vous devez ajouter un fichier functions.php au thème enfant et ajouter des fonctions spécifiques à ce thème.

à partir de WordPress Codex concernant le thème enfant functions.php

Contrairement à style.css, le fichier functions.php d’un thème enfant ne remplace pas son homologue du parent. Au lieu de cela, il est chargé en plus du fichier functions.php du parent. (Plus précisément, il est chargé juste avant le fichier du parent.)

Supposons donc que vous souhaitiez que la taille de l'image de la fonctionnalité des thèmes enfants soit de 150 x 150 pixels; il vous suffit d'ajouter add_image_size au fichier functions.php de l'enfant.

Un exemple où le parent a déjà un support pour post-thumbnails vous ajoutez simplement la taille de la vignette:

if ( function_exists( 'add_theme_support' ) ) {
    add_theme_support( 'post-thumbnails' );
    set_post_thumbnail_size( 150, 150 ); // default Post Thumbnail dimensions
}

Si vous voulez plus de tailles uniquement sur le thème enfant, ajoutez simplement:

if ( function_exists( 'add_image_size' ) ) { 
    add_image_size( 'category-thumb', 300, 9999 ); //300 pixels wide (and unlimited height)
    add_image_size( 'homepage-thumb', 220, 180, true ); //(cropped)
}

Et puis appelez-le par:

<?php if ( has_post_thumbnail() ) { the_post_thumbnail( 'category-thumb' ); } ?>
2
Pontus Abrahamsson

vous devez créer un thème enfant avec un fichier functions.php et inclure les éléments suivants dans le fichier

function mytheme_setup() {
    set_post_thumbnail_size(624, 260, true);
}
add_action('after_setup_theme', 'mytheme_setup', 20);

le dernier argument de l'appel add_action est la priorité. Comme cet appel sera passé avant celui du thème parent, vous devez vous assurer que la priorité est supérieure à celle du thème parent afin que la fonction de configuration de l'enfant s'exécute après celle du parent (s'ils ont la même priorité). ils seront exécutés dans l'ordre d'enregistrement). Vingt-douze utilisent la priorité par défaut, qui est 10.

1
Claude Vedovini

Si je comprends bien votre situation, voici ce que vous devez faire.

Votre thème parent étant Twenty Eleven utilise cette fonction pour créer une taille d'image personnalisée:

add_image_size( 'small-feature', 500, 300 );

Vous pouvez filtrer la fonction twentyeleven_setup() pour modifier la taille de l'image, mais cela dépasse la portée de mes connaissances en matière de codage. Nous pouvons donc créer notre propre taille d’image et l’utiliser.

  1. Créez un fichier functions.php vide avec le code suivant et déposez-le dans votre répertoire de thème enfant (notez que la nouvelle fonction ci-dessous a 350 et non 300 - ce que vous vouliez):

    <?php
        add_image_size( 'custom-small-feature', 500, 350 );
    
  2. Maintenant, copiez le fichier showcase.php de votre thème parent dans le répertoire de votre thème enfant. Dans ce document, remplacez ceci:

    $thumbnail_size = 'small-feature';
    

    avec ça:

    $thumbnail_size = 'custom-small-feature';
    

Ça devrait le faire.

0
its_me