# dfsearchconsole — Google Search Console per PrestaShop

> Panoramica dfsearchconsole sincronizza i dati di Google Search Console direttamente nel back office di PrestaShop 8 e 9: top query per URL, CTR per pagina, posizione media e soprattutto quattro…

- Pagina: <https://www.datafirefly.com/it/documentation/dfsearchconsole/>
- Lingua: it
- Aggiornato il: 2026-07-01
- Altre lingue: [fr](https://www.datafirefly.com/documentation/dfsearchconsole/index.md), [en](https://www.datafirefly.com/en/documentation/dfsearchconsole/index.md), [es](https://www.datafirefly.com/es/documentation/dfsearchconsole/index.md), [de](https://www.datafirefly.com/de/documentation/dfsearchconsole/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfsearchconsole/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfsearchconsole/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfsearchconsole/index.md)
- Indice: <https://www.datafirefly.com/it/documentation/llms.txt>

## Panoramica

dfsearchconsole sincronizza i dati di Google Search Console direttamente nel back office di PrestaShop 8 e 9: top query per URL, CTR per pagina, posizione media e soprattutto quattro categorie di opportunità SEO calcolate automaticamente con suggerimenti di ottimizzazione contestuali.

Il modulo aggiunge 5 schede sotto **Migliora → Search Console**: Dashboard, Pagine, Query, Opportunità e Impostazioni. La comunicazione con Google avviene tramite OAuth2 in sola lettura (ambito `webmasters.readonly`), senza dipendenza da Composer — solo cURL nativo.

## Installazione

1. Scarica il file ZIP del modulo dal tuo account cliente DataFirefly.
2. Nel back office di PrestaShop: **Moduli → Gestore moduli → Carica un modulo**.
3. Seleziona il file ZIP e lascia completare l'installazione.
4. Il modulo crea 4 tabelle SQL (`ps_dfgsc_sync`, `ps_dfgsc_page`, `ps_dfgsc_query`, `ps_dfgsc_opportunity`) e registra le sue 5 schede sotto il menu Migliora.

Requisiti: PrestaShop da 8.0 a 8.2 o 9.0, PHP 7.4 minimo (8.1+ consigliato), estensione cURL attiva e una proprietà verificata in Google Search Console.

## Configurazione OAuth in Google Cloud

Il modulo comunica con l'API Search Console tramite le tue credenziali OAuth2. La creazione è gratuita e richiede una decina di minuti.

### 1. Creare il progetto e attivare l'API

1. Vai su [console.cloud.google.com](https://console.cloud.google.com/) e crea un progetto (o riutilizzane uno).
2. In **API e servizi → Libreria**, cerca **Google Search Console API** e attivala.

### 2. Configurare la schermata di consenso

1. Apri **API e servizi → Schermata consenso OAuth**.
2. Tipo di utente: **Esterno** (o Interno se usi Google Workspace).
3. Compila il nome dell'applicazione, l'email di supporto e il tuo dominio.
4. Aggiungi l'ambito `https://www.googleapis.com/auth/webmasters.readonly`.
5. Finché l'app non è pubblicata, aggiungi il tuo indirizzo Google come **utente di test**.

### 3. Creare l'ID client OAuth

1. In **API e servizi → Credenziali**, clicca su **Crea credenziali → ID client OAuth**.
2. Tipo di applicazione: **Applicazione web**.
3. In **URI di reindirizzamento autorizzati**, incolla l'URL mostrato nella schermata Impostazioni del modulo (nella forma `https://tuo-dominio.com/module/dfsearchconsole/oauth`).
4. Annota il **Client ID** e il **Client Secret**.

### 4. Collegare il modulo

1. In PrestaShop, apri **Migliora → Search Console → Impostazioni**.
2. Incolla il Client ID e il Client Secret, poi salva.
3. Clicca su **Connetti a Google** e autorizza l'accesso.
4. Di ritorno nel back office, seleziona la proprietà Search Console da sincronizzare nel menu a tendina.

Il pulsante **Testa connessione** verifica che il token funzioni e mostra quante proprietà sono accessibili dall'account collegato.

## Sincronizzazione

### Sincronizzazione manuale

Il pulsante **Sincronizza ora** della schermata Impostazioni avvia immediatamente una sincronizzazione completa. Conta pochi secondi per un piccolo negozio fino a 2-3 minuti per un sito con migliaia di pagine indicizzate.

### Sincronizzazione automatica (cron)

La schermata Impostazioni mostra un URL cron protetto da un token casuale di 32 caratteri. Aggiungilo al tuo crontab per una sincronizzazione giornaliera:

```
0 4 * * * curl -s "https://tuo-dominio.com/module/dfsearchconsole/cron?token=TUO_TOKEN" > /dev/null
```

Google Search Console applica un ritardo di circa 2 giorni sui dati. Il modulo sincronizza quindi sempre la finestra che termina a _oggi − 2 giorni_. Una sincronizzazione al giorno è sufficiente.

### Finestra di lookback

Di default il modulo recupera 90 giorni di dati più i 90 giorni precedenti per calcolare i delta. Questa finestra è configurabile da 28 a 480 giorni nelle Impostazioni. Più grande è la finestra, più lunga sarà la sincronizzazione.

## Dashboard

La dashboard offre una panoramica: 4 schede KPI (clic, impressioni, CTR, posizione media) con le variazioni rispetto al periodo precedente, la top 10 delle pagine, la top 15 delle query e un'anteprima delle opportunità prioritarie.

Per la posizione media, una diminuzione è un miglioramento (più bassa è la posizione, meglio si classifica la pagina). La dashboard mostra quindi una freccia verde quando la posizione diminuisce.

## Pagine e Query

### Scheda Pagine

Elenco paginato e ordinabile di tutti gli URL riportati da Search Console, con clic, impressioni, CTR, posizione e delta clic. Un filtro consente di restringere per tipo di pagina (prodotto, categoria, CMS, altro) o per testo. Cliccando su un URL si apre la sua vista di dettaglio: KPI della pagina con i valori del periodo precedente, query che puntano a quell'URL, opportunità associate e link diretto per modificare l'entità PrestaShop corrispondente.

### Scheda Query

Due modalità di visualizzazione:

- **Vista raggruppata** — una riga per query, aggregata su tutti gli URL. Ideale per identificare i tuoi termini principali.
- **Vista dettagliata** — una riga per coppia query × URL. Indispensabile per analizzare la cannibalizzazione.

Le posizioni sono mostrate con codice colore: verde (1-3), blu (4-10), giallo (11-20, potenziabili), grigio (21+).

## Opportunità SEO

Dopo ogni sincronizzazione, il modulo ricalcola automaticamente quattro categorie di opportunità:

- **Top 11–20 potenziabili (striking distance)** — query posizionate tra 11 e 20 (soglie configurabili) con un minimo di impressioni. Il modulo calcola il guadagno potenziale di clic simulando un passaggio alla posizione 5.
- **CTR sotto la media (top 10)** — pagine in top 10 il cui CTR reale è inferiore al 50 % del CTR atteso secondo la curva di riferimento integrata (aggregata da studi Advanced Web Ranking, Sistrix, Backlinko).
- **Cannibalizzazione** — la stessa query fa emergere 2 o più URL. Il modulo elenca gli URL concorrenti.
- **Perdita di clic** — pagine che hanno perso più del 25 % di clic rispetto al periodo precedente.

Ogni opportunità mostra un punteggio di priorità, le metriche associate e suggerimenti di ottimizzazione adattati al tipo di pagina (scheda prodotto, categoria o pagina CMS). Il flusso **Aperta / Completata / Ignorata** consente di seguire i tuoi progressi. Il pulsante **Ricalcola** ricostruisce tutte le opportunità dai dati già in database, senza richiamare l'API di Google.

## Impostazioni delle soglie

Nelle Impostazioni, tre soglie guidano il rilevamento:

- **Impressioni minime** (default 50) — al di sotto, la coppia query × URL è ignorata dai rilevatori.
- **Posizione min / max striking distance** (default 11 / 20) — la finestra di posizioni considerata potenziabile.

Per un piccolo negozio con poco traffico, abbassa la soglia di impressioni a 20-30. Per un sito grande, alzala a 100+ perché emergano solo i lavori significativi.

## Risoluzione dei problemi

### « Token scaduto » o errore 401

Il refresh token viene usato automaticamente ogni ora. Se Google ha revocato l'accesso (cambio password, lunga inattività, revoca manuale), ricollega il modulo tramite il pulsante **Connetti a Google** della schermata Impostazioni.

### Nessun sito nel menu a tendina

L'account Google collegato deve avere accesso ad almeno una proprietà Search Console (proprietario o utente). Verifica su [search.google.com/search-console](https://search.google.com/search-console) con lo stesso account.

### Errore « redirect_uri_mismatch » durante la connessione

L'URI di reindirizzamento dichiarato in Google Cloud Console deve corrispondere esattamente a quello mostrato nella schermata Impostazioni del modulo (protocollo https incluso, senza barra finale in più).

### Sincronizzazione molto lunga o timeout

L'API pagina a blocchi di 25.000 righe. Per i siti grandi: aumenta `memory_limit` a 512M, aumenta `max_execution_time` e privilegia il cron (che non ha il limite di tempo del browser).

### URL non risolti in entità PrestaShop

Il resolver lavora sul `link_rewrite` (slug URL semplificato). Gli URL generati da moduli di routing di terze parti possono restare non collegati: appaiono con il tipo « other » ma restano pienamente analizzati.

## Disinstallazione

La disinstallazione rimuove le 4 tabelle SQL, le schede di amministrazione e tutte le chiavi di configurazione (inclusi i token OAuth). Ricorda di revocare l'accesso dell'app nelle [impostazioni di sicurezza del tuo account Google](https://myaccount.google.com/permissions) se non usi più il modulo.
