Lord_Dantes
@Lord_Dantes

Как сформировать заглавие записи с помощью других полей при создании записи?

Долго

Есть кастомный тип записи: Дом.
У него есть поля: title, content, address, index, city.
Эта запись может создаваться как из админки так и внешней формы, что уже сделано.
Нужно чтобы title записи формировался с кастомных полей: addres + index + city.
Я делал подобное но у меня тогда везде title изменился на шаблонный который я указывал одной записи.

Кратко
Есть CTP(Custom Post Type) - Дом.
У него есть title, addres, index, city. Последние 3 ACF
Нужно чтобы title = addres + index + city

Как это сделать?
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
andrashh
@andrashh
Почему бы и да?
<?php 
function generate_title( $post_id, $post ){

  if ( 'slug' == $post->post_type ) {

    $field1 = get_post_meta( $post_id, 'key', true );
    $field2 = get_post_meta( $post_id, 'key', true );

    $title_fileds = $field1 . " " . $field2;
    $new_title = sanitize_text_field( $title_fileds );
    $new_slug = sanitize_title( $new_title );

    $args = array(
      'ID'          =>   $post_id,
      'post_title'  =>   $new_title,
      'post_name'   =>   $new_slug
    );

       // unhook this function so it doesn't loop infinitely
    remove_action('save_post', 'generate_title',30,2);

        // update the post, which calls save_post again
    wp_update_post( $args );

        // re-hook this function
    add_action('save_post', 'generate_title',30,2);


  }  
}
add_action( 'save_post', 'generate_title', 30, 2 );
?>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы