Un utente ha chiesto informazioni su TeraWallet - For WooCommerce di Wordpress

Come disabilitare ed eliminare la cronologia delle transazioni senza applicare crediti utente?

Un utente ha chiesto 👇

Desidero disabilitare ed eliminare tutta la vecchia cronologia delle transazioni.

Ora utilizzo questo codice per addebitare i crediti e inserire Transaction in DB:

$transaction_id = woo_wallet()->wallet->debit( $userid, $serviceprice, $refid);
do_action( 'woo_wallet_admin_adjust_balance', $transaction_id );
$credits = woo_wallet()->wallet->get_wallet_balance($userid, 'edit');

Come posso danneggiare i crediti senza mettere la transazione nella cronologia?
E come devo eliminare la vecchia cronologia delle transazioni per gli utenti senza applicare i crediti attuali?

Grazie mille per l’aiuto.

Questo argomento è stato modificato 1 anno, 7 mesi fa da. Questo argomento è stato modificato 1 anno, 7 mesi fa da.

Lanciatore di thread

(@valehero)

1 anno, 7 mesi fa

Devo disabilitare ed eliminare tutti i vecchi motivi sulla cronologia delle transazioni ora ho più di 30.000 transazioni in ogni cronologia utente e rallenta il mio sito Web di 6-7 secondi se carico le pagine del portafoglio terra.

Ora ho cancellato la cronologia delle transazioni e un sacco di pagine del portafoglio Terra in meno di 1 secondo.

Finora mi sono imbattuto nel codice seguente e l’ho impostato come un post di Cron per eliminare tutta la cronologia delle transazioni e aggiornare i crediti degli utenti:

<?php
	require_once("wp-config.php");
	require_once("wp-includes/wp-db.php");

	$users = get_users( array( 'fields' => array( 'ID' ) ) );
	foreach($users as $key => $user_id){
		$UID = $user_id->ID;
		$meta = get_user_meta( $UID, '_current_woo_wallet_balance', true );
		$terra = woo_wallet()->wallet->get_wallet_balance($UID, 'edit');
		if ($meta > 0) {	
			$wpdb->query( "DELETE FROM wp_woo_wallet_transactions WHERE user_id = '$UID'" );
			$transaction_id = woo_wallet()->wallet->credit( $UID, $meta, 'Updated' );
			do_action( 'woo_wallet_admin_adjust_balance', $transaction_id );
			update_user_meta($UID, '_current_woo_wallet_balance', $meta);
		}		
	}
?>

C’è un modo migliore per farlo?
C’è un modo per disabilitare la cronologia delle transazioni in modo che non cresca tanto quanto rallenta l’intero sito web?

Esempio: mostrare solo le ultime 10 transazioni o le ultime 100 transazioni ed eliminare tutte le precedenti?

Importante:
* Ho notato una riduzione del 20% nell’utilizzo della memoria dopo aver eliminato tutte le transazioni.
* L’utilizzo della CPU è diminuito del 15% dopo l’eliminazione dell’intera cronologia delle transazioni.

Questa risposta è stata modificata 1 anno, 7 mesi fa. Questa risposta è stata modificata 1 anno, 7 mesi fa. Questa risposta è stata modificata 1 anno, 7 mesi fa. Questa risposta è stata modificata 1 anno, 7 mesi fa. Autore del plugin

(@subratamal)

1 anno, 7 mesi fa

Ciao @valehero

Siamo d’accordo con te e il codice che stai utilizzando va bene come post di Cron.

(@bobmorain)

1 anno, 2 mesi fa

Ciao

Puoi dirmi dove è inserito questo codice? Io wp-config?

Was this helpful?

0 / 0

Lascia un commento 0

Your email address will not be published. Required fields are marked *