Не используйте жестко запрограммированную версию, используемую здесь.Когда он это сделал, не было фильтра.Совсем недавно, начиная с версии 3.3, был добавлен фильтр.
add_filter( 'wp_unique_post_slug', 'custom_unique_post_slug', 10, 4 );
function custom_unique_post_slug( $slug, $post_ID, $post_status, $post_type ) {
if ( $custom_post_type == $post_type ) {
$slug = md5( time() );
}
return $slug;
}
Однако этот метод будет изменять слаг каждый раз, когда вы сохраняете сообщение ... На что я и надеялся ...
РЕДАКТИРОВАТЬ:
Этот вид работает для ограничения генерации только один раз.Единственным недостатком является то, что он создает одну версию, когда ajax запускается после создания заголовка, а затем создает другой постоянный слаг при сохранении сообщения.
function custom_unique_post_slug( $slug, $post_ID, $post_status, $post_type ) {
if ( $custom_post_type == $post_type ) {
$post = get_post($post_ID);
if ( empty($post->post_name) || $slug != $post->post_name ) {
$slug = md5( time() );
}
}
return $slug;
}