Un'azione in schema.org rappresenta un verbo o un'attività che può essere eseguita su un insieme di dati strutturati. Sono supportati più tipi di azioni e possono essere tutti definiti con dati strutturati simili.
Azioni di Go-To
Se aggiungi il markup ai tuoi contenuti con le entità schema.org, puoi aggiungere le azioni Vai a. Ad esempio, per fare in modo che un'entità EmailMessage
abbia un link Vai a ViewAction
, compila la proprietà potentialAction
dell'email, come nel seguente esempio:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://watch-movies.com/watch?movieId=abc123",
"name": "Watch movie"
},
"description": "Watch the 'Avengers' movie online"
}
</script>
Microdati
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
<link itemprop="target" href="https://watch-movies.com/watch?movieId=abc123"/>
<meta itemprop="name" content="Watch movie"/>
</div>
<meta itemprop="description" content="Watch the 'Avengers' movie online"/>
</div>
Tieni presente che il markup riportato sopra viene ignorato automaticamente da altri client di posta elettronica che non supportano gli schemi nelle email.
Link diretti per dispositivi mobili
Le Azioni rapide possono anche collegarsi direttamente ai contenuti delle app mobile native su
Android e
iOS. Per creare link diretti a
un'app, includi URL target
aggiuntivi codificati con gli schemi android-app://
e ios-app://
, come mostrato di seguito:
JSON-LD
"target": [
“<web url>”,
“android-app://<android package name>/<scheme>/<host>/<path+query>”,
“ios-app://<App store ID>/<scheme>/<host><path+query>"
]
Microdati
<link itemprop="target" href="<web url>"/>
<link itemprop="target" href="android-app://<android package name>/<scheme>/<host>/<path+query>”/>
<link itemprop="target" href="ios-app://<App store ID>/<scheme>/<host>/<path+query>"/>
Estendendo l'esempio precedente EmailMessage
:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"name": "Watch movie",
... information about the movie ...
"potentialAction": {
"@type": "ViewAction",
"target": [
"https://watch-movies.com/watch?movieId=abc123",
"android-app://com.watchmovies.app/http/watch-movies.com/watch?movieId=abc123",
"ios-app://12345/movieapp/watch-movies.com/watch?movieId=abc123"
]
}
}
</script>
Microdati
<div itemscope itemtype="http://schema.org/EmailMessage">
<meta itemprop="name" content="Watch movie"/>
... information about the movie ...
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
<meta itemprop="target" content="https://watch-movies.com/watch?movieId=abc123"/>
<meta itemprop="target" content="android-app://com.watchmovies.android/http/watch-movies.com/watch?movieId=abc123"/>
<meta itemprop="target" content="ios://12345/movieapp/watch-movies.com/watch?movieId=abc123"/>
</div>
</div>
Se l'utente non ha la tua app, l'azione lo indirizza all'URL web che fornisci.
Azioni in-app
Le azioni in-app vengono gestite direttamente in Gmail, senza reindirizzare l'utente a un altro sito web. Le Azioni in-app vengono dichiarate come le Azioni di spostamento, ma contengono informazioni aggiuntive che consentono agli user agent (come Gmail) di gestire facilmente l'azione in linea.
Anziché dichiarare un'azione con un target
, devi dichiarare un HttpActionHandler
per l'azione con la configurazione corretta.
Ad esempio, puoi aggiungere un pulsante di conferma alle email che richiedono agli utenti di approvare, confermare e riconoscere qualcosa. Quando l'utente fa clic sul pulsante, Google invia una richiesta HTTP al tuo servizio, registrando la conferma. È possibile interagire con ConfirmAction
una sola volta.
L'esempio seguente aggiunge un pulsante ConfirmAction
a un'email relativa a una nota spese:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ConfirmAction",
"name": "Approve Expense",
"handler": {
"@type": "HttpActionHandler",
"url": "https://myexpenses.com/approve?expenseId=abc123"
}
},
"description": "Approval request for John's $10.13 expense for office supplies"
}
</script>
Microdati
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
<meta itemprop="name" content="Approve Expense"/>
<div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
<link itemprop="url" href="https://myexpenses.com/approve?expenseId=abc123"/>
</div>
</div>
<meta itemprop="description" content="Approval request for John's $10.13 expense for office supplies"/>
</div>
Azioni in scadenza
In molti casi, le azioni sono pertinenti solo per un periodo di tempo limitato. Le azioni associate a entità con date note, come le prenotazioni di viaggi, scadranno automaticamente. Gmail non mostra l'azione dopo il viaggio.
Le scadenze possono anche essere aggiunte esplicitamente alle azioni. Ad esempio, un'azione per ritagliare un coupon o salvare un codice offerta potrebbe essere valida solo per un periodo di tempo limitato. Per impostare la finestra temporale in cui viene visualizzata un'azione, imposta le proprietà startTime
e endTime
dell'azione:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ConfirmAction",
"name": "Save coupon",
"handler": {
"@type": "HttpActionHandler",
"url": "https://my-coupons.com/approve?couponId=abc123"
},
"startTime": "2015-06-01T12:00:00Z",
"endTime": "2015-06-05T12:00:00Z"
}
}
</script>
Microdati
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
<meta itemprop="name" content="Save coupon"/>
<div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
<link itemprop="url" href="https://my-coupons.com/approve?couponId=abc123"/>
</div>
<meta itemprop="startTime" content="2015-06-01T12:00:00Z" />
<meta itemprop="endTime" content="2015-06-05T12:00:00Z" />
</div>
</div>
Per approfondire
Per ulteriori dettagli sulle azioni, vedi: