Discourse Linkify Google Sheets

Il plugin consente di recuperare i dati del componente tema linkify da un foglio di calcolo Google. Per il momento, dovrai installare questa fork del componente tema, ma in futuro potrebbe esserci una soluzione che ti permetterà di utilizzare il componente tema originale con questo plugin.


Configurazione

Passaggi:

  1. Crea un account di servizio su Google Cloud Create service accounts  |  Identity and Access Management (IAM)  |  Google Cloud Documentation
    Google avvierà il download di un file JSON. Conservane il contenuto in modo sicuro.

  2. Crea un foglio di calcolo Google e condividilo con l’indirizzo email dell’account di servizio.

  3. Incolla queste righe alla fine della sezione env nel tuo file app.yml

     GOOGLE_ACCOUNT_TYPE: 'service_account'
     GOOGLE_CLIENT_ID: 'client-id-from-json-file'
     GOOGLE_CLIENT_EMAIL: "service-account-email-address"
     GOOGLE_PRIVATE_KEY:  istruzioni di seguito
    
  • Come configurare il parametro GOOGLE_PRIVATE_KEY?

    • Incolla la chiave presente nel file JSON in un editor di codice.
    • Usa “trova e sostituisci” per sostituire \n con \\n.
    • Copia il risultato e incollalo nel file app.yml davanti a GOOGLE_PRIVATE_KEY, racchiudendolo tra virgolette singole ' '.
  1. Ora segui le procedure standard per l’installazione del plugin.

  2. Installa questa fork del componente tema Linkify.


Impostazioni del plugin

linkify_google_sheet_id: Quando apri il foglio di calcolo Google nel browser, la lunga stringa dopo https://docs.google.com/spreadsheets/d/ è l’ID del foglio di calcolo.

linkify_google_sheet_name: Puoi avere più fogli in un file Excel, ad esempio Foglio1, Foglio2, ecc. Il nome del foglio va inserito qui.

linkify_google_sheet_cell_range: Le colonne da cui recuperare i dati per linkify. Di default è impostato sulle prime due colonne. Puoi modificare questo valore. Ecco una guida su come funzionano gli intervalli di celle: Google Sheets API Overview  |  Google for Developers


:page_facing_up: Ottieni il codice

:raising_hand_woman: Richiedi una funzionalità

:bug: Segnala un bug

Perduto?

Grazie per aver sponsorizzato il plugin @jrgong

7 Mi Piace

@sam
Con questo, propongo anche un metodo plugin-api che consenta di agganciarsi e sostituire in modo pulito la fonte dati di tali componenti del tema.

Ad esempio:

// durante l'uso
let data = useDataSource('linkify-data');
// i plugin e i componenti del tema possono fare qualcosa del genere

setDataSource('linkify-data', customDataObject);

L’idea è che un altro componente del tema possa chiamare setDataSource con un altro oggetto.
Ciò permetterebbe di sostituire la fonte dati di tali componenti senza modificare nulla nel codice.
Che ne pensi?

4 Mi Piace

Adoro! Grazie ancora per l’ottimo lavoro e l’implementazione @fzngagan

2 Mi Piace