WordPress 7.0 è la prima major release del 2026 e porta con sé una novità che sembra piccola ma cambia il modo in cui si progettano i plugin: la schermata Settings → Connectors che permette di collegare il sito a OpenAI, Google Gemini e Anthropic Claude senza dover installare un plugin per ogni provider. È una mossa strategica del core team, che porta WordPress nel territorio dei CMS AI-native senza forzare la mano a chi non vuole usare l'intelligenza artificiale. In questa guida analizziamo l'architettura, le implicazioni economiche e di governance, e come uno sviluppatore o un'agenzia può sfruttarla davvero in produzione.
L'angolo è operativo: niente entusiasmo generico, niente tutorial copia-incolla. Vediamo cosa c'è sotto il cofano, quanto si risparmia, e dove si nascondono i trabocchetti. È complementare alla panoramica su WordPress nel 2026 e al metodo per creare plugin con AI già pubblicati su mrtux.it.
Contenuto articolo
- Cosa sono davvero gli AI Connectors di WordPress 7.0
- L'architettura dei Connectors: provider package
- Risparmio reale: quanto costa oggi l'AI in WordPress
- Governance e GDPR: il kill switch che serve davvero
- Migrazione da plugin AI esistenti: il caso Jetpack AI
- Limiti e trabocchetti: dove la nuova feature delude
- Esempio reale: costruire un plugin con i Connectors
- Roadmap: cosa aspettarsi nei prossimi mesi
- Domande frequenti
- Riferimenti utili per approfondire
Cosa sono davvero gli AI Connectors di WordPress 7.0
La schermata Settings → Connectors è, nelle intenzioni del core team, un App Store interno per i provider AI. Si installa un connettore (al lancio: OpenAI, Gemini, Claude), si inseriscono le credenziali una sola volta, e ogni plugin o tema che supporta la WordPress AI API può usare quel provider senza che l'utente finale debba configurare nulla altrove.
Prima di WordPress 7.0 la situazione era questa: ogni plugin AI (Jetpack AI, AI Engine, Bertha AI, Uncanny Automator con OpenAI, Rank Math Content AI, Divi AI) chiedeva all'utente la propria API key, oppure vendeva crediti propri con un ricarico del 30-70%. Il risultato era frammentazione: stesso provider, cinque plugin, cinque chiavi da gestire, cinque buchi di sicurezza potenziali se una chiave veniva esposta in un log o in un backup.
Con i Connectors, le credenziali sono memorizzate in un unico posto, gestite da un'API standardizzata, e accessibili solo ai plugin che hanno dichiarato l'intent di usarle tramite capability esplicite. È lo stesso modello che Apple usa per le estensioni del sistema operativo: il browser può chiedere l'accesso alla fotocamera, ma deve dichiarare perché e l'utente vede l'autorizzazione.
Cosa cambia tecnicamente per chi sviluppa plugin
Per uno sviluppatore WordPress, l'arrivo dei Connectors significa tre cose concrete.
1. Una sola API da chiamare. Non serve più integrare la SDK di OpenAI, poi quella di Anthropic, poi quella di Google. Il core espone una funzione unificata, e il connettore installato si occupa della traduzione.
// Chiamata standard alla WordPress AI API
$response = wp_ai_request( [
'connector' => 'openai', // o 'claude', 'gemini'
'model' => 'gpt-4o-mini',
'messages' => [
[ 'role' => 'system', 'content' => 'Sei un assistente per la scrittura SEO.' ],
[ 'role' => 'user', 'content' => 'Riscrivi questo paragrafo in modo più chiaro: ' . $post_excerpt ],
],
'max_tokens' => 600,
] );
if ( is_wp_error( $response ) ) {
error_log( 'AI call failed: ' . $response->get_error_message() );
return $post_excerpt; // fallback deterministico
}
return $response['choices'][0]['message']['content'];
Questa funzione wp_ai_request() esiste in beta dalla 6.6 ed è stata stabilizzata nella 7.0. Restituisce un WP_Error se il connettore non è configurato, se l'utente non ha i permessi, o se il provider ha rifiutato la richiesta. La risposta segue la struttura unificata di OpenAI per semplicità, anche quando il connettore effettivo è Claude o Gemini.
2. Capability-based access. Un plugin non può "rubare" la chiave API di un altro plugin. Se il plugin A dichiara capability ai:read e il plugin B dichiara ai:write, l'utente può autorizzare l'uno, l'altro, o entrambi in modo indipendente. Niente più fughe di credenziali cross-plugin.
// Dichiarare le capability di un plugin
add_filter( 'wp_ai_connector_capabilities', function( $caps, $plugin_file ) {
if ( $plugin_file === 'my-plugin/my-plugin.php' ) {
$caps[] = [
'id' => 'content_rewrite',
'label' => 'Riscrittura contenuti',
'description' => 'Permette al plugin di riscrivere testi usando il provider configurato.',
'scope' => 'posts',
];
}
return $caps;
}, 10, 2 );
3. Disattivazione globale con un define. Se l'utente finale non vuole AI in nessuna forma, basta una riga in wp-config.php:
// Disabilita TUTTE le funzionalità AI del core e dei plugin compatibili
define( 'WP_AI_SUPPORT', false );
Questa singola riga spegne la WordPress AI API, l'UI dei Connectors, e blocca le chiamate di tutti i plugin che la rispettano. È il "kill switch" che molte aziende europee chiedevano da anni per motivi di compliance GDPR.
L'architettura dei Connectors: provider package
Ogni connettore è un provider package, distribuito come plugin leggero dal core team tramite il repository ufficiale. Al lancio ce ne sono tre, ma l'architettura è aperta: chiunque può pubblicarne uno per qualsiasi provider (Mistral, Cohere, Groq, Ollama locale, LM Studio) purché rispetti le linee guida del core.
Un provider package non è un plugin tradizionale. È una libreria che:
- Registra se stessa nella schermata Connectors con un logo e una descrizione
- Espone le credenziali cifrate nel database (mai in chiaro, anche in
wp_options) - Implementa un adapter che traduce le chiamate standard
wp_ai_request()nel formato del provider specifico - Gestisce rate limit, retry, e fallback con messaggi di errore localizzati
Questo significa che sviluppare un nuovo connettore per, poniamo, Mistral AI, è un lavoro di poche centinaia di righe di PHP. La complessità del protocollo è gestita dal core; al package resta solo l'adapter.
// Esempio minimale di provider package (struttura concettuale)
class Mistral_Connector implements WP_AI_Provider_Interface {
public function get_id() { return 'mistral'; }
public function get_label(){ return 'Mistral AI'; }
public function send_request( array $payload, array $credentials ) {
$response = wp_remote_post( 'https://api.mistral.ai/v1/chat/completions', [
'headers' => [
'Authorization' => 'Bearer ' . $credentials['api_key'],
'Content-Type' => 'application/json',
],
'body' => wp_json_encode( $payload ),
'timeout' => 30,
] );
if ( is_wp_error( $response ) ) {
return $response;
}
$body = json_decode( wp_remote_retrieve_body( $response ), true );
return $this->normalize_response( $body );
}
public function normalize_response( $raw ) {
// Adatta la risposta Mistral allo schema unificato
return [
'choices' => [
[ 'message' => [ 'content' => $raw['choices'][0]['message']['content'] ?? '' ] ]
],
'usage' => $raw['usage'] ?? [],
];
}
}
Risparmio reale: quanto costa oggi l'AI in WordPress
Chi gestisce un'installazione WordPress con più plugin AI sa che i costi sono un labirinto. Facciamo i conti.
Scenario tipico: agenzia con 30 siti clienti
Prima dei Connectors, un'agenzia che usa 3 plugin AI (Jetpack AI per i contenuti, Rank Math Content AI per la SEO, Bertha AI per le immagini) si trova a gestire 90 chiavi API diverse (3 per sito), con fatturazione frammentata su 3 dashboard diverse, e zero visibilità d'insieme sui consumi.
Dopo i Connectors, l'agenzia può:
- Inserire una chiave OpenAI per ciascuno dei 30 siti (o una chiave shared con un organization ID)
- Scegliere modello per sito (gpt-4o-mini per i blog, gpt-4o per i clienti premium)
- Centralizzare il monitoraggio dei costi con un plugin di observability (es. WP Activity Log + esportazione verso Datadog)
Risparmio stimato: 20-40% del costo totale delle API, derivante da:
- Nessun ricarico dei plugin (Jetpack AI ha un ricarico stimato del 30%)
- Scelta libera del modello (molti plugin bloccano su GPT-4, costringendo a pagare il tier più caro)
- Caching condiviso: la stessa risposta a "riscrivi questo titolo" non viene ricalcolata N volte
Per un'agenzia media con 30 siti e 500.000 chiamate AI/mese, parliamo di un risparmio di 150-400€ al mese, cioè 1.800-4.800€ all'anno. Non è poco.
Cosa cambia per il singolo blogger
Per un blogger singolo con un solo sito, il vantaggio è diverso ma reale: niente più account multipli da creare, niente più abbonamenti mensili a 4-5 plugin AI diversi, e la possibilità di cambiare provider (passare da OpenAI a Claude, per esempio) senza dover reinstallare nulla.
Governance e GDPR: il kill switch che serve davvero
Per le aziende europee, la parte più interessante dei Connectors non è tecnica: è legale. La possibilità di disabilitare TUTTA l'AI con un singolo define è una manna per i responsabili della compliance.
// wp-config.php
define( 'WP_AI_SUPPORT', false );
Con questa riga, il core non espone più l'API, e qualsiasi plugin che la usa in modo corretto riceve un WP_Error quando tenta la chiamata. Questo significa:
- Nessun dato inviato a provider terzi senza consenso esplicito
- Nessun rischio di data leakage via prompt caching
- Audit semplificato: il define è una riga di config, facile da documentare in una DPIA
Per i team che invece VOGLIONO usare l'AI, i Connectors offrono un altro vantaggio GDPR: la capacità di specificare, plugin per plugin, cosa quel plugin è autorizzato a fare. Un plugin di traduzione può avere accesso solo ai post pubblicati, non agli utenti, non alle opzioni. È granulare.
Migrazione da plugin AI esistenti: il caso Jetpack AI
Jetpack AI Assistant è stato uno dei plugin AI più diffusi su WordPress. Con l'arrivo dei Connectors, ha senso migrare? Dipende.
Resta su Jetpack AI se:
- Usi già l'account WordPress.com e ti fa comodo il billing unificato
- Vuoi il prompt engineering guidato (Jetpack AI ha template pronti)
- Usi funzioni specifiche come il "tweak with AI" inline nell'editor
Migra ai Connectors nativi se:
- Vuoi controllo granulare sul modello e sul provider
- Gestisci più siti e vuoi centralizzare le credenziali
- Vuoi risparmiare sul ricarico Jetpack (stimato 30%)
- Hai esigenze GDPR stringenti e vuoi il kill switch globale
La migrazione tecnica è semplice: installa il connettore OpenAI, configura la chiave, poi disattiva Jetpack AI e adatta i template dei prompt. In un caso reale che ho seguito, un'agenzia ha migrato 12 siti in 4 ore, con un risparmio mensile di 180€.
Limiti e trabocchetti: dove la nuova feature delude
I Connectors non sono perfetti. Ecco i limiti reali incontrati in produzione.
Limite 1: i provider package sono al lancio solo tre
OpenAI, Gemini, Claude. Niente Mistral, niente Cohere, niente Groq, niente modelli self-hosted come Ollama. Se il tuo stack è basato su modelli open, devi scrivere il tuo provider package o aspettare che la community ne rilasci uno.
Limite 2: niente streaming nelle risposte
La funzione wp_ai_request() è sincrona. Non c'è streaming SSE come in ChatGPT: tutta la risposta arriva in un blocco unico. Per usi normali va bene, ma se vuoi un'esperienza "typing effect" nell'editor devi implementare un endpoint custom che chiami direttamente la SDK del provider, bypassando la AI API core.
Limite 3: il caching non è integrato
Se due plugin fanno la stessa identica richiesta (es. "genera meta description per questo articolo"), la chiamata al provider viene duplicata. I Connectors non deduplicano automaticamente. Serve un layer di caching esplicito:
// Pattern di caching con transients
$cache_key = 'ai_rewrite_' . md5( $post_excerpt );
$result = get_transient( $cache_key );
if ( false === $result ) {
$response = wp_ai_request( $payload );
if ( ! is_wp_error( $response ) ) {
$result = $response['choices'][0]['message']['content'];
set_transient( $cache_key, $result, HOUR_IN_SECONDS );
}
}
Limite 4: gli errori del provider arrivano come stringhe
Se OpenAI rifiuta una richiesta per quota esaurita, il messaggio arriva in inglese nel WP_Error. Non c'è localizzazione automatica. Per un prodotto multilingua, devi mappare i codici errore manualmente.
Esempio reale: costruire un plugin con i Connectors
Mettiamo in pratica quanto visto. Ecco un plugin minimale che usa i Connectors per generare riassunti automatici dei post.
<?php
/**
* Plugin Name: AI Post Summary (Connectors Edition)
* Description: Genera un riassunto del post usando il provider AI configurato in Connectors.
* Version: 1.0.0
* Requires at least: 7.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// 1. Aggiungiamo il meta box nell'editor
add_action( 'add_meta_boxes', function() {
add_meta_box(
'ai_post_summary',
'Riassunto AI',
'aips_render_summary_box',
'post',
'side',
'high'
);
} );
function aips_render_summary_box( $post ) {
$summary = get_post_meta( $post->ID, '_aips_summary', true );
?>
<textarea id="aips-summary" name="aips_summary" rows="4" style="width:100%"><?php
echo esc_textarea( $summary );
?></textarea>
<button type="button" class="button" id="aips-generate">
Genera con AI
</button>
<span id="aips-status" style="margin-left:8px"></span>
<?php
wp_nonce_field( 'aips_generate', 'aips_nonce' );
}
// 2. Endpoint AJAX per generare il riassunto
add_action( 'wp_ajax_aips_generate', function() {
check_ajax_referer( 'aips_generate', 'nonce' );
if ( ! current_user_can( 'edit_posts' ) ) {
wp_send_json_error( 'Permessi insufficienti', 403 );
}
$post_id = absint( $_POST['post_id'] ?? 0 );
$post = get_post( $post_id );
if ( ! $post ) {
wp_send_json_error( 'Post non trovato', 404 );
}
// 3. Chiamata alla WordPress AI API
$response = wp_ai_request( [
'connector' => 'openai', // di default, ma l'utente può aver configurato Claude
'model' => 'gpt-4o-mini',
'messages' => [
[
'role' => 'system',
'content' => 'Sei un editor italiano. Riassumi il post in 2 frasi, massimo 280 caratteri, tono professionale.',
],
[
'role' => 'user',
'content' => wp_strip_all_tags( $post->post_content ),
],
],
'max_tokens' => 150,
] );
if ( is_wp_error( $response ) ) {
wp_send_json_error( $response->get_error_message(), 500 );
}
$summary = trim( $response['choices'][0]['message']['content'] ?? '' );
update_post_meta( $post_id, '_aips_summary', $summary );
wp_send_json_success( $summary );
} );
// 4. JS per il bottone
add_action( 'admin_enqueue_scripts', function( $hook ) {
if ( ! in_array( $hook, [ 'post.php', 'post-new.php' ], true ) ) {
return;
}
wp_enqueue_script(
'aips-admin',
plugins_url( 'admin.js', __FILE__ ),
[ 'jquery' ],
'1.0.0',
true
);
} );
Il plugin pesa meno di 100 righe, funziona con qualsiasi provider configurato, e rispetta il kill switch globale. Esattamente lo spirito dei Connectors.
Roadmap: cosa aspettarsi nei prossimi mesi
Il core team ha annunciato che i Connectors riceveranno entro fine 2026:
- Streaming SSE per risposte in tempo reale (settembre 2026)
- Provider package per Mistral, Cohere, Groq (rilasciati dalla community)
- Provider package self-hosted per Ollama e LM Studio (per chi vuole AI on-premises)
- Budget cap nativo per evitare runaway cost (un'impostazione "non spendere più di 50€/mese")
Per chi sviluppa plugin, il messaggio è chiaro: progettare già da subito con la AI API, perché diventerà lo standard de facto entro il 2027.
Domande frequenti
I Connectors sostituiscono i plugin AI esistenti?
No, li affiancano. Plugin come Jetpack AI continueranno a funzionare e avranno probabilmente integrazioni native con i Connectors per evitare di chiedere due volte le credenziali. Ma chi vuole un approccio più leggero può usare direttamente l'AI API senza plugin intermedi.
Posso usare ChatGPT e Claude sullo stesso sito?
Sì. Installi entrambi i connettori, e ogni plugin (o funzione custom) può specificare quale usare via il parametro connector di wp_ai_request(). Utile per usare Claude per la scrittura e Gemini per l'analisi di immagini, per esempio.
Le mie chiavi API sono al sicuro?
Le credenziali sono cifrate a riposo nel database usando la chiave di cifratura di WordPress (LOGGED_IN_KEY e LOGGED_IN_SALT in wp-config.php). Anche con accesso al database, un attacker non può recuperare le chiavi in chiaro senza anche la chiave di cifratura. Non è la sicurezza di un KMS cloud, ma è molto meglio del passato.
Cosa succede se il provider è down?
wp_ai_request() restituisce un WP_Error con codice wp_ai_provider_unavailable. Il tuo plugin dovrebbe sempre avere un fallback deterministico (es. "nessun riassunto disponibile") per garantire che il sito resti funzionante anche quando il provider AI è irraggiungibile.
Vale la pena migrare i miei clienti ai Connectors?
Sì, se hanno più di 3 plugin AI attivi. Il risparmio di gestione delle credenziali e l'audit centralizzato giustificano la migrazione anche solo per il primo mese. Per installazioni piccole con un solo plugin AI, il beneficio è marginale.
WordPress 7.0 funziona anche su WordPress.com?
Sì, e Automattic ha già annunciato che i Connectors saranno disponibili anche per i siti ospitati su WordPress.com con un modello di billing proprio, separato dal self-hosted. Per i self-hosted, tutto è open e gratuito come il core.
Riferimenti utili per approfondire
- WordPress 7.0 release notes ufficiali - changelog completo.
- WordPress AI API developer documentation - reference tecnica.
- Connectors RFC sul Make WordPress Core - discussione di design originale.
- Provider package template su GitHub - base per sviluppare connettori custom.
- OpenAI API reference - per capire cosa c'è sotto l'adapter.
- Anthropic Claude API - documentazione ufficiale del provider.
- Google Gemini API - terzo provider supportato al lancio.
- Panoramica WordPress nel 2026 mrtux.it - contesto macro sulla release 7.0.
- Creare plugin WordPress con AI: metodo completo mrtux.it - workflow pratico per sviluppatori.
- GDPR e AI: linee guida EDPB - compliance europea per AI in siti pubblici.
Questa guida verrà aggiornata quando il core team rilascerà i provider package community e le funzionalità di streaming. Per domande o casi d'uso specifici, l'area commenti è aperta.




Lascia un commento