La nuova funzionalità Workflow di Joomla 4

Il Team di JoomlaShack ha provato le nuove funzionalità che saranno incluse in Joomla 4. In questo articolo, presenteremo la nuova estensione del core "Workflow", che consente di approvare i contenuti prima della pubblicazione.

Quest'articolo è basato sulla versione Alpha di Joomla 4, pertanto le funzionalità e l'aspetto dell'estensione Workflow, così come il template di backend, nella versioen finale di Joomla 4 potrebbero essere molto differenti rispetto a quelli presentati.

Il Team "Content Workflow"

Il progetto Workflow è stato ideato dal tedesco Benjamin Trenkle.

Ha prooposto il concetto come progetto di Google Summer of Code nel 2017. Uno degli studenti ha implementato le funzionalità di base, lavorando con Benjamin e altri quattro sviluppatori come mentori. A novembre 2017, Benjamin ed uno degli studenti ha presentato l'idea dei Workflow alla Joomla! World Conference a Roma.

A maggio 2018, Benjamin ha presentato nuovamente i Workflow a JandBeyond a Colonia, in Germania:

Pagina del Workflow Project Team sul Portale dei Volontari Joomla.


Preparati a provare i Workflow

I Workflow è una nuova funzionalità presenta dalla versione Alpha 5 di Joomla 4. Prima di testare l'estensione Workflows, è necessario eseguire alcune impostazioni. Nessuna di queste è troppo nuova per chi ha già usato le versioni precedenti di Joomla.

Prima di tutto, avviare l'ultima versione Alpha di Joomla utilizzando un'istanza di launch.joomla.org.

Creare dunque due gruppi di utenti sotto il gruppo "Registered". Utilizzare questi nomi per i nuovi gruppi:

  • Blog Posters
  • Blog Approvers.

Terzo, creare due account utenti:

  • Assegnare un utente al gruppo utenti Blog Posters.
  • Assegnare l'altro utente al gruppo Blog Approvers.

Infine, è ora di creare un modo per gli utenti di inviare i propri articoli:

  • Creare una categoria articoli chiamata Blog.
  • Creare una voce di menu utilizzando il "Tipo voce di menu" denominato "Crea Articolo".
  • Assicurarsi che il sito abbia il modulo Login pubblicato nel frontend, così che gli utenti possano accedere ed inviare articoli.

Ecco come un nuovo sito Joomla 4 appare con la voce di tipo Crea Articolo ed il modulo Login:


Il nostro Workflow di Pubblicazione

Per questo tutorial introduttivo, creeremo uno scenario molto semplice per la pubblicazione di contenuti Joomla. Il workflow consisterà di quattro passaggi:

  1. Creazione del contenuto: l'utente nel gruppo Blog Posters creerà articoli per il blog.
  2. Il componente Workflows assegnerà automaticamente un nuovo articolo ad uno stadio del workflow di pubblicazione. Chiameremo questo stadio "New blog post, unpublished" (nuovo articolo blog, non pubblicato).
  3. Il componente Workflows invierà una mail all'utente nel gruppo Blog Approvers circa l'articolo appena arrivato.
  4. L'approvatore del blog rivederà e pubblicherà l'articolo.

Vediamo come impostare questo in Joomla 4.


Step #1. Abilitare le notifiche Email

Il processo workflow fa affidamento alle notifiche email, quindi è necessario abilitarle prima di iniziare.

  • Nei profili utenti di entrambi gli utenti, assicurarsi che l'opzione Receive System Emails sia impostato su Yes.
  • Nel plugin Content - Joomla, impostare l'opzione Email on transition execution su Yes.


Step #2. Workflow e Stadi

  • Nel pannello di controllo di Joomla 4, fare click su Content nel menu di sinistra.
  • Fare click su Workflows:

  • Sarà visualizzata la schermata Workflows List.
  • Fare click sul pulsante verde New.

  • Inserire Blog Workflow nel campo Name.
  • Fare click Save & Close.

Successivamente, creeremo i due stadi (Stage) del flusso di pubblicazione.

  • Nella schermata Workflow List, fare click sul cerchio con il numero 4 nella colonna Stages:

  • Sarà visualizzata la schermata Blog Workflow: Stages List. Fare click su Published:

  • Cambiare il nome a "Publish new blog post".
  • Fare click su Save & New:

  • Per i nuovi stadi di pubblicazione, inserire il nome New blog post, unpublished.
  • Assicurarsi che Condition of items in this stage parameter sia impostato su Unpublished:

  • Impostare l'opzione Default su Yes.
  • Fare click su Save & Close.
  • Adesso dovrebbero essere visibili nell'elenco i nuovi stadi. Quindi adesso c'è un nuovo workflow di pubblicazione con i suoi due stadi creati.


Step #3. Transizioni

Adesso creeremo quello che il compoente Workflows chiama "Transitions" (transizioni). Una transizione è quello che muove un articolo del blog da uno stadio di pubblicazione del workflow al successivo.

  • Da Content > Workflows.
  • Sotto la colonna Transitions per Blog Workflow, fare click sul piccolo cerchio con il numero 4:

  • Sarà visualizzata la schermata Blog Workflow: Transition List. Fare click su New:

  1. Inserire Approve/Publish nel campo Name.
  2. Selezionare New blog post, unpublished per l'opzione Current Stage.
  3. Selezionare Publish new blog post per l'opzione Target Stage.

  • Andare sulla tab Permissions.
  • Impostare la Execute Transition per il gruppo utenti Blog Approvers su Allowed.
  • Fare click su Save & Close.
  • Sarà visualizzata la nuova transizione in Blog Workflow: Transitions List.


Step #4. Controllo degli Accessi

A questo punto, abbiamo il Blog Workflow, i due stadi e la transizione.

Dunque, è necessario che i membri del team del blog abbiano i permessi corretti per i contenuti.

  • Da Content > Categories > Blog.
  • Sotto la tab Workflow, selezionare Blog Workflow:

  • Dalla tab Permissions
  • Selezionare Allowed per le azioni utente Create e Edit per il gruppo di utenti Joomla Blog Posters.

  • Successivamente, selezionare Allowed per le azioni Delete, Edit, Edit State e Edit Own per il gruppo di utenti Blog Approvers.
  • Fare click su Save & Close.

Step #5. Testare il workflow

Il lavoro sul workflow di pubblicazione del blog è terminato.

Ora è consigliato eseguire un test:

  • Accedere al frontend del sito come l'utente nel gruppo Blog Posters.
  • Fare click su "Create Article" e inviare un articolo del blog.
  • L'articolo otterrà lo stadio New blog post, unpublished nell'area amministrativa.
  • L'articolo avrà lo stato Unpublished (Sospeso) nel frontend del sito.
  • L'utente del gruppo Blog Approvers riceverà una notifica via mail. Ora potrà accedere, rivedere e pubblicare il post.

Traduzione dell'articolo "Introducing the Joomla 4 Workflows Feature" di JoomlaShack.