{"id":75666,"date":"2024-01-02T16:03:14","date_gmt":"2024-01-02T15:03:14","guid":{"rendered":"https:\/\/kinsta.com\/it\/?p=75666&#038;preview=true&#038;preview_id=75666"},"modified":"2024-01-04T14:02:37","modified_gmt":"2024-01-04T13:02:37","slug":"meilisearch","status":"publish","type":"post","link":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/","title":{"rendered":"Tutta la potenza di Meilisearch per le applicazioni Web"},"content":{"rendered":"<p>Dalle piattaforme di e-commerce ai sistemi di gestione dei contenuti (CMS), le applicazioni web generano e gestiscono enormi quantit\u00e0 di dati. Estrarre in modo efficiente le informazioni rilevanti da questi dati \u00e8 fondamentale per garantire un&#8217;esperienza utente fluida. Per questo motivo, le funzionalit\u00e0 di ricerca tradizionali che utilizzano una corrispondenza letterale delle query, parola per parola, non sono sufficienti. Serve una ricerca full-text.<\/p>\n<p>Una ricerca full-text esamina il contenuto completo dei documenti o dei database, permettendo di recuperare informazioni rilevanti da grandi insiemi di dati in base a parole o frasi specifiche. Tiene conto di fattori come la frequenza di occorrenza e il contenuto multilingue, ottenendo risultati di ricerca pi\u00f9 accurati e completi.<\/p>\n<p><a href=\"https:\/\/www.meilisearch.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Meilisearch<\/a> \u00e8 all&#8217;avanguardia in questa categoria di motori di ricerca e sfrutta la potenza della ricerca full-text per offrire uno strumento flessibile e potente costruito pensando agli <a rel=\"noopener\">sviluppatori e agli utenti finali<\/a>.<\/p>\n<p>Questo tutorial mostra come integrare Meilisearch in un progetto web Node.js.<br \/>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc><\/p>\n<h2>Cos&#8217;\u00e8 Meilisearch?<\/h2>\n<p>Meilisearch \u00e8 un motore di ricerca <a href=\"https:\/\/kinsta.com\/it\/blog\/open-source-vs-closed-source\/\">open-source<\/a> che fornisce risultati di ricerca veloci e pertinenti agli utenti finali. \u00c8 in grado di tollerare i refusi e funziona con le impostazioni predefinite per adattarsi alla maggior parte dei progetti.<\/p>\n<p>Meilisearch \u00e8 anche altamente personalizzabile e offre numerose funzioni per regolare la rilevanza dei risultati di ricerca. Tra queste caratteristiche, la pi\u00f9 importante \u00e8 quella delle <a href=\"https:\/\/www.meilisearch.com\/docs\/learn\/core_concepts\/relevancy#ranking-rules\" target=\"_blank\" rel=\"noopener noreferrer\">regole di classificazione<\/a>, che si possono adattare al proprio progetto.<\/p>\n<p>Offre un&#8217;<a href=\"https:\/\/kinsta.com\/it\/blog\/api-rest-vs-api-web\/#what-is-a-rest-api\">API RESTful<\/a> intuitiva per un&#8217;integrazione perfetta in qualsiasi sito web aziendale. Potete ospitarlo voi stessi o utilizzare la sua soluzione ufficiale ospitata nel cloud, <a href=\"https:\/\/cloud.meilisearch.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Meilisearch Cloud<\/a>, per iniziare a lavorare in modo rapido e semplice. Questo tutorial utilizza Meilisearch Cloud.<\/p>\n<h2>Prerequisiti<\/h2>\n<p>Per seguirci, \u00e8 necessario avere a disposizione:<\/p>\n<ul>\n<li><a href=\"https:\/\/kinsta.com\/it\/blog\/come-installare-node-js\/\">Node.js<\/a> installato sul computer<\/li>\n<li>Un progetto Node.js. Si pu\u00f2 utilizzare <a href=\"https:\/\/github.com\/Tammibriggs\/meilisearch-app\" target=\"_blank\" rel=\"noopener noreferrer\">questo progetto base su GitHub<\/a>.<\/li>\n<\/ul>\n<h2>Come configurare Meilisearch<\/h2>\n<ol start=\"1\">\n<li>Andiamo su Meilisearch Cloud e creiamo un account o eseguiamo l&#8217;accesso. Assicuriamoci di confermare l&#8217;indirizzo e-mail.<\/li>\n<li>Quindi, clicchiamo su <strong>Create a project<\/strong>, un server che gestisce un&#8217;istanza di Meilisearch &#8211; dove aggiungeremo i dataset del sito web.<\/li>\n<li>Aggiungiamo un <strong>nome al progetto<\/strong> (ad esempio, book-app) e scegliamo la regione che preferiamo. Poi, clicchiamo su <strong>Create<\/strong>. Dopo aver creato il progetto, possiamo cliccare su <strong>Settings<\/strong> per vedere i dettagli del progetto, come l&#8217;URL per accedere ai dataset, le chiavi API per proteggere l&#8217;istanza Meilisearch e altre informazioni.\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/book-app-overview.png\" alt=\"La pagina di panoramica del progetto book-app\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">La pagina di panoramica del progetto book-app.<\/figcaption><\/figure>\n<p>Ci sono tre chiavi API, ognuna delle quali rappresenta un <a href=\"https:\/\/www.meilisearch.com\/docs\/learn\/security\/master_api_keys\" target=\"_blank\" rel=\"noopener noreferrer\">diverso livello di autorizzazione<\/a>:<\/p>\n<ul>\n<li><strong>Master key<\/strong>: questa chiave sblocca tutti i percorsi ed \u00e8 l&#8217;unica ad avere accesso agli endpoint per la creazione e la cancellazione delle chiavi API. Usate la chiave master solo per gestire le chiavi API da un ambiente protetto.<\/li>\n<li><strong>Default Search API key<\/strong>: questa chiave garantisce l&#8217;accesso solo al <a href=\"https:\/\/www.meilisearch.com\/docs\/reference\/api\/search\" target=\"_blank\" rel=\"noopener noreferrer\">percorso di ricerca<\/a>. Possiamo usarla nel codice lato client.<\/li>\n<li><strong>Default Admin API key<\/strong>: questa chiave consente di accedere a tutti i percorsi API tranne <code>\/keys<\/code>, che serve per creare e cancellare le chiavi API. Possiamo utilizzare questa chiave solo da un ambiente protetto.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h2>Come indicizzare i dati con Meilisearch<\/h2>\n<p>Gli indici sono i componenti principali che memorizzano e organizzano i dati ricercabili. Agiscono come contenitori di documenti &#8211; oggetti contenenti uno o pi\u00f9 campi.<\/p>\n<p>Ogni indice in Meilisearch \u00e8 indipendente e personalizzabile, consentendo regole di classificazione della ricerca e opzioni di filtraggio personalizzate.<\/p>\n<h3>Come creare un indice e aggiungere documenti<\/h3>\n<ol start=\"1\">\n<li>Nella barra di navigazione, clicchiamo sulla scheda <strong>Indexes<\/strong> del progetto.<\/li>\n<li>Clicchiamo su <strong>Create an index<\/strong>. Inseriamo quindi un nome per l&#8217;indice (ad esempio, books) e clicchiamo su <strong>Create index<\/strong>.<\/li>\n<li>Selezioniamo la modalit\u00e0 di importazione dei documenti. Per questa guida, importiamo un file JSON che include 13 voci di libri dall&#8217;<a href=\"https:\/\/developers.google.com\/books\/docs\/v1\/getting_started\" target=\"_blank\" rel=\"noopener noreferrer\">API di Google Book<\/a>.<\/li>\n<li>Clicchiamo su <strong>File upload<\/strong> e carichiamo il file JSON, poi clicchiamo su <strong>Import documents<\/strong>.<\/li>\n<\/ol>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Ogni documento deve avere un campo primario contenente una <a href=\"https:\/\/www.meilisearch.com\/docs\/learn\/core_concepts\/primary_key\" target=\"_blank\" rel=\"noopener noreferrer\">chiave primaria<\/a>, ovvero un attributo con un valore unico che deve essere presente in tutti i documenti. Nella maggior parte dei casi, questo valore \u00e8 l&#8217;ID del documento. Se questa chiave non esiste, i documenti non verranno caricati correttamente.<\/p>\n<\/aside>\n\n<h3>Come aggiornare ed eliminare i documenti<\/h3>\n<p>Attualmente Meilisearch Cloud non prevede un modo per modificare o eliminare i documenti, ma possiamo utilizzare le route API REST o l&#8217;SDK. Il codice che segue mostra come aggiornare o eliminare i documenti utilizzando gli endpoint dell&#8217;API REST. Questo tutorial utilizza cURL per lavorare con le route, ma possiamo anche utilizzare una piattaforma API come Postman.<\/p>\n<ol start=\"1\">\n<li>Per <a rel=\"noopener\">aggiornare i documenti<\/a>, inviamo una richiesta a <code>PUT<\/code> sulla seguente route:\n<pre><code class=\"language-bash\">\/indexes\/{index_uid}\/documents<\/code><\/pre>\n<p><code>index_uid<\/code> \u00e8 il nome dell&#8217;indice del progetto:<\/p>\n<p><figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/index-name.png\" alt=\"Nome indice evidenziato\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Nome indice evidenziato.<\/figcaption><\/figure><\/li>\n<li>Con questo percorso possiamo aggiungere o aggiornare un elenco di documenti se questi esistono gi\u00e0. Per aggiornare un documento, dobbiamo allegare la sua chiave primaria. Il vecchio documento subisce un aggiornamento parziale basato sui campi del nuovo documento. L&#8217;aggiornamento preserva i campi non inclusi nel nuovo documento, consentendo loro di rimanere inalterati. Di seguito \u00e8 riportato un esempio di come aggiornare il titolo di un documento nell&#8217;indice dei libri da <em>JavaScript for Kids<\/em> a <em>JavaScript Coding for Kids<\/em> e aggiungere un campo editore:\n<pre><code class=\"language-bash\">curl \\\n    -X PUT '\/indexes\/books\/documents' \\\n    -H 'Content-Type: application\/json' \\\n    -H 'Authorization: Bearer ' \\\n        --data-binary '[\n        {\n            \"id\": \"71nDBQAAQBAJ\",\n            \"title\": \"JavaScript Coding for Kids\",\n            \"publisher\": \"No Starch Press\"\n        }\n    ]'<\/code><\/pre>\n<\/li>\n<li>Sostituiamo <code>&lt;your-project-url&gt;<\/code> e <code>&lt;your-admin-api-key&gt;<\/code> con i valori corrispondenti nella pagina di <strong>Project overview<\/strong>:\n<pre><code class=\"language-bash\">\"taskUid\": 26, \"indexUid\": \"books\", \"status\": \"enqueued\", \"type\": \"documentAdditionOrUpdate\", \"equeuedAt\": \"2023-05-26T07:52:24.127920065Z\"<\/code><\/pre>\n<\/li>\n<li>Per eliminare i documenti, Meilisearch prevede tre route (endpoint):\n<pre><code class=\"language-bash\">\/indexes\/{index_uid}\/documents \/\/ Deleting all documents\n\/indexes\/{index_uid}\/documents\/{document_id} \/\/ Deleting a single document\n\/indexes\/{index_uid}\/documents\/delete-batch \/\/ Deleting a selection of  \ndocuments<\/code><\/pre>\n<p>Possiamo ottenere il sito <code>document_id<\/code> dai dati originali del file <strong>books.json<\/strong> dopo aver recuperato il documento da MeiliSearch Cloud o dal database.<\/li>\n<\/ol>\n<p>Di seguito troviamo un esempio di come cancellare il libro aggiornato in precedenza:<\/p>\n<pre><code class=\"language-bash\">curl \\\n    -H 'Authorization: Bearer ' \\\n    -X DELETE '\/indexes\/books\/documents\/71nDBQAAQBAJ'<\/code><\/pre>\n<p>Dopo aver inviato la richiesta, la risposta dovrebbe essere simile a questa:<\/p>\n<pre><code class=\"language-bash\">\"taskUid\": 10, \"indexUid\": \"books\", \"status\": \"enqueued\", \"type\": \"documentDeletion\", \"equeuedAt\": \"2023-05-26T07:20:11.1291066\"<\/code><\/pre>\n<h2>Come aggiungere MeiliSearch a un servizio web<\/h2>\n<ol start=\"1\">\n<li>Iniziamo clonando il progetto iniziale da GitHub eseguendo i comandi qui sotto nel terminale:\n<pre><code class=\"language-bash\">git clone https:\/\/github.com\/Tammibriggs\/meilisearch-app.git\ncd meilisearch\u200b-app\nnpm install<\/code><\/pre>\n<p>Se controlliamo il file <strong>package.json<\/strong>, dovremmo vedere il comando start. Eseguiamo <code>npm start<\/code> per eseguire il progetto Node.js su localhost port3000. Dopo aver digitato http:\/\/localhost:3000\/ nel browser, dovremmo vedere quanto segue:<\/p>\n<p><figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/meilisearch-demo-app.png\" alt=\"Applicazione demo starter di Meilisearch.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Applicazione demo starter di Meilisearch.<\/figcaption><\/figure><\/li>\n<li>Una volta che l&#8217;applicazione \u00e8 pronta e funzionante, possiamo aggiungervi Meilisearch in modo che il modulo di ricerca inizi a restituire i risultati di Meilisearch quando viene inviato. Per farlo, installiamo Meilisearch eseguendo questo comando nel terminale:\n<pre><code class=\"language-bash\">npm install meilisearch<\/code><\/pre>\n<\/li>\n<li>Dobbiamo anche installare il pacchetto <a href=\"https:\/\/www.npmjs.com\/package\/dotenv\" target=\"_blank\" rel=\"noopener noreferrer\">dotenv<\/a> npm per caricare le credenziali sensibili da un file <strong>.env <\/strong>. Eseguiamo questo comando nel terminale:\n<pre><code class=\"language-bash\">npm install dotenv<\/code><\/pre>\n<\/li>\n<li>Creiamo un file <strong>.env<\/strong> nella cartella principale del progetto e aggiungiamo quanto segue:\n<pre><code class=\"language-markdown\">YOUR_PROJECT_URL= '&lt;your-project-url&gt;'\nYOUR_SEARCH_API_KEY= '&lt;your-admin-api-key&gt;'<\/code><\/pre>\n<p>Assicuriamoci di sostituire <code>&lt;your-project-url&gt;<\/code> e <code>&lt;your-admin-api-key&gt;<\/code> con i valori corrispondenti.<\/li>\n<li>Successivamente, importiamo <code>meilisearch<\/code> e il pacchetto <code>dotenv<\/code> nel file <strong>server.js<\/strong> e configuriamo <code>dotenv<\/code>:\n<pre><code class=\"language-js\">import {MeiliSearch} from 'meilisearch'\nimport dotenv from 'dotenv';\ndotenv.config();<\/code><\/pre>\n<\/li>\n<li>Quindi, inizializziamo Meilisearch per iniziare a lavorare sul progetto <strong>books-app<\/strong>. Andiamo al file <strong>server.js<\/strong> e aggiungiamo il seguente codice dopo la definizione della variabile <code>searchValue<\/code>:\n<pre><code class=\"language-js\">const client = new MeiliSearch({ host: process.env.YOUR_PROJECT_URL, apiKey: process.env.YOUR_SEARCH_API_KEY })<\/code><\/pre>\n<\/li>\n<li>Una funzionalit\u00e0 importante \u00e8 la ricerca nell&#8217;indice dei libri in Meilisearch utilizzando il valore di ricerca allegato all&#8217;URL al momento dell&#8217;invio del modulo. Per abilitare questa funzionalit\u00e0, aggiungiamo il seguente codice dopo la definizione della variabile <code>client<\/code>:\n<pre><code class=\"language-js\">const index = client.index('books')  \nconst searchResults = !!searchValue && await index.search(searchValue)<\/code><\/pre>\n<p>Questo codice crea un riferimento all&#8217;indice dei libri. Quindi, utilizza il metodo <code>search()<\/code> per cercare i documenti che corrispondono al valore di ricerca nell&#8217;indice dei libri se definiamo <code>searchValue<\/code>.<\/li>\n<li>Infine, per visualizzare i risultati della ricerca, modifichiamo il metodo <code>render()<\/code> come segue:\n<pre><code class=\"language-js\">res.render('index', {\n    books: searchResults ? searchResults.hits : [],\n    searchValue\n})<\/code><\/pre>\n<p>Ora siamo pronti per iniziare la ricerca nell&#8217;indice dei libri:<\/p>\n<p><figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/books-index-search-form.gif\" alt=\"Ricerca nell'indice di 'libri' con il modulo di ricerca\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Ricerca nell&#8217;indice di &#8216;libri&#8217; con il modulo di ricerca<\/figcaption><\/figure><\/li>\n<li>Dopo aver aggiunto i codici di cui sopra, il file <strong>server.js<\/strong> dovrebbe avere questo aspetto:\n<pre><code class=\"language-js\">import express from 'express';\nimport { MeiliSearch } from 'meilisearch';\nimport dotenv from 'dotenv';\ndotenv.config();\n\nconst app = express();\nconst PORT = process.env.PORT || 3000;\n\napp.set('view engine', 'ejs');\napp.use(express.static('public'));\n\napp.get('\/', async (req, res) =&gt; {\n\tconst searchValue = req.query.search;\n\tconst client = new MeiliSearch({\n\t\thost: process.env.YOUR_PROJECT_URL,\n\t\tapiKey: process.env.YOUR_SEARCH_API_KEY,\n\t});\n\tconst index = client.index('books');\n\tconst searchResults = !!searchValue && (await index.search(searchValue));\n\n\tres.render('index', {\n\t\tbooks: searchResults ? searchResults.hits : [],\n\t\tsearchValue,\n\t});\n});\n\napp.listen(PORT, () =&gt; {\n\tconsole.log(`listening at http:\/\/localhost:${PORT}`);\n});<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>\u00c8 possibile accedere al <a href=\"https:\/\/github.com\/agencycodes\/meilisearch-demo\" target=\"_blank\" rel=\"noopener noreferrer\">codice completo di questa guida su GitHub<\/a>.<\/p>\n<h2>Riepilogo<\/h2>\n<p>Meilisearch \u00e8 un&#8217;eccellente soluzione di motore di ricerca che migliora le funzionalit\u00e0 di ricerca e l&#8217;esperienza utente di un sito web. La sua eccezionale velocit\u00e0, l&#8217;algoritmo di ranking incentrato sulla rilevanza e il processo di integrazione senza soluzione di continuit\u00e0 lo rendono uno strumento prezioso per chi vuole ottimizzare le funzionalit\u00e0 di ricerca del proprio sito web.<\/p>\n<p>Il servizio di <a href=\"https:\/\/sevalla.com\/application-hosting\/\">Hosting di Applicazioni<\/a> di Kinsta migliora le prestazioni delle applicazioni alimentate da Meilisearch. Grazie a un&#8217;infrastruttura solida e ad ambienti server ottimizzati, Kinsta garantisce una rapida funzionalit\u00e0 di ricerca, migliorando l&#8217;esperienza dell&#8217;utente. La scalabilit\u00e0 della piattaforma soddisfa le esigenze di Meilisearch, garantendo operazioni di ricerca affidabili ed efficienti.<\/p>\n<p><em>A quale motore di ricerca vi affidate per i vostri progetti? Fatecelo sapere nella sezione commenti!<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dalle piattaforme di e-commerce ai sistemi di gestione dei contenuti (CMS), le applicazioni web generano e gestiscono enormi quantit\u00e0 di dati. Estrarre in modo efficiente le &#8230;<\/p>\n","protected":false},"author":199,"featured_media":75667,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[26203],"class_list":["post-75666","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-node-js"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sfrutta la potenza di Meilisearch per la tua applicazione Web - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutta la potenza di Meilisearch per le applicazioni Web\" \/>\n<meta property=\"og:description\" content=\"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstaitalia\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-01-02T15:03:14+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-04T13:02:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jeremy Holcombe\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@Kinsta_IT\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_IT\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Holcombe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/\"},\"author\":{\"name\":\"Jeremy Holcombe\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\"},\"headline\":\"Tutta la potenza di Meilisearch per le applicazioni Web\",\"datePublished\":\"2024-01-02T15:03:14+00:00\",\"dateModified\":\"2024-01-04T13:02:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/\"},\"wordCount\":1383,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/it\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg\",\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/\",\"url\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/\",\"name\":\"Sfrutta la potenza di Meilisearch per la tua applicazione Web - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/it\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg\",\"datePublished\":\"2024-01-02T15:03:14+00:00\",\"dateModified\":\"2024-01-04T13:02:37+00:00\",\"description\":\"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Node.js\",\"item\":\"https:\/\/kinsta.com\/it\/argomenti\/node-js\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Tutta la potenza di Meilisearch per le applicazioni Web\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/it\/#website\",\"url\":\"https:\/\/kinsta.com\/it\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluzioni di hosting premium, veloci e sicure\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/it\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/it\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/it\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/it\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstaitalia\/\",\"https:\/\/x.com\/Kinsta_IT\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\",\"name\":\"Jeremy Holcombe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"caption\":\"Jeremy Holcombe\"},\"description\":\"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/jeremyholcombe\/\"],\"url\":\"https:\/\/kinsta.com\/it\/blog\/author\/jeremyholcombe\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Sfrutta la potenza di Meilisearch per la tua applicazione Web - Kinsta\u00ae","description":"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/","og_locale":"it_IT","og_type":"article","og_title":"Tutta la potenza di Meilisearch per le applicazioni Web","og_description":"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.","og_url":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstaitalia\/","article_published_time":"2024-01-02T15:03:14+00:00","article_modified_time":"2024-01-04T13:02:37+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg","type":"image\/jpeg"}],"author":"Jeremy Holcombe","twitter_card":"summary_large_image","twitter_description":"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.","twitter_image":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg","twitter_creator":"@Kinsta_IT","twitter_site":"@Kinsta_IT","twitter_misc":{"Scritto da":"Jeremy Holcombe","Tempo di lettura stimato":"8 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/"},"author":{"name":"Jeremy Holcombe","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21"},"headline":"Tutta la potenza di Meilisearch per le applicazioni Web","datePublished":"2024-01-02T15:03:14+00:00","dateModified":"2024-01-04T13:02:37+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/"},"wordCount":1383,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/it\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg","inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/it\/blog\/meilisearch\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/","url":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/","name":"Sfrutta la potenza di Meilisearch per la tua applicazione Web - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg","datePublished":"2024-01-02T15:03:14+00:00","dateModified":"2024-01-04T13:02:37+00:00","description":"Ricerche velocissime ed esperienza utente migliorata. Questa guida spiega come integrare meilisearch nelle tue applicazioni.","breadcrumb":{"@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/it\/blog\/meilisearch\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#primaryimage","url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg","contentUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/meilisearch_2.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/it\/blog\/meilisearch\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/it\/"},{"@type":"ListItem","position":2,"name":"Node.js","item":"https:\/\/kinsta.com\/it\/argomenti\/node-js\/"},{"@type":"ListItem","position":3,"name":"Tutta la potenza di Meilisearch per le applicazioni Web"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/it\/#website","url":"https:\/\/kinsta.com\/it\/","name":"Kinsta\u00ae","description":"Soluzioni di hosting premium, veloci e sicure","publisher":{"@id":"https:\/\/kinsta.com\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/it\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstaitalia\/","https:\/\/x.com\/Kinsta_IT","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21","name":"Jeremy Holcombe","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","caption":"Jeremy Holcombe"},"description":"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.","sameAs":["https:\/\/www.linkedin.com\/in\/jeremyholcombe\/"],"url":"https:\/\/kinsta.com\/it\/blog\/author\/jeremyholcombe\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/75666","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/users\/199"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/comments?post=75666"}],"version-history":[{"count":5,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/75666\/revisions"}],"predecessor-version":[{"id":75684,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/75666\/revisions\/75684"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/en"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/fr"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/pt"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/de"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/es"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/translations\/nl"},{"href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/75666\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/media\/75667"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/media?parent=75666"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/tags?post=75666"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/topic?post=75666"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}