Uno Smart Message può firmare un post con i nomi di profilo social degli autori dell'articolo, ad esempio By @camille.example.com and Noah Petit. Nonli legge i nomi degli autori dall'articolo, poi cerca ciascun nome in una tabella che gestisci tu: in Airtable o direttamente nel template.
Questa pagina usa nomi e nomi di profilo fittizi. Ogni snippet qui sotto è stato elaborato con il motore di template di Nonli il 26/10/2026, con dati di prova e senza pubblicare nulla.
1. Cosa fa e cosa non fa#
- Associa gli autori noti di un articolo a nomi di profilo. Non trova persone o aziende citate nel testo dell'articolo e non indovina un account a partire da un nome.
- Il template scrive testo. Se quel testo diventa una vera menzione dipende dalla rete (vedi «Quali reti trasformano il testo in menzione» più sotto).
- Non abilita le menzioni dei profili personali di LinkedIn. Vedi Posso menzionare persone o aziende nei post LinkedIn?
2. Prerequisiti#
- Nomi degli autori nei tuoi articoli. Nonli legge gli autori dalla pagina dell'articolo, nei suoi dati strutturati (Schema.org
authorin JSON-LD, oppure microdataitemprop="author"con unname). Quando la pagina non ne ha, Nonli ripiega sul meta tagarticle:author, che alcuni siti compilano con l'URL di un profilo invece di un nome: la ricerca usa allora quell'URL. In un template sono disponibili comeauthors, un elenco di nomi. Verifica prima i valori reali su un articolo vero: vediauthorsin Quali variabili Twig sono disponibili in Nonli?. Non usarepost.author: è un testo unico che può descrivere la persona che ha creato il post in Nonli, non l'autore dell'articolo. - I nomi di profilo dei tuoi autori su ogni rete su cui pubblichi.
- Per il metodo Airtable, un token Airtable salvato in Nonli e l'ID della tua base. Segui Come creare una chiave segreta API di Airtable per Nonli. Non inviare mai il tuo token al supporto.
3. Metodo 1: una tabella Airtable#
3.1. Crea la tabella#
Crea una tabella chiamata Authors con una riga per autore:
| Name | Bluesky |
|---|---|
| Camille Martin | camille.example.com |
| Léa Dubois | lea.example.com |
| Sam Lefèvre |
- Name è la chiave di ricerca. Scrivilo esattamente come appare in
authors, con gli stessi accenti, spazi e lettere maiuscole. Nonli non corregge né normalizza i nomi, quindi una variante comeLea Duboisal posto diLéa Duboisnon è una corrispondenza affidabile. Se un autore firma in più modi, aggiungi una riga per ogni grafia. - Mantieni ogni nome univoco. Se due righe hanno lo stesso nome, Nonli usa la prima restituita da Airtable e l'altra riga viene ignorata.
- Aggiungi una colonna per rete (ad esempio
Bluesky,Mastodon). Una cella vuota significa «nessun nome di profilo per questa rete». - Salva i nomi di profilo senza
@: lo aggiunge il template. - Usa un campo testo su una sola riga per ogni colonna di rete. Un campo di tipo record collegato, lookup o selezione multipla restituisce un elenco invece di un testo, e il template va in errore invece di ripiegare sul nome.
3.2. Scrivi il template#
1{%- set signature = [] -%}2{%- for authorName in authors -%}3 {%- set handle = airtable('appYourBaseId', 'Authors', 'Name', authorName, 'Bluesky') -%}4 {%- set signature = signature|merge([handle ? '@' ~ handle : authorName]) -%}5{%- endfor -%}6{{ title }}7{%- if signature is not empty %}8
9By {{ signature|join(', ', ' and ') }}10{%- endif %}Sostituisci appYourBaseId con l'ID della tua base, e Authors, Name e Bluesky con i nomi della tua tabella e delle tue colonne. airtable(base, table, searchField, searchValue, fieldToReturn) restituisce il valore di fieldToReturn nella prima riga in cui searchField è uguale a searchValue, oppure nulla quando non esiste tale riga o la cella è vuota.

