Witam serdecznie,
cały dzień szukam jak usunąć na liście produktów napis "cena:" który znajduje się zaraz przed ceną.
[obrazek]
Tytuł produktu
cena: 965,00 zł
a chciałbym
[obrazek]
Tytuł produktu
965,00 zł
bez użycia JS. Jedyne co udało mi się osiągnąć to wyłączenie całej ceny bo w loop-price nie ma żadnej zmiennej odpowiedzialnej za napis cena.
A może tekst jest w CSS jako zawartość pseudoselektora ::before?
Chyba nie bo na podglądzie kodu mam takie coś:
<li class="post-92 [...]"> <a href="[...]" class="[...]"><img [...]" /> <h2 class="woocommerce-loop-product__title">Produkt</h2> cena: <span class="woocommerce-Price-amount amount">965,00 <span class="woocommerce-Price-currencySymbol">zł</span></span></a></li>
No to zacznij od szukania w szablonie z kartą produktu, a potem leć w górę po metodach generujących cenę aż dojdziesz do kłębka. Bo Albo będzie to w samym pliku szablonu albo w paczkach językowych.
Zmarnowałem na to cały dzień i nie znalazłem...
Sprawe rozwiązałem chyba w jeden z mniej optymalnych sposobów ale działa
ob_start();
<?php /** * Loop Price * * This template can be overridden by copying it to yourtheme/woocommerce/loop/price.php. * * HOWEVER, on occasion WooCommerce will need to update template files and you * (the theme developer) will need to copy the new files to your theme to * maintain compatibility. We try to do this as little as possible, but it does * happen. When this occurs the version of the template file will be bumped and * the readme will list any important changes. * * @see <a href="https://docs.woocommerce.com/document/template-structure/" target="_blank">https://docs.woocommerce.com/document/template-structure/</a> * @author WooThemes * @package WooCommerce/Templates * @version 1.6.4 */ if (!http://www.php.net/defined('ABSPATH')) { http://www.php.net/exit; // Exit if accessed directly } http://www.php.net/global $product; ?> <?php http://www.php.net/ob_start(); $product->get_price_html(); $out1 = http://www.php.net/ob_get_contents(); http://www.php.net/ob_end_clean(); $removePrice = http://www.php.net/str_replace('cena: ', '', $out1); ?> <?php if ($price_html = $removePrice) : ?> <span class="price"><?php http://www.php.net/echo $price_html; ?></span> <?php endif; ?>
Hej,
ja, jak nie mogę znaleźć gdzie jakiś tekst zaszyty jest w kodzie strony to wrzucam cały projekt (cały katalog ze wszystkimi plikami, w tym przypadku WordPress+WooCommerce+Szablon itp.) do NetBeansa -> Find (in project) i przeszukuje mi wszystkie pliki jakie są w projekcie.
Bardzo pomocne wg. mnie.
Przeszukiwałem całość i nic...
Z ciekawości pobrałem woocomerce i powiem tylko tylke że jeśli miałbym napisać co czułem patrząc na ten kod to wywaliliby mnie z tego forum i żadna protekcja by nie pomogła. A do tego pewnie 90% ludzi z którymi tu piszę nie odezwałaby się do mnie ani słowem uważając mnie za psychopatę który powinien siedzieć w wariatkowie... A może powinienem
Sprawdź w szablonie , pewnie już masz utworzony filtr woocommerce_get_price_html z napisem cena. Poniżej wyświetla tylko cenę
function filter_woocommerce_get_price_html( $price, $instance ) { return $price; }; add_filter( 'woocommerce_get_price_html', 'filter_woocommerce_get_price_html', 10, 2 );
Tylko przy aktualizacji wtyczki lub szablonu zmiany zapewne przepadną
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)