Hola Nigel, estoy intentando crear una función nueva parecida a la que me indicaste unos días.
add_action('cred_save_data', 'assignar_vendor', 10, 2);
function assignar_vendor($user_id, $form_data)
{
$campo = 'product_vendors'; // Editar
$form_ids = array(4427); // Editar
if (in_array($form_data['id'], $form_ids)) {
// update field 'registered' with current date
update_user_meta( $user_id, 'wcpv_'.$campo, time() );
}
}
Esta función hace que cuando el usuario crea un producto de Woocommerce, le asigna en el campo de una taxonomía (vendor) el nombre del autor automáticamente.
la información la estoy obteniendio del auto
y se asignará en la texonomía de
el formulario en donde se debe aplicar es en el id:4427.
Creo que en donde no esta correcto es en el IF
if (in_array($form_data['id'], $form_ids)) {
Tengo otro código que me pasaste para poder hacer una función parecida, cogiendo el "nombre del centro" del mismo autor
y aplicándolo en la taxonomía vendor "wcpv_product_vendors", creo que es mas fácil el primer caso ya que solo hemos de copiar el nombre del [wpv-post-author] y ponerlo en la texonomia "wcpv_product_vendors".
Saludos.
add_action( 'cred_save_data', 'tssupp_form_submit', 10, 2 );
function tssupp_form_submit( $post_id, $form_data ){
$relationship = 'centres_product'; // Editar
$taxonomy = 'wcpv_product_vendors'; // Editar
if ( in_array( $form_data['id'], array( 4427 ) ) ) { // Editar ID del formulario
// ID de entrada padre
$parent_id = $_POST['@' . $relationship . '_parent'];
$parent_title = get_the_title( $parent_id );
// necesitamos el ID del término correspondiente
$term = get_term_by( 'name', $parent_title, $taxonomy );
// asignar término
wp_set_object_terms( $post_id, $term->term_id, $taxonomy );
}
}
Gracias y Saludos.
Rafa corts