Respuestas de foro creadas

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Gracias Elías, es cierto, pero ahora lo he intentado de esta forma y tampoco funciona. No da fallo, pero no hace nada. He pensado que quizá puede ser porque estoy simulando una compra (aunque llego hasta el final) en vez de una compra real, ¿es posible?. Por cierto, lo estoy escribiendo en el archivo functions.php de mi tema, supongo que será ahí el sitio correcto.

    add_action( 'woocommerce_payment_complete', 'so_payment_complete' );
    function so_payment_complete( $order_id ){
        $order = wc_get_order( $order_id );
        $user = $order->get_user();
        if( empty($user) ){
    echo "La variable está vacía"; 
    }else{       
    $user->add_cap( 'publish_posts' );
        }
    } 
    • Esta respuesta fue modificada hace 3 años, 1 mes por musiker81.

    Hola @josearcos, muchas gracias por tu amplia respuesta. Lo he intentado de esta forma pero no hace nada:

    add_action( 'woocommerce_payment_complete', 'so_payment_complete' );
    function so_payment_complete( $order_id ){
        $order = wc_get_order( $order_id );
        $user = $order->get_user();
        if( $user ){
          
           $user = new WP_User( $user_id );
           $user->add_cap( 'publish_post' );
    		
        }
    }
Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)