Niekedy potrebujete zobraziť váhu produktu hneď vedľa ceny, v popise alebo v špeciálnom bloku, a nielen v predvolenej tabuľke parametrov. WooCommerce túto možnosť v základe nemá, ale pomocou tohto jednoduchého snippetu si vytvoríte vlastovú „skratku“ (shortcode), ktorú vložíte kamkoľvek.
Ako to funguje?
Snippet vytvorí nový shortcode [product_weight]. Keď ho vložíte do popisu produktu alebo do Elementoru (či iného buildera), kód urobí nasledovné:
- Identifikuje produkt: Zistí, na ktorej produktovej stránke sa práve nachádzate.
- Vytiahne údaje: Z databázy si vypýta číselnú hodnotu hmotnosti.
- Zistí jednotky: Pozrie sa do nastavení WooCommerce, či používate kg, g alebo iné jednotky.
- Zobrazí výsledok: Spojí číslo s jednotkou a úhľadne ich vypíše. Ak hmotnosť nie je zadaná, upozorní na to (text si môžete v kóde ľahko zmeniť).
PHP
function custom_product_weight_shortcode() {
global $product;
// Kontrola, či sme skutočne na stránke produktu
if ( ! is_a( $product, 'WC_Product' ) ) {
return '';
}
$weight = $product->get_weight();
// Ak produkt nemá zadanú hmotnosť
if ( ! $weight ) {
return 'Hmotnosť tohto produktu nie je dostupná.';
}
// Vráti sformátovaný text s jednotkou z nastavení WooCommerce
return 'Hmotnosť tohto produktu je ' . $weight . ' ' . get_option( 'woocommerce_weight_unit' );
}
// Registrácia shortcodu [product_weight]
add_shortcode( 'product_weight', 'custom_product_weight_shortcode' );Praktické tipy
- Kam vložiť shortcode: Stačí do textového editora v administrácii produktu napísať
[product_weight]. - Viacero produktov: Tento shortcode je navrhnutý tak, aby fungoval v rámci „Product Loop“ alebo na stránke konkrétneho produktu. Ak ho vložíte na bežnú statickú stránku (napr. „O nás“), nezobrazí nič, pretože nebude vedieť, ktorú váhu má vytiahnuť.
- Vlastný text (riadok 17): Ak chcete zmeniť vetu „Hmotnosť tohto produktu je…“, stačí upraviť text v poslednom riadku funkcie pred premennou
$weight.


