Talán belebotlottál már abba, hogy témafejlesztői szerepkörben alapkövetelmény, hogy a webes teljesítményt szem előtt tartva építsd fel a témádat. Ez azt jelenti, hogy ügyelj arra, hogy a témádban kiadott képek ne “teljes” méretűek legyenek, ha esetleg 100 kilobájtnál nagyobbak.

Az, hogy kihasználd a WordPress HTML képattribútum srcset funkcióját, egy másik ok arra, hogy a wp_get_attachment_image() funkciót használd a képek kiadásakor.

Egy másik felhasználási mód a blogbejegyzések kiemelt képekkel történő kiadása lenne. Témafejlesztőként meg akarod győződni arról, hogy vagy megadod: (a) az egyik alapértelmezett poszt miniatűr méretét, vagy (b) létrehozza a saját egyéni poszt miniatűr méretét.

Vannak olyan esetek, amikor nem feltétlenül kell egyéni poszt miniatűr méretet használnia. Ehelyett azonban használhat egy alapértelmezett poszt miniatűr méretét, amely tökéletesen megfelel az Ön igényeinek.

A következő alapértelmezett miniatűrméretek állnak az Ön rendelkezésére:

  • thumbnail (a 150px × 150px-es méretet használja)
  • medium (a 300px × 300px-es méretet használja)
  • medium_large (a 768px × 0px-es méretet használja)
  • large (az 1024px × 1024px-es méretet használja)

Ezekben az esetekben könnyen megadhatja, ha hasonló méretet szeretne használni ezen alapértelmezett miniatűrméretek bármelyikéhez. Mindössze annyit kell tenned, hogy a fenti karakterláncok bármelyikét használod a the_post_thumbnail() függvény $size paraméterében.

Azt fogod észrevenni, hogy ezek az alapértelmezett post miniatűrméretek szinte mind négyzetre vágott képek. Ez valószínűleg annak köszönhető, hogy a maximális tér, amelyből egy kép kiadható – egy négyzet. A hely maximális kihasználása érdekében az a döntés született, hogy ezek az alapértelmezett poszt miniatűrméretek négyzet alakú képek legyenek.

Mikor kell egyéni poszt miniatűrméretet használni

Vannak azonban olyan esetek, amikor nem négyzet alakú képet kell kiadni. Vegyük például azt, hogy a the_post_thumbnail() funkció segítségével egy kiemelt képet kell hozzáadni a blog egyetlen cikke fölé.

A következő kódot használhatod, amely egy 1024px × 768px méretű kiemelt képet ad ki a cikkedről:

add_image_size( 'single-feature', 1024, 768, true );

És gyorsan beazonosítva, hogy ez mit jelent laikus nyelven:

  • add_image_size() – létrehoz egy egyéni poszt miniatűr méretét
  • ‘single-feature’ – paraméter $name, csak az egyéni poszt miniatűr méretének neve
  • 1024 – paraméter $width, az egyéni poszt miniatűr méretének szélessége
  • 768 – paraméter $height, az egyéni poszt miniatűr méretének magassága
  • true – paraméter $crop, azt jelenti, hogy (a) keményen vágja, vagy (b) méretezze a képet az egyéni poszt miniatűr méretére. További információ a WP Dev docs-ban

Kiegészítő információként: a példából a megadott szélességet és magasságot választottuk (1024 × 768), mivel ezek az általánosan használt méretek a kiemelt képekhez. Ez azonban nem jelenti azt, hogy nem használhatsz más méretet. Győződj meg róla, hogy mi illik a legjobban a témád kialakításához, és azt használd.

Hogyan frissítheted az egyéni bejegyzések miniatűrjeit

Amint tesztelni fogod az új képméreteket a WordPress képeidhez, észre fogod venni, hogy gondot okozhat a szélesség és a magasság frissítése az egyéni bejegyzések miniatűrjeinek $name méretének módosítása nélkül.

Tegyük fel például, hogy megvan a régi méret:

add_image_size( 'single-feature', 1024, 768, true );

De most frissítened kell ennek az “egyképes” miniatűr képméretnek a méretét a következőkre:

add_image_size( 'single-feature', 1366, 768, true );

Láthatod, hogy a változás a szélességben történt 1024-ről 1366-ra. De ahogy frissíted a sablont, amelyben ezt a méretet kellene megjeleníteni, továbbra is 1024-es szélességgel jeleníti meg a képét. Hogyan lehet ezt kijavítani?

Hogy ezt orvosolja, újra kell generálnia a miniatűröket.

Kezdésként tehát győződjön meg róla, hogy frissítette a miniatűrök szélességét és magasságát, majd telepítse a Regenerate Thumbnails nevű plugint. Kövesd a plugin utasításait, és ezután sikeresen regeneráltad a miniatűrök méretét.

Az összes kép regenerálása eltarthat egy ideig, különösen, ha a weboldaladon sok kép van a Médiatárban.

Hová kell elhelyezni az add_image_size funkciót

A add_image_size() funkció nem fog működni, hacsak nem helyezed el megfelelően a WordPress after_setup_theme akcióhorgában. Ez azt jelenti, hogy a következő példakód:

add_image_size( 'archive-featured', 792, 446, true );

A következő action hookon belül kell lennie a témád functions.php fájljában a:

function ms_setup() {add_image_size( 'archive-featured', 792, 446, true );}add_action( 'after_setup_theme', 'ms_setup' );

Add_image_size hozzáadása az Underscores témában

A nagyon népszerű indító téma, az Underscores Theme vagy _s téma egy jó helyet kínál a add_image_size() függvények hozzáadásához.

Az Underscores téma functions.php fájljának add_theme_support( 'post-thumbnails' ); sora alatt adhatod hozzá az add_image_size() egyéni post thumbnail size függvényt.

A add_image_size() függvényt azért adhatod ide alá, mert az már a korábban említett after_setup_theme akcióhorogon belül van.

Add Image Size Function Snippet for WordPress Themes

Ha szeretnéd, akkor az alábbi snippet az add_image_size függvényhez az Underscores témában bemásolhatod a későbbi hivatkozásodhoz:

/* * Custom post thumbnail sizes for use across the theme. * * @link https://developer.wordpress.org/reference/functions/add_image_size/ */add_image_size( $name, $width, $height, $crop );

Megjegyzés: Győződj meg róla, hogy a snippetben használt paramétereket definiálod, hogy biztosan ne kapj PHP warning hibát a témádban. A fenti snippet sablonként szolgál, amelyet másolva beilleszthetsz a témád funkcióiba.

Következtetés

Köszönjük, hogy elolvastad ezt a cikket! Kérjük, ossza meg velem a gondolatait és a beállításait az egyéni bejegyzések miniatűr méreteivel kapcsolatban.

Ha tetszett ez a cikk, akkor talán szeretné megismerni a Téma hibáit az egyéni bejegyzéstípusok beállításában. Az egyik, hogy ne regisztráld az egyéni poszttípusokat a témádban!

admin

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.

lg