Как можно использовать Advanced Custom Fields (ACF) в WooCommerce для вывода Meta Description после Meta Title?

Какой хук, экшн или фильтр следует использовать для размещения своего дескрипшна под meta title на странице товара? В данный момент мой дескрипшн находится далеко от meta title. Вот мой код:

```php
add_action( 'wp_head', 'head_seo_meta_desc' );
function head_seo_meta_desc(){
    
    if (is_product()) {
        $info = get_field( 'wc_description' ); // получаем пользовательское поле
        echo '<meta name="description" content="' . $info . '">'; // выводим его
    } else {
        echo '<meta name="description" content="Описания нет">'; // выводим по умолчанию
    }
	
}
```
  • 22 ноября 2023 г. 9:22
Ответы на вопрос 3
Чтобы разместить ваш дескрипшн после мета заголовка на странице товара в WooCommerce, вы можете использовать фильтр `wpseo_metadesc`, предоставляемый плагином Yoast SEO. 

Вот как ваш код должен выглядеть с использованием этого фильтра:

```php
add_filter( 'wpseo_metadesc', 'custom_seo_meta_desc' );
function custom_seo_meta_desc($meta_desc){
    if (is_product()) {
        $info = get_field( 'wc_description' ); // Получаем пользовательское поле
        $meta_desc = $meta_desc . ' ' . $info; // Добавляем пользовательское поле к мета описанию
    }
    return $meta_desc;
}
```

Этот код использует фильтр `wpseo_metadesc`, который позволяет изменить мета описание. Вы получаете текущее мета описание через параметр `$meta_desc`, а затем добавляете свое поле `wc_description` с помощью функции `get_field()`. Затем возвращаем измененное мета описание. В результате, ваше поле `wc_description` будет добавлено к текущему мета описанию, которое Yoast SEO использует для страницы товара.
Разобрался. Сортировку можно изменить, выставив конец экшена: add_action( 'wp_head', 'head_seo_meta_desc', 1 ) 
 Выводится почти под title.
Похожие вопросы