@m4son

Как в wordpress сделать обновление слага?

Как в wordpress сделать обновление слага при каждом обновлении произвольного типа записи ?
  • Вопрос задан
  • 59 просмотров
Решения вопроса 1
@m4son Автор вопроса
function rename_slug( $post_ID, $post, $update ) {
  // проверка на тип записи
  if ( $post->post_type == 'post_name' ) {
    // обновление слага
    $new_slug = sanitize_title( $post->post_title, $post_ID );
    // удаляем хук для избежания бесконечного цикла
    remove_action( 'save_post', 'rename_slug', 10, 3 );
    // меняем слаг
    wp_update_post( array(
      'ID'        => $post_ID,
      'post_name' => $new_slug
    ) );
    // заново цепляем хук
    add_action( 'save_post', 'rename_slug', 10, 3 );
  }
}

add_action( 'save_post', 'rename_slug', 10, 3 );
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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