Cum să modific pagina thankyou.php în WooCommerce pentru a schimba poziția titlului

18 ian. 2016, 23:43:29
Vizualizări: 14.6K
Voturi: 3

În template-ul thankyou.php există o acțiune care afișează secțiunea marcată cu roșu în imagine. Problema este că titlul "Our Bank Detals" ar trebui să fie deasupra descrierii, nu sub.

captură de ecran

Codul din thankyou.php care creează această secțiune este:

<?php do_action( 'woocommerce_thankyou_' . $order->payment_method, $order->id ); ?>

Această acțiune trebuie să pointeze către un cod în alt fișier, pe care sper că îl pot modifica folosind un hook în funcitons.php. Am nevoie de ajutor :-)

thankyou.php este localizat:

..wp-content/plugins/woocommerce/templates/checkout/thankyou.php

L-am copiat în folderul child-theme dacă este necesar să-l editez direct

0
Toate răspunsurile la întrebare 2
0

Am ajuns să inserez descrierea plății.
(cea pe care o specificați în setările WooCommerce din backend-ul WordPress)

Textul "nativ" de plată din WooCommerce este static și nu are legătură cu metoda de plată selectată efectiv. :-(

Am făcut acest lucru modificând fișierul template WooCommerce:

1: Copiați acest fișier template:

..wp-content/plugins/woocommerce/templates/checkout/thankyou.php

în

folderul-temei-dvs/woocommerce/checkout/thankyou.php

2: Înlocuiți această linie linie stearsa

cu acest cod:

<?php
    if ( $available_gateways = WC()->payment_gateways->get_available_payment_gateways() ) {
        foreach ( $available_gateways as $gateway ) {
            if ( $gateway->title == $order->payment_method_title) { 
                echo '<div> <h2>Plată<h2/> </div>';
                echo $gateway->payment_fields();
            }
        }
    }
?>

(primul meu cod PHP real, așa că nu aș fi surprins dacă s-ar putea face mai inteligent ;-))

Rezultat (pagină în daneză): captură ecran

Dezavantajul acestei abordări este că dacă WooCommerce va actualiza acest template într-o zi, va trebui să vă amintiți să îl actualizați și dumneavoastră!

21 ian. 2016 00:15:56
2

Din păcate, nu există un hook disponibil pentru a elimina acel text "Detaliile noastre bancare". Dar, puteți ascunde implicitul care este adăugat și zona neintenționată plasând următoarea regulă în fișierul style.css al temei dumneavoastră:

.woocommerce-order-received .woocommerce h2:nth-of-type(2) {
    display: none;
}

Apoi, pentru a avea "Detaliile noastre bancare" în locul dorit, pur și simplu mergeți la WooCommerce > Setări > Finalizare comandă > BACS și adăugați <h2>Detaliile noastre bancare</h2> în zona de text Instrucțiuni.

Spuneți-mi cum merge :)

19 ian. 2016 15:25:07
Comentarii

A fost de ajutor? :)

Prasad Nevase Prasad Nevase
19 ian. 2016 16:52:26

În cazul meu a fost ".woocommerce-order-received .woocommerce h2:nth-of-type(1) {display: none;}" MULȚUMESC, a fost un răspuns FOARTE BUN! Nu știam despre "nth-of-type(1)"

MrCalvin MrCalvin
20 ian. 2016 20:30:07