Il template incollato in un nuovo template Smart message, prima del salvataggio. appYourBaseId è un segnaposto.
3.3. Output atteso#
Con il titolo Budget 2027: what changes e la tabella qui sopra:
authors | Risultato |
|---|---|
| (nessuno) | Budget 2027: what changes |
Camille Martin | Budget 2027: what changesBy @camille.example.com |
Noah Petit (non presente nella tabella) | Budget 2027: what changesBy Noah Petit |
Léa Dubois, Noah Petit, Camille Martin | Budget 2027: what changesBy @lea.example.com, Noah Petit and @camille.example.com |
Sam Lefèvre (cella vuota) | Budget 2027: what changesBy Sam Lefèvre |
Questo template segue queste regole:
- Nessun autore, nessuna firma. La riga
Byviene aggiunta solo quando c'è almeno un autore, così un post non termina mai con unByisolato. - Fallback sul nome. Un autore senza nome di profilo mantiene il nome completo, quindi ogni autore è comunque citato.
- L'ordine viene mantenuto. Gli autori compaiono nell'ordine dell'articolo, separati da virgole, con
andprima dell'ultimo.
3.4. Variante: mostrare solo gli autori trovati#
Se preferisci citare solo gli autori che hanno un nome di profilo, salta gli altri:
1{%- set handles = [] -%}2{%- for authorName in authors -%}3 {%- set handle = airtable('appYourBaseId', 'Authors', 'Name', authorName, 'Bluesky') -%}4 {%- if handle -%}5 {%- set handles = handles|merge(['@' ~ handle]) -%}6 {%- endif -%}7{%- endfor -%}8{{ title }}9{%- if handles is not empty %}10
11By {{ handles|join(', ', ' and ') }}12{%- endif %}Con Léa Dubois, Noah Petit, Camille Martin, il risultato è By @lea.example.com and @camille.example.com. Con soli autori non trovati, non c'è nessuna riga By. Scegli questa variante consapevolmente: lascia fuori gli autori senza nome di profilo.
3.5. Variante: firmare solo quando tutti gli autori sono stati trovati#
Alcuni team preferiscono il tutto o niente: la firma viene aggiunta solo quando ogni autore ha un nome di profilo, e omessa del tutto negli altri casi. Mantieni il ciclo della variante precedente e cambia solo la condizione:
1{%- if handles is not empty and handles|length == authors|length %}Con Léa Dubois, Camille Martin, il risultato è By @lea.example.com and @camille.example.com. Con Léa Dubois, Noah Petit, Camille Martin, non c'è alcuna riga By, perché Noah Petit non ha un nome di profilo.
| Politica | Autore non trovato | Ideale quando |
|---|---|---|
| Fallback sul nome (template principale) | Citato per nome | Ogni autore deve sempre essere citato |
| Mostrare solo gli autori trovati | Escluso | Contano solo i nomi di profilo e una citazione parziale è accettabile |
| Firmare solo quando tutti gli autori sono stati trovati | Intera firma omessa | Una firma parziale sarebbe fuorviante |
Nessuna di queste è un'impostazione predefinita di Nonli: decide il template, quindi scegli la politica più adatta alle tue regole editoriali.
4. Metodo 2: una tabella dentro il template#
Per pochi autori, puoi tenere la tabella nello Smart Message stesso, senza Airtable. L'input (authors) e la regola di fallback sono gli stessi del metodo 1:
1{%- set blueskyHandles = {2 'Camille Martin': 'camille.example.com',3 'Léa Dubois': 'lea.example.com',4 'Alex Moreau': 'alex.example.com',5} -%}6{%- set signature = [] -%}7{%- for authorName in authors -%}8 {%- set handle = blueskyHandles[authorName] ?? null -%}9 {%- set signature = signature|merge([handle ? '@' ~ handle : authorName]) -%}10{%- endfor -%}11{{ title }}12{%- if signature is not empty %}13
14By {{ signature|join(', ', ' and ') }}15{%- endif %}Dà gli stessi risultati del metodo 1 per gli stessi nomi: ad esempio Camille Martin, Noah Petit dà By @camille.example.com and Noah Petit. I nomi vengono confrontati esattamente: Lea Dubois (senza accento) o camille martin (minuscolo) non trovano nulla e vengono stampati così come sono scritti.
Questo metodo è un esempio da adattare, non una configurazione copiata da un cliente.
4.1. Quale metodo scegliere#
| Airtable | Tabella nel template | |
|---|---|---|
| Dove modifichi l'associazione | In un'unica tabella Airtable | In ogni template |
| Condivisa tra più template | Sì: una modifica si applica ovunque | No: ogni copia del template va aggiornata |
| Richiede un token Airtable | Sì | No |
| Ideale per | Una redazione con molti autori | Pochi autori stabili |
Nessuno dei due metodi cambia le menzioni che una rete accetta.
5. Testa prima di pubblicare#
Nell'editor dei template Smart Message, testa il template con articoli rappresentativi prima di salvare: un articolo senza autore, uno con un autore che ha un nome di profilo, uno senza, e uno con più autori. Poi testa un post non di produzione end-to-end, pubblicato da un bot: i nomi di profilo Bluesky diventano menzioni solo nelle pubblicazioni dei bot (vedi sotto). Vedi Come creare uno Smart Message.
Controlla il risultato per ciò che contiene davvero:
- un nome (
Noah Petit): testo semplice; - un nome di profilo (
@camille.example.com): testo che alcune reti possono trasformare in menzione; - un URL di profilo: un link, non una menzione;
- una menzione cliccabile: visibile solo sul post pubblicato, e solo se la rete l'ha creata.
6. Quali reti trasformano il testo in menzione#
- Bluesky: quando un bot pubblica un post, Nonli cerca ogni nome di profilo completo scritto nel messaggio, come
@camille.example.com. Quando l'account viene trovato, Nonli pubblica una vera menzione Bluesky. Quando non viene trovato, il testo resta semplice. In un post creato manualmente, i nomi di profilo digitati non vengono convertiti: seleziona invece l'account nei suggerimenti di menzione dell'editor. Usa il nome di profilo completo, dominio incluso (ad esempioname.bsky.social), e non mettere punteggiatura come un punto subito dopo: verrebbe letta come parte del nome di profilo. - LinkedIn: un nome di profilo o un nome scritto da un template resta testo semplice. Nonli crea menzioni LinkedIn solo per le pagine aziendali selezionate nell'editor del post e non supporta ancora le menzioni dei profili personali. Per menzionare una persona, modifica il post su LinkedIn dopo la pubblicazione, come spiegato in Posso menzionare persone o aziende nei post LinkedIn?
- Altre reti: questa pagina non le tratta. Controlla un post di prova pubblicato prima di fare affidamento sul risultato.
7. Risoluzione dei problemi#
| Problema | Causa e soluzione |
|---|---|
Nessuna riga By | authors è vuoto per questo articolo. Controlla i dati strutturati dell'autore nella pagina dell'articolo. |
| Un autore compare con il nome invece che con il nome di profilo | Il nome in Airtable è scritto in modo diverso (accento, lettera maiuscola, secondo nome), la cella è vuota per questa rete oppure il nome della colonna nel template è sbagliato. |
| Compare il nome di profilo sbagliato | Due righe hanno lo stesso nome. Mantieni una riga per nome. |
| Nessun autore ottiene un nome di profilo | Controlla il token Airtable in Nonli, l'ID della base e i nomi della tabella e delle colonne. |
| Il nome di profilo è pubblicato ma non è cliccabile | La rete non lo ha riconosciuto come menzione. Su Bluesky, controlla il nome di profilo completo e che il post sia stato pubblicato da un bot. Su LinkedIn, il testo di un template non è mai una menzione. |