=== Megafono Network ===
Contributors: megafonoit
Tags: press release, publishing, comunicati stampa, monetization, editoria
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
Stable tag: 0.4.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Ricevi comunicati stampa assegnati da megafono.it, pubblicali in automatico e monetizza la tua testata. Canale firmato, un segreto per-sito.

== Description ==

**Megafono Network** collega il tuo sito WordPress alla rete di testate di [megafono.it](https://www.megafono.it): ricevi i comunicati stampa che ti vengono assegnati, li pubblichi (in bozza o pubblicati, come preferisci) e il plugin conferma automaticamente l'URL live. Ogni pubblicazione confermata alimenta il tuo storico e il tuo Quality Score pubblico.

Pensato per **editori e testate online** che vogliono una fonte costante di contenuti redazionali di qualità e una nuova voce di ricavo, senza lavoro manuale.

**Cosa fa**

* **Enrollment per-sito**: colleghi il sito con un token; megafono genera un segreto unico per quel sito. Nessuna chiave da gestire a mano.
* **Pull automatico** (WP-Cron): il plugin scarica i comunicati assegnati e crea i post, con side-load delle immagini.
* **Conferma dell'URL**: a pubblicazione avvenuta invia l'URL live e un hash del contenuto a megafono (alimenta la verifica delle pubblicazioni).
* **Heartbeat**: ricontrolla periodicamente i post pubblicati (link vivo, contenuto integro) per il mantenimento/SLA.
* **Modalità di pubblicazione configurabile**: bozza per revisione o pubblicazione diretta.
* **Sicurezza**: ogni chiamata è firmata (HMAC-SHA256), fail-closed. Il segreto per-sito può stare in `wp-config.php`.

**Come si monetizza**

Le assegnazioni arrivano dalla rete megafono.it: pubblichi contenuti redazionali già pronti e ricevi il compenso concordato per la testata. Il tuo Quality Score pubblico cresce con le pubblicazioni confermate e la tenuta dei link nel tempo.

== Installation ==

1. Installa e attiva il plugin (Plugin → Aggiungi nuovo, oppure carica lo zip).
2. Vai su **Impostazioni → Megafono Network**.
3. Incolla il **token di enrollment** che trovi nella tua area publisher su megafono.it e salva.
4. (Consigliato) Metti il segreto e la base API in `wp-config.php`:
   `define('MGF_API_BASE', 'https://www.megafono.it');`
5. Scegli la **modalità di pubblicazione** (bozza o diretta) e la mappa delle categorie.

In alternativa, via WP-CLI:
`wp megafono connect --token=<enrollment_token>`

== Frequently Asked Questions ==

= Serve un account megafono.it? =
Sì. Il plugin collega una testata già presente (o la crea all'enrollment) nella tua area publisher su megafono.it.

= I comunicati vengono pubblicati senza il mio controllo? =
Dipende dalla modalità che scegli: puoi tenerli in **bozza** per revisionarli prima, oppure attivare la **pubblicazione diretta**.

= Che dati vengono inviati a megafono.it? =
Solo ciò che serve alla verifica: l'URL della pubblicazione, un hash del contenuto e lo stato del post. Il contenuto del comunicato viaggia sul canale firmato del pull.

= Posso disconnettere il sito? =
Sì, in qualsiasi momento dalle impostazioni (revoca). La disinstallazione rimuove opzioni, ruolo e tabella di stato.

== Changelog ==

= 0.4.0 =
* Sicurezza: verifica della firma Ed25519 del pacchetto prima dell'installazione (aggiornamenti autenticati). Con la chiave pubblica configurata, un pacchetto non firmato o manomesso viene rifiutato.

= 0.3.2 =
* Pagina impostazioni ridisegnata: header con logo megafono, descrizione e link alla tua area publisher.

= 0.3.1 =
* Pulsante «Controlla aggiornamenti» nelle impostazioni: forza il controllo (svuota la cache) e porta alla pagina Aggiornamenti. Cache del manifest ridotta a 6h.

= 0.3.0 =
* Pulsante «Testa connessione» nelle impostazioni: verifica al volo che il sito sia collegato e mostra a quale testata.

= 0.2.0 =
* Auto-aggiornamento da megafono.it: gli aggiornamenti compaiono e si installano dalla bacheca WordPress (1-click), senza ricaricare lo zip a mano.
* L'heartbeat riporta la versione installata: la rete sa quali siti sono da aggiornare.
* Endpoint base predefinito sul dominio canonico (www) per evitare i redirect che rompevano enroll/conferma.

= 0.1.0 =
* Prima versione: enrollment per-sito, pull automatico, pubblicazione con side-load immagini, conferma URL, heartbeat, WP-CLI, pagina impostazioni.

== Upgrade Notice ==

= 0.3.2 =
* Pagina impostazioni ridisegnata: header con logo megafono, descrizione e link alla tua area publisher.

= 0.3.1 =
Aggiunge «Controlla aggiornamenti» (forza il controllo) e riduce la cache a 6h.

= 0.3.0 =
Aggiunge il pulsante «Testa connessione» nelle impostazioni.

= 0.2.0 =
Prima versione con auto-aggiornamento: dopo averla installata una volta, i prossimi update arrivano da soli nella bacheca WordPress.

= 0.1.0 =
Prima versione pubblica.
