Frontend Submissions ha una serie di funzionalità che possono essere utilizzate a livello di programmazione.
Rendi un utente un venditore
Frontend Submissions ha una funzione di supporto chiamata make_user_vendor() che fa due cose contemporaneamente:
- rende un utente un venditore
- cambia lo stato di quel nuovo venditore in Approvato
EDD_FES()->vendors->make_user_vendor( $user_id );
Importante: il parametro ID utilizzato sopra è l'ID utente di WordPress.
Cambia lo stato di un venditore
Ci sono tre stati che un venditore può avere:
- Approvato
- In attesa
- Sospeso
Ci sono anche due azioni che possono essere intraprese:
- Sospendi
- Revoca
Tutti questi utilizzano lo stesso metodo, ma stati e azioni sono cose diverse. Ecco come funziona.
Per prima cosa devi istanziare un oggetto Frontend Submissions come uno di questi:
// Example showing required input $vendor = new FES_Vendor( $_id_or_email = false, $by_user_id = false );
// using a vendor ID $vendor = new FES_Vendor( 14, false ); // using the email address associated with the vendor ID $vendor = new FES_Vendor( '[email protected]', true );
In secondo luogo, esegui il metodo change_status() su quell'oggetto, simile a uno di questi esempi:
// Example showing required input $vendor->change_status( $new_status = '', $in_admin = false, $output = false );
L'input $in_admin ti permette di dichiarare se questa azione debba essere permessa nel contesto dell'area di amministrazione, o al di fuori di essa. Potresti voler permettere questa modifica all'interno dell'area di amministrazione, ma non al di fuori di essa, per esempio.
// Set a vendor to approved, inside the admin area, with no output $vendor->change_status( 'approved' ); // Set a vendor to pending, outside the admin area, with no output $vendor->change_status( 'pending', true ); // Set a vendor to suspended, outside the admin area, with no output $vendor->change_status( 'suspended', true, true );
Oltre alle modifiche di stato di cui sopra, puoi eseguire queste azioni:
// Revoke a vendor, inside the admin area, with no output. // This will effectively make a user NOT a vendor, and remove all their products. $vendor->change_status( 'revoke' ); // Changes a user from suspended to approved. At this point identical to setting // a user to approved, but in the future may contain some additional features. $vendor->change_status( 'unsuspend' );
