La modalità di sola lettura impedisce agli utenti di ottenere il badge devoto?

Per rispondere alla tua prima domanda, mi aspetterei che mettere un sito in modalità di sola lettura influenzi la capacità degli utenti di ottenere il badge Devotee. Quando un sito è in modalità di sola lettura, nessun nuovo dato viene scritto nel database, quindi i dettagli sulle visite dell’utente non verranno registrati quando il sito è in modalità di sola lettura.

Prova questa query. Restituisce i giorni in cui un utente non ha visitato il sito tra una data di inizio e una data di fine specificate:

Giorni senza visite per utente

--[params]
-- date :start_date
-- date :end_date
-- string :username

WITH days AS (
SELECT date_trunc('day', day)::date AS day
FROM generate_series(:start_date::date, :end_date::date, '1 day') AS day
),
users_visits AS (
SELECT
visited_at
FROM user_visits uv
JOIN users u ON u.id = uv.user_id
WHERE u.username = :username
AND visited_at BETWEEN :start_date AND :end_date
),
visits_days AS (
SELECT
day,
visited_at
FROM days
LEFT JOIN users_visits uv
ON uv.visited_at = day
ORDER BY day DESC
)

SELECT day AS days_without_visits
FROM visits_days WHERE visited_at IS NULL
ORDER BY day DESC

Se desideri assegnare il badge ad alcuni utenti che tecnicamente non ne hanno diritto, dai un’occhiata a Award a non-custom badge through the console. Nota che questo approccio è possibile solo su siti self-hosted. Per i siti sulla nostra hosting, possiamo assegnarti i badge elencati in quell’argomento.

4 Mi Piace