Ho capito il problema:
Le chiavi segrete non corrispondevano. Per qualche motivo, pensavo che Discourse mi offrisse una versione base64 del testo che inserivo nel campo della chiave segreta (quando copiavo la chiave per incollarla in WordPress), ma non è così: le chiavi devono corrispondere esattamente.