Ehi @troygrady, scusa per la risposta lenta (gestisco le domande sul plugin WP Discourse). Affronterò le impostazioni del fuso orario e della posizione separatamente (sono scollegate).
Fuso orario
Potresti chiarire se intendi che l’attività dell’utente debba essere visualizzata a loro nel loro orario locale? Se è così, a differenza di Wordpress, questa è attualmente l’impostazione predefinita in Discourse (senza alcun uso di DiscourseConnect) e si aggiornerà automaticamente se non impostata dall’utente. Ad esempio, sono recentemente passato dal fuso orario Australia/Perth a Europe/Oslo. Non ho toccato l’impostazione del fuso orario nel mio profilo qui su meta, e ora dice
Desideri un comportamento diverso da questo?
Posizione
Puoi sincronizzare una posizione impostata in un profilo utente Wordpress con il campo posizione nel profilo utente su Discourse. Non si sincronizza per impostazione predefinita poiché non esiste un campo standard in Wordpress equivalente al campo posizione in Discourse. Devi aggiungere del codice qui. Nel file functions.php del tuo tema o in un altro punto in cui puoi aggiungere codice, devi aggiungere qualcosa di simile a quanto segue, la parte chiave utilizzando il filtro wpdc_sso_params.
function sync_discourse_location( $params, $user ) {
$location = get_user_meta( $user->ID, 'user_location_meta', true );
if ( $location ) {
$params['location'] = $location;
}
return $params;
}
add_filter( 'wpdc_sso_params', 'sync_discourse_location', 10, 2 );
Nota che dovrai sostituire ‘user_location_meta’ con qualsiasi campo meta utente venga utilizzato per memorizzare la posizione dell’utente nella tua istanza Wordpress (cioè, qualsiasi campo utilizzato dal plugin che stai utilizzando per aggiungere posizioni utente a Wordpress).
Nota anche che il campo posizione di Discourse è solo un campo “stringa”, il che significa che visualizzerà letteralmente qualsiasi cosa vi venga inserita. Non ha alcun effetto sul fuso orario dell’utente e non è una geolocalizzazione (cioè collegata in alcun modo alla mappatura).
