WP Manifestindependent plugin directory
manifest / users / raffaello-codici-libro

Raffaello Codici Libro

Sblocco aree e materiali scaricabili tramite codici dei libri scolastici, integrato con Raffaello Identity (SSO).

★ 0stars
26release downloads
1.5.3latest · 3d ago

Install

Download raffaello-codici-libro.zip From the 1.5.3 release on GitHub, Oct 20, 2026

Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/danieledignani/raffaello-codici-libro/releases/download/1.5.3/raffaello-codici-libro.zip
Updates itself. It ships its own updater (Plugin Update Checker), so new versions appear under Dashboard → Updates.

Sblocco di aree riservate e materiali scaricabili tramite i codici stampati sui libri scolastici, integrato con Raffaello Identity (SSO).

Descrizione

Il plugin consente allo studente o al docente autenticato (tramite Raffaello Identity / SSO) di inserire il codice presente sul libro per sbloccare i materiali scaricabili associati ai contenuti del sito.

Funzionalità (Ipotesi A — MVP):

  • Form di inserimento codice nell'area riservata e form di sblocco contestuale direttamente nelle pagine con materiali.
  • I materiali bloccati sono mostrati in anteprima con stato "Bloccato"; dopo lo sblocco diventano scaricabili.
  • Download protetto: i file non sono raggiungibili via URL diretto senza il relativo diritto.
  • Registrazione dell'abbinamento codice ↔ utente ad ogni riscatto (data, ora, IP).
  • Campo per-pagina (ACF se presente, altrimenti meta box nativo) per indicare direttamente sulla pagina i codici che la sbloccano; i codici nuovi vengono creati automaticamente.
  • Lo stesso codice è condiviso tra tutte le copie del libro e può sbloccare più contenuti; un contenuto può essere sbloccato da più codici.
  • Backoffice: gestione codici, associazione ai contenuti, import CSV, elenco riscatti.
  • Integrazione YOOtheme Pro: elemento builder "Materiali Codici Libro" (gruppo Raffaello), oltre allo shortcode.
  • Aggiornamento automatico da GitHub.

Utilizzo

  1. Definire i materiali di una pagina dal meta box "Materiali sbloccabili (Codici Libro)".
  2. Indicare i codici che sbloccano la pagina nel campo "Codici Libro — Sblocco" (riquadro laterale dell'editor). Nello stesso riquadro, l'interruttore "Blocca l'intera pagina con il codice" rende l'intera pagina accessibile solo a chi ha riscattato un codice (agli altri viene mostrato il form di sblocco al posto del contenuto).
  3. Inserire lo shortcode [raffaello_materiali] nel contenuto (oppure [raffaello_materiali post_id="123"]).
  4. In alternativa allo shortcode, con YOOtheme Pro trascinare l'elemento "Materiali Codici Libro" (gruppo Raffaello) nel layout.
  5. In alternativa al campo per-pagina, i codici si possono creare/associare anche da Codici Libro → Codici (o importarli via CSV).
  6. Lo shortcode [raffaello_codice] mostra il solo form di inserimento (es. nell'area riservata).

Test su staging

È incluso uno script di seed (solo CLI) che crea una pagina di esempio con materiali e codici di prova:

wp eval-file tools/seed.php oppure php tools/seed.php (rimozione: php tools/seed.php --remove).

Requisiti

  • WordPress 5.8+, PHP 7.4+
  • Plugin Raffaello Identity per l'autenticazione SSO degli utenti.

Changelog

1.4.2

  • Nuovo: sotto al campo "Codici Libro — Sblocco" della pagina viene ora mostrato un riepilogo in sola lettura dei codici associati, con il loro stato (Attivo / Scaduto / Disattivo) e un link per gestirli nel menu Codici Libro. Così si vede subito quali codici esistono e in che stato sono.

1.4.1

  • Corretto: il pulsante "Accedi" mostrato nei form di sblocco (compresa la pagina bloccata) per gli utenti non autenticati ora usa il login di Raffaello Identity (SSO, OIDC) tramite ri_login_url(), come il link del menu, invece del login standard di WordPress. Se Raffaello Identity non è attivo si usa il fallback a wp_login_url().

1.4.0

  • Nuovo: blocco dell'intera pagina con il codice. Nel riquadro "Codici Libro — Sblocco" è disponibile l'interruttore "Blocca l'intera pagina con il codice": se attivo (e la pagina ha codici associati), gli utenti che non hanno riscattato un codice valido vedono il form di sblocco al posto del contenuto, mentre amministratori e utenti abilitati vedono la pagina normalmente. Dopo lo sblocco la pagina viene mostrata.

1.3.3

  • Corretto: il campo per-pagina "Codici Libro — Sblocco" (versione ACF) non salvava i codici digitati. Il salvataggio leggeva il valore con get_field(), che il filtro acf/load_value sostituisce con le associazioni già presenti, perdendo l'input. Ora i codici digitati sulla pagina vengono creati e associati correttamente e risultano visibili sia sulla pagina sia nel menu Codici Libro.

1.3.2

  • Reintrodotto il gating di sezione per YOOtheme (disattivato nella 1.3.1). Corretto il formato di registrazione del listener "source.init": ora è un metodo statico registrato come da convenzione YOOtheme (core/WooCommerce), risolvendo l'errore fatale della 1.3.0. Il tipo "Site" espone il campo booleano "Accesso materiali (pagina corrente)" (gruppo Codici Libro) marcato come condizione: usalo nelle Access/Dynamic Condition del builder ("non vuoto" per la sezione protetta, condizione inversa per la sezione con il form [raffaello_codice]). Dopo l'aggiornamento aprire una volta il customizer YOOtheme per rigenerare lo schema.

1.3.1

  • Correzione urgente: disattivata l'integrazione "source.init" introdotta nella 1.3.0 (campo "Accesso materiali" per il gating di sezione), che causava un errore fatale durante il render front-end delle pagine YOOtheme. Il resto del plugin (materiali, codici, riscatti, download, elemento builder) torna a funzionare. Il gating di sezione verrà reintrodotto in una versione successiva, una volta corretta l'integrazione con la source di YOOtheme.

1.3.0

  • Nuovo: integrazione con le Access Condition / Dynamic Condition di YOOtheme Pro. La source "Site" espone il campo booleano "Accesso materiali (pagina corrente)" (gruppo Codici Libro): permette di mostrare/nascondere intere sezioni del builder in base ai codici riscattati dall'utente per la pagina (gating di sezione lato server). Usare la condizione "non vuoto" per la sezione protetta e la condizione inversa per la sezione con il form [raffaello_codice]. Dopo l'aggiornamento aprire una volta il customizer YOOtheme per rigenerare lo schema.

1.2.1

  • Corretto: i messaggi di errore del riscatto via AJAX (es. "Codice non valido", "Questo codice è scaduto") ora vengono mostrati correttamente al posto del messaggio generico.
  • Migliorato: l'IP registrato ad ogni riscatto considera l'IP reale del client dietro reverse proxy/CDN (es. Cloudflare via CF-Connecting-IP), con fallback a REMOTE_ADDR. Intestazioni filtrabili con 'rcl_client_ip_headers'.

1.2.0

  • Campo per-pagina (ACF o meta box nativo) per inserire i codici che sbloccano la pagina, con creazione automatica dei codici nuovi.

1.1.0

  • Integrazione YOOtheme Pro (elemento builder "Materiali Codici Libro") e script di seed per staging.

1.0.0

  • Prima versione: riscatto codici, sblocco contestuale materiali, download protetto, backoffice e import CSV.

Releases

17 releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
1.5.3 latest
Oct 20, 2026 3d ago
raffaello-codici-libro.zip
1
Oct 19, 2026 3d ago
raffaello-codici-libro.zip
1
Oct 19, 2026 3d ago
raffaello-codici-libro.zip cohort
3
Oct 13, 2026 9d ago
raffaello-codici-libro.zip
3
Oct 13, 2026 9d ago
raffaello-codici-libro.zip
1
Oct 12, 2026 10d ago
raffaello-codici-libro.zip
2
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
5
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
1
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
1
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
1
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
1
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
1
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
2
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
1
Jun 29, 2026 3mo ago
raffaello-codici-libro.zip
1
Jun 23, 2026 4mo ago
raffaello-codici-libro.zip
1
Jun 23, 2026 4mo ago
raffaello-codici-libro.zip
0