WP Manifestindependent plugin directory
manifest / social / wp-plugin_linkedin-feed-pro

LinkedIn Feed Pro

Plugin WordPress per integrare e visualizzare i post LinkedIn (Company Page o profili autorizzati) tramite API ufficiali LinkedIn.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/f4rizzo/wp-plugin_linkedin-feed-pro/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Plugin WordPress per integrare e visualizzare i post LinkedIn (Company Page o profili autorizzati) tramite API ufficiali LinkedIn.

Cosa fa il plugin

  • Gestisce autenticazione OAuth 2.0 (Authorization Code) verso LinkedIn.
  • Salva in WordPress:
    • Client ID
    • Client Secret
    • Author URN (es. urn:li:organization:123456)
  • Salva laccess token in modo protetto (cifrato quando OpenSSL e disponibile).
  • Monitora scadenza token e mostra admin notice quando il token sta per scadere o e scaduto.
  • Recupera feed tramite:
    • endpoint /v2/posts
    • fallback /v2/shares (in base ai permessi)
  • Estrae i campi principali: testo, data, lifecycle state, contenuto/immagini/link.
  • Implementa cache con WP Transients API (12 ore).
  • Gestisce errori API con log in debug.log (401 e 429 in modo esplicito).
  • Espone shortcode [li_feed] con rendering frontend responsive.
  • Supporta override template da tema:
    • your-theme/linkedin-feed-pro/feed-view.php
  • Aggiunge azione admin: Svuota Cache e Sincronizza Ora.

Requisiti

  • WordPress 6.0+
  • PHP 8.0+
  • App LinkedIn Developer configurata
  • HTTPS sul dominio del sito (fortemente consigliato)

Installazione

  1. Copia la cartella linkedin-feed-pro in wp-content/plugins/.
  2. Vai in WordPress -> Plugin.
  3. Attiva LinkedIn Feed Pro.
  4. Vai in Impostazioni -> LinkedIn Feed Pro.

Configurazione passo passo (LinkedIn + WordPress)

Step 1 - Crea l`app LinkedIn

  1. Apri https://developer.linkedin.com.
  2. Vai su My apps.
  3. Clicca Create app e compila i dati richiesti:
    • App name
    • LinkedIn Page associata
    • Privacy policy URL
    • Logo

Nota: in alcuni casi LinkedIn richiede verifica della pagina associata prima di usare determinate API.

Step 2 - Configura Auth nell`app LinkedIn

  1. Apri la tua app.
  2. Vai nella sezione Auth.
  3. Copia:
    • Client ID
    • Client Secret
  4. Nella lista redirect URL, aggiungi esattamente questo URL:
https://TUO-DOMINIO/wp-admin/admin-post.php?action=lfp_linkedin_callback

Sostituisci TUO-DOMINIO con il dominio reale del sito.

Step 3 - Configura il plugin in WordPress

  1. In Impostazioni -> LinkedIn Feed Pro inserisci:
    • Client ID
    • Client Secret
    • Author URN (per ora puoi lasciarlo vuoto, lo recuperi allo step successivo)
  2. Salva.

Step 4 - Recupera Author URN corretto

Dal portale LinkedIn Developer usa Docs & Tools -> OAuth Token Tools .

  1. Apri OAuth Token Tools.
  2. Seleziona la tua app.
  3. Avvia il flow OAuth e ottieni un access token temporaneo.
  4. Esegui la chiamata API seguente:
curl -X GET 'https://api.linkedin.com/rest/organizationAcls?q=roleAssignee&role=ADMINISTRATOR&state=APPROVED' \
  -H 'Authorization: Bearer TUO_TOKEN' \
  -H 'X-Restli-Protocol-Version: 2.0.0' \
  -H 'Linkedin-Version: 202601'
  1. Nel JSON cerca il valore organization (esempio urn:li:organization:123456).
  2. Inserisci quell'URN nel campo Author URN nel plugin e salva.

Se devi usare un profilo persona, usa l'URN persona (urn:li:person:...) supportato dalla tua app e dai tuoi permessi.

Nota pratica: la chiamata API va eseguita fuori da WordPress in un client HTTP.

  • Metodo consigliato: Terminale (Mac/Linux) con curl.
    • Apri Terminale.
    • Incolla questo comando (sostituisci TUO_TOKEN):
    • Premi invio.
    • Nel JSON cerca organization, ad esempio urn:li:organization:123456. Quello va nel campo Author URN del plugin.
  • Alternativa: Postman o Insomnia, impostando gli header richiesti.
    • Metodo: GET
    • URL: stesso della curl
    • Headers:
      • Authorization: Bearer TUO_TOKEN
      • X-Restli-Protocol-Version: 2.0.0
      • Linkedin-Version: 202601
  • Browser: non consigliato perche non gestisce facilmente gli header Authorization e X-Restli-Protocol-Version.

Step 5 - Connetti il plugin a LinkedIn

  1. In Impostazioni -> LinkedIn Feed Pro clicca Connetti con LinkedIn.
  2. Completa autorizzazione su LinkedIn.
  3. Al ritorno in WordPress verifica stato connessione:
    • Verde: Connesso
    • Rosso: Non autorizzato

Step 6 - Test feed e cache

  1. Inserisci shortcode in pagina/articolo:
[li_feed]

Opzionale limite:

[li_feed limit="6"]
  1. Pubblica la pagina e verifica i post.
  2. Per forzare aggiornamento usa il pulsante:
    • Svuota Cache e Sincronizza Ora

Funzionamento cache

  • Il feed viene salvato in transient per 12 ore.
  • Durante la cache valida il plugin non richiama LinkedIn a ogni refresh.
  • Il refresh manuale elimina il transient e sincronizza subito.

Override template frontend

Per personalizzare HTML/CSS senza toccare il plugin:

  1. Crea nel tema la cartella:
your-theme/linkedin-feed-pro/
  1. Copia il file plugin templates/feed-view.php dentro la cartella tema.
  2. Modifica il file nel tema.

Il plugin usera automaticamente il template del tema se presente.

Sicurezza implementata

  • Blocco accesso diretto ai file (ABSPATH).
  • Verifica capability manage_options nelle azioni admin.
  • Nonce check in ogni form/azione di salvataggio/invio sensibile.
  • Sanitizzazione input settings.
  • Escape output in admin e frontend.

Troubleshooting rapido

  • invalid_redirect_uri
    • Il redirect URI nell`app LinkedIn non combacia al 100% con quello del plugin.
  • unauthorized_scope_error
    • La tua app non ha i permessi/scope richiesti.
  • HTTP 401
    • Token scaduto o non valido. Riconnetti il plugin.
  • HTTP 429
    • Rate limit LinkedIn raggiunto. Attendi e riprova.
  • Feed vuoto
    • Verifica Author URN, scope autorizzati e presenza post pubblicati.

Debug log WordPress

Per vedere errori API nel file log:

  1. In wp-config.php abilita:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
  1. Controlla wp-content/debug.log.

Riferimenti utili

Note

Le policy e i permessi LinkedIn possono cambiare nel tempo. Se una chiamata smette di funzionare, ricontrolla nel portale developer:

  • prodotti abilitati
  • scope concessi
  • stato approvazione app
  • compatibilita endpoint/version header