Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

The WhatsApp conversation list shows the status "open" in English on every language

Aperta Adatta ai principianti
#262 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
88/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript, wordpress

Direzione di ricerca

Leggi plugins/whatsapp/frontend/ConversationList.tsx e confronta l’helper stateLabels() esistente in plugins/importer/frontend/importFields.tsx. Aggiungi etichette tradotte con un fallback al valore grezzo, quindi esegui i test di ConversationList e locale indicati nell’issue. Il lavoro è completo quando gli stati noti mostrano etichette tradotte, gli stati sconosciuti restano visibili e in spagnolo «Open» corrisponde a «Abierta».

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug help wanted

What happens

Each row in the WhatsApp conversation list shows a status badge. On a Spanish admin the badge still reads "open", while the rest of the row is Spanish, such as "Ayer" for the time.

ConversationList puts the stored value straight into the badge: <Badge>{conversation.status}</Badge>. The server stores the word open for every new conversation. That word is data, so it never passes through __(). It never reaches the plugin's .pot and no translator can see it. The Spanish catalogue only holds the hidden "status" label next to the badge.

WordPress never prints a stored status slug. The Posts screen marks a draft with the label from get_post_states(), so a Spanish site reads "Borrador", not "draft".

What should happen

The badge shows a translated label for each status the server stores. A Spanish admin reads "Abierta". A status the frontend does not know yet still shows its raw value, so the badge never goes blank.

The importer already does this. stateLabels() in plugins/importer/frontend/importFields.tsx maps each stored state to an _x() label, read fresh so the loaded catalogue answers, and falls back to the raw value.

Where

  • plugins/whatsapp/frontend/ConversationList.tsx, the <Badge> in the .alphone-conversation__bottom row
  • a new statusLabels() helper there, with _x('Open', 'conversation status', 'alphone-whatsapp')
  • plugins/whatsapp/languages/alphone-whatsapp.pot, plugins/whatsapp/languages/es-ES.po and plugins/whatsapp/frontend/languages/es-ES.json, refreshed with make translations
  • plugins/whatsapp/frontend/test/ConversationList.test.tsx, a test that the badge reads "Open" and one that an unknown status shows its raw value
  • plugins/whatsapp/frontend/test/locale.test.ts, a test that the Spanish catalogue answers "Abierta" for conversation status\u0004Open, like plugins/importer/frontend/test/declarations.test.ts
Lingua principale
Go
Stelle
287
Fork
64
Merge medio
13h 19m
PR unite (30g)
62

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di gopherium/AlphOne

Tutte le issue di gopherium/AlphOne

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.