Come impostare le stesse categorie della barra laterale per tutti gli utenti

@Moin
Il modo in cui funziona il backfill qui è leggermente diverso da quanto ci si potrebbe aspettare. Non resettiamo semplicemente tutte le categorie della barra laterale degli utenti quando viene aggiornata l’impostazione default navigation menu categories. Ecco cosa facciamo:

  • Se l’amministratore aggiunge alcune categorie all’impostazione, solo quelle nuove vengono aggiunte alle barre laterali di tutti gli utenti che non le avevano già impostate.
  • Se rimuovi alcune categorie dall’impostazione, queste vengono rimosse dalle barre laterali di tutti gli utenti.

Quindi il backfill non forza lo stato dell’impostazione su tutti gli utenti, ma calcola la differenza (delta) tra i valori esistenti nell’impostazione e quelli aggiunti o rimossi di recente.

Il motivo principale per cui si fa così è preservare le preferenze individuali di ciascun utente.

Ecco la PR in cui è stato introdotto questo comportamento:

Abbiamo identificato due modi per ottenere le stesse categorie su tutti gli utenti:

  1. Aggiungi tutto, applica storicamente, rimuovi alcuni, applica storicamente.
  2. Rimuovi tutto, applica storicamente, aggiungi alcuni, applica storicamente.

In un recente tentativo di eseguire questa operazione su un sito di grandi dimensioni, il metodo 1 non ha funzionato correttamente, mentre il metodo 2 sì. Per questo motivo ho documentato il metodo 2.

Se hai tempo, prova entrambi i metodi con diversi utenti per verificare se funzionano. Se ti è utile, posso scrivere una query SQL per confermare se l’aggiornamento è andato a buon fine come previsto. Fammi sapere cosa ne pensi.

1 Mi Piace