Добавить текстовую строку к названию продукта WooCommerce - PullRequest
0 голосов
/ 15 февраля 2019
<div class="woocommerce-loop-product__title"><? wc_get_template('single-product/title.php');?>

Я пытаюсь заставить эту строку сказать: «Имя продукта Дополнительная информация»

Я могу получить часть «Имя продукта», но как мне объединить «дополнительную информацию» к этому коду, чтобы сделатьэто вывод правильно?Каждая попытка эха, которую я пробую, нарушает мой сайт

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Если вы посмотрите на шаблон single-product/title.php кода, у вас по сути только это:

the_title( '<h1 class="product_title entry-title">', '</h1>' );

Функция WordPress the_title() повторяет название продукта, поэтому вы не можете использовать echo снова, если хотитедобавить «Больше информации» к названию.Вместо этого вы будете использовать эту строку:

<div class="woocommerce-loop-product__title"><? the_title( '<h1 class="product_title entry-title">', ' More Info</h1>' ); ?>

или более понятным способом.

<div class="woocommerce-loop-product__title"><? the_title( '<h1 class="product_title entry-title">', ' '. __("More Info") . '</h1>' ); ?>

Протестировано и работает.

0 голосов
/ 15 февраля 2019

Если вы пытаетесь объединить название продукта со строкой, тогда вы можете использовать хук woocommerce_shop_loop_item_title.

remove_action( 'woocommerce_shop_loop_item_title','woocommerce_template_loop_product_title', 10 );
function change_product_title() {
    $additional_text = ' More info';
    echo '<h2 class="woocommerce-loop-product__title">' . get_the_title() .$additional_text.'</h2>';
}
add_action('woocommerce_shop_loop_item_title','change_product_title');

Или, если вы хотите изменить название продукта на странице отдельного продукта,

remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_title', 5 );

function woocommerce_template_single_title_custom(){
    $additional_text = ' More Info';
    the_title( '<h3 class="product_title entry-title">', $additional_text.'</h3>' );
}
add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_title_custom', 5);

Где синтаксис для функции the_title равен

the_title( $before, $after, $echo );
...