2016-10-02 2 views
-1

Was wäre der richtige Weg, um einen Filter hinzuzufügen, um einen Teil einer Zeichenkette in einem Echo zu ersetzen?Filter hinzufügen, um einen Teil einer Zeichenkette zu ersetzen

Die Funktion ist folgende:

function woocommerce_template_loop_product_title() { 
    echo '<h3>' . get_the_title() . '</h3>'; 
} 

Ich habe versucht, dies in meinem functions.php umzusetzen:

add_filter('woocommerce_template_loop_product_title', 'product_title_mod'); 
function product_title_mod($str) { 
    return str_replace ('h3','h2',$str); 
} 

Aber das nicht den h3-Wert nicht beeinflusst, was der beste Weg wäre, filtere diese?

+0

Sie übergeben '$ str' nach Wert und das Ergebnis der Funktion' product_title_mod' wird nicht verwendet. –

Antwort

0

function sollte return Wert, so können Sie es oder echo Wert direkt verwenden:

add_filter('woocommerce_template_loop_product_title', 'product_title_mod'); 

// option 1 
function product_title_mod($str) { 
    return str_replace("h3","h2",$str); 
} 

// option 2 
function product_title_mod($str) { 
    echo str_replace("h3","h2",$str); 
} 

Nicht ganz sicher, wie Wordpress Filter funktionieren, aber ich nehme an, Sie können nicht erreichen, was Sie wollen, weil woocommerce_template_loop_product_title Funktion echo es Ergebnis direkt.

+0

Ich sehe, danke. Dies gibt aber immer noch H3-Tags zurück ... – antonanton

+0

Ich bin nicht vertraut mit WordPress, aber ich denke, Sie können nicht tun, was Sie wollen, siehe mein Update. –

Verwandte Themen