- PHP 82.5%
- CSS 17.5%
| LICENSE | ||
| nextcloud-calendar-display.php | ||
| README.md | ||
| style.css | ||
Nextcloud Calendar Display for WordPress
Plugin WordPress per visualizzare i prossimi eventi da un calendario Nextcloud pubblico sul tuo sito.
📋 Descrizione
Questo plugin permette di integrare facilmente il tuo calendario Nextcloud pubblico in qualsiasi pagina o post WordPress tramite uno shortcode. Gli eventi vengono recuperati automaticamente dal feed ICS e visualizzati in un formato pulito e responsivo.
✨ Caratteristiche
- 🔄 Sincronizzazione automatica dal calendario Nextcloud via feed ICS
- ⚡ Cache intelligente (1 ora) per ottimizzare le prestazioni
- 📱 Design responsive - perfetto su desktop, tablet e mobile
- 🎨 Interfaccia personalizzabile tramite CSS
- ⏰ Filtro temporale - mostra solo eventi futuri entro un periodo configurabile
- 🗓️ Visualizzazione completa - titolo, data, ora, luogo e descrizione
- ⚙️ Pannello amministrazione semplice e intuitivo
- 🔒 Sicuro - nessun accesso diretto ai file, sanitizzazione degli output
📦 Installazione
Metodo 1: Upload ZIP
- Scarica il plugin come file ZIP
- Vai su WordPress → Plugin → Aggiungi nuovo → Carica plugin
- Seleziona il file ZIP e clicca Installa ora
- Clicca Attiva plugin
Metodo 2: FTP/SFTP
- Carica la cartella
nextcloud-calendar-displayin/wp-content/plugins/ - Vai su WordPress → Plugin
- Trova "Nextcloud Calendar Display" e clicca Attiva
Metodo 3: Git
cd /path/to/wordpress/wp-content/plugins/
git clone https://tuo-repository.com/nextcloud-calendar-display.git
Poi attiva il plugin dal pannello WordPress.
⚙️ Configurazione
1. Ottieni l'URL ICS da Nextcloud
- Apri il tuo calendario in Nextcloud
- Clicca sull'icona dei tre puntini (⋮) accanto al nome del calendario
- Seleziona Link o Condividi
- Copia l'URL ICS (simile a:
https://nextcloud.example.com/remote.php/dav/calendars/user/calendar-name?export)
2. Configura il plugin in WordPress
- Vai su Impostazioni → Nextcloud Calendar
- Incolla l'URL ICS del calendario
- Imposta il numero di eventi da visualizzare (default: 5)
- Imposta i giorni nel futuro da considerare (default: 30)
- Clicca Salva modifiche
🚀 Utilizzo
Inserisci lo shortcode in qualsiasi pagina, post o widget:
[nextcloud_calendar]
Esempio in un post
Ecco i nostri prossimi eventi:
[nextcloud_calendar]
Per maggiori informazioni, contattaci!
🎨 Personalizzazione
Modificare gli stili CSS
Puoi personalizzare l'aspetto modificando il file style.css o aggiungendo CSS personalizzato nel tuo tema:
/* Cambia il colore principale */
.ncd-event-date {
background: #your-color !important;
}
/* Modifica la dimensione del titolo */
.ncd-event-title {
font-size: 20px;
}
/* Cambia il bordo degli eventi */
.ncd-event {
border-left-color: #your-color !important;
}
Classi CSS disponibili
.ncd-calendar- contenitore principale.ncd-title- titolo "Prossimi Eventi".ncd-events-list- lista eventi.ncd-event- singolo evento.ncd-event-date- contenitore data/ora.ncd-event-details- dettagli evento.ncd-event-title- titolo evento.ncd-event-location- luogo evento.ncd-event-description- descrizione evento
📋 Requisiti
- WordPress 5.0 o superiore
- PHP 7.0 o superiore
- Calendario Nextcloud con URL ICS pubblico accessibile
- Funzione
wp_remote_get()abilitata (standard in WordPress)
🔒 Sicurezza e Privacy
- Il plugin non memorizza credenziali di accesso
- Utilizza solo feed ICS pubblici
- Tutti gli output sono sanitizzati per prevenire XSS
- La cache viene gestita tramite WordPress Transients API
- Nessun dato personale viene tracciato o inviato a terze parti
🐛 Risoluzione Problemi
Gli eventi non vengono visualizzati
- Verifica che l'URL ICS sia corretto e accessibile
- Controlla che il calendario sia pubblico in Nextcloud
- Verifica che ci siano eventi futuri nel periodo configurato
- Svuota la cache del plugin (salva nuovamente le impostazioni)
Errore di connessione
- Verifica che il server WordPress possa raggiungere il tuo server Nextcloud
- Controlla eventuali firewall o restrizioni di rete
- Assicurati che l'URL ICS non richieda autenticazione
Gli eventi non si aggiornano
- Il plugin usa una cache di 1 ora per non sovraccaricare Nextcloud
- Per forzare l'aggiornamento, vai su Impostazioni → Nextcloud Calendar e salva nuovamente
📝 Struttura File
nextcloud-calendar-display/
├── nextcloud-calendar-display.php # File principale del plugin
├── style.css # Stili CSS
└── README.md # Questa documentazione
🔄 Aggiornamenti
Mantenere il plugin aggiornato
Se hai installato tramite Git:
cd /path/to/wordpress/wp-content/plugins/nextcloud-calendar-display
git pull
Se hai installato tramite ZIP, scarica la versione aggiornata e reinstalla.
🤝 Contribuire
Contributi, issues e feature request sono benvenuti!
- Fai un fork del progetto
- Crea un branch per la tua feature (
git checkout -b feature/AmazingFeature) - Committa le modifiche (
git commit -m 'Add some AmazingFeature') - Pusha sul branch (
git push origin feature/AmazingFeature) - Apri una Pull Request
📄 Licenza
Questo progetto è rilasciato sotto licenza AGPL-3.0-or-later. Vedi il file LICENSE per i dettagli completi.
👤 Autore
Michele Agostinelli
🙏 Ringraziamenti
- Nextcloud per l'ottima piattaforma di calendario
- La comunità WordPress per gli strumenti e la documentazione
Nota: Assicurati di condividere solo calendari che non contengono informazioni sensibili o private.