Entonces necesitas unos formularios, uno para publicar la entrada que contiene unos de los campos, y cuantos más formularios necesitas para lo demás campos que editán la entrada publicada por el primero formulario.
Por ejemplo, si tienes un tipo de entrada con 30 campos personalizados.
Formulario uno es para publicar la entrada (quizas con estado 'draft'), y contiene los primeros 10 campos personalizados. Se mete en una página "Publicar entrada paso 1".
Formulario dos es para editar esta misma entrada y contiene los 10 siguientes campos. Se mete en una página "Publicar entrada paso 2".
Formulario tres es para editar esta misma entrada de nuevo y contiene los 10 últimos campos. Se mete en una página "Publicar entrada paso 3".
En el formulario uno se dirige a la página paso 2.
En el formulario dos se dirige a la página paso 3.
En el formulario tres se publica la entrada y se dirige donde quieres, por ejemplo a la misma entrada.
Entonces, despues de mandar el formulario uno se dirige al formulario dos etc.
Hay un problema, es decir que el formulario dos no sabe cual entrada editar (ni el tres).
Es necesario pasar el ID de la entrada publicada en paso 1 a la página que contiene el formulario dos, que debe pasar el ID a la página que contiene el formulario tres etc.
Para este, necesitamos usar el filtro del API cred_success_redirect: https://toolset.com/documentation/programmer-reference/cred-api/#cred_success_redirect
El código que usarías sería así:
add_filter( 'cred_success_redirect', 'ts_form_redirect', 10, 3);
function ts_form_redirect( $url, $post_id, $form_data ){
if ( in_array( $form_data['id'], array( 203, 211 ) ) ){ // Editar
$url = add_query_arg( 'postid', $post_id, $url );
}
return $url;
}
Es solo necesario editar los ID's de los formularios uno y dos, que pasan el ID al paso siguiente.
Finalmente, hay una complicación más.
Al insertar el formulario dos en su página (y el formulario tres en suya) es necesario coger este ID pasado por parámetro de URL.
Puedes retraer el valor de este parámetro con el shortcode wpv-search-term (https://toolset.com/documentation/programmer-reference/views/views-shortcodes/#wpv-search-term).
No puedes insertar el formulario con el parámetro requerido mediante el bloque de Forms, es necesario insertarlo mediante un bloque de "Custom HTML", asi:
[cred_form form="publicar-entrada-paso-2" id="[wpv-search-term param='postid']"]
Del mismo modo, debes insertar el formulario 3 en su página con un bloque de Custom HTML así:
[cred_form form="publicar-entrada-paso-3" id="[wpv-search-term param='postid']"]
Por supuesto los detalles pueden cambiar en tu sitio propio.