Автоматически подставить категории в название товара, при его создании в WooCommerce

На cайте, который сейчас разрабатываю на WooCommerce, ссылки на товар отображаются следующим образом:

https://example.com/handles/roset/pasini/0031-cr-sat

Подскажите, как я могу автоматически подставить эти категории к названию продукта при его создании?

Например, если я напишу название продукта 0031 CR SAT, в результате должно получится Handles Roset Pasini 0031 CR SAT. Как это сделать?

Никак не могу найти подходящий код и ответ на свой вопрос. Даже не знаю, с чего начать, поэтому в моем вопросе нет исходного кода.

Буду рад если поможете!


Ответы (1 шт):

Автор решения: malginovdesign

Используем хук save_post_(post_type)

add_filter( 'save_post_product' , 'ruso1222520_modify_post_title' );
function ruso1222520_modify_post_title( $post_id, $post_data ) {
    // Получим оригинал заголовка
    $orig_title = get_post_meta( $post_id, 'original_title', 'true' );

    // Формируем новый заголовок из списка категорий товара
    // (список в виде ссылок, мы просто убираем html-теги)
    if (isset($orig_title) && !empty($orig_title)) {
        $new_title = wp_strip_all_tags(get_the_term_list( $post_id, 'product_cat', '', '', '')) . ' ' . $orig_title;
        // Запишем заголовок
        wp_update_post( [
            'ID'         => $post_id,
            'post_title' => $new_title,
        ] );
    } else {
        // Запишем оригинал в мета-поле, если его нет
        update_post_meta( $post_id, 'original_title', $post_data->post_title );
    }
}
→ Ссылка