Skip to main content

Migrare și curățare date

Această pagină documentează procedurile de migrare necesare la trecerea între versiuni majore ale pluginului Dentisity Congress, precum și operațiunile de curățare a datelor deprecate.

Migrare rol moderator identitate​

Context​

Versiunile anterioare ale pluginului foloseau rolul identity_check_moderator (fără prefixul dentisity_). Versiunile 4.8.x au introdus rolul nou dentisity_identity_moderator. Dacă ambele roluri există simultan, utilizatorii cu rolul vechi nu vor putea accesa panoul de verificare identitate.

Cum identifici problema​

  1. Mergeți la WordPress → Utilizatori
  2. Filtrați după rol identity_check_moderator
  3. Dacă există utilizatori cu acest rol, migrarea este necesară

Procedura de migrare​

Pasul 1: Atribuiți rolul nou fiecărui utilizator afectat

  1. Deschideți profilul utilizatorului (Utilizatori → Editare)
  2. Schimbați rolul din identity_check_moderator în Moderator Identitate Dentisity (dentisity_identity_moderator)
  3. Salvați

Pasul 2: Eliminați rolul vechi din sistem

Dacă rolul vechi nu mai are utilizatori asociați, poate fi eliminat prin WP-CLI:

wp role delete identity_check_moderator

sau programatic (în functions.php sau un plugin de utilități):

remove_role('identity_check_moderator');
Verificare înainte de ștergere

Înainte de a elimina rolul vechi, confirmați că toți utilizatorii au fost migrati la rolul nou. Rulați:

wp user list --role=identity_check_moderator --fields=ID,user_login,user_email

Lista trebuie să fie goală.

Curățare transienți orfani​

Dacă utilizatori au abandonat procesul de înregistrare, pot rămâne transienți neexpirați în baza de date. Aceștia expiră natural, dar pot fi curățați manual dacă este necesar:

# Curăță toți transienții Dentisity expiranți
wp transient delete --all --regex='dentisity_(ao|ws)_draft_.*'
wp transient delete --all --regex='dentisity_pending_pass_.*'

Migrare meta add-on după redenumire produs​

Dacă un produs add-on a fost duplicat sau ID-ul său s-a schimbat, metadatele utilizatorilor (dentisity_addon_order_<id>) trebuie actualizate manual:

// Exemplu: migrare de la addon ID 123 la addon ID 456
$users = get_users();
foreach ($users as $user) {
$old_meta = get_user_meta($user->ID, 'dentisity_addon_order_123', true);
if ($old_meta) {
update_user_meta($user->ID, 'dentisity_addon_order_456', $old_meta);
delete_user_meta($user->ID, 'dentisity_addon_order_123');
}
}
Rulați în mediu de test mai întâi

Scripturile de migrare care modifică metadatele utilizatorilor trebuie testate întotdeauna pe o copie de test a bazei de date înainte de execuție în producție.

Backup pre-migrare​

Indiferent de tipul migrării, urmați întotdeauna această ordine:

  1. Backup bază de date: wp db export backup-$(date +%Y%m%d).sql
  2. Backup fișiere plugin: arhivare director wp-content/plugins/dentisity-congress/
  3. Notare versiune curentă: documentați versiunea pluginului din care migrați
  4. Executați procedura de migrare
  5. Verificare post-migrare: rulați verificările de integritate documentate la Actualizări plugin