Argomento cliccabile

:discourse2: Riepilogo Clickable Topic rende l’intera area di un topic-list-item cliccabile, a differenza del solo titolo del topic.
:eyeglasses: Anteprima Anteprima su Discourse Theme Creator
:hammer_and_wrench: Link al Repository https://github.com/discourse/discourse-clickable-topic
:open_book: Nuovo a Discourse Themes? Guida per principianti all’uso di Discourse Themes

Installa questo componente del tema

Funzionalità

anteprima

:discourse2: Ospitato da noi? I componenti del tema sono disponibili per l’uso nei nostri piani Standard, Business e Enterprise.

46 Mi Piace

Grazie mille, una cosa molto necessaria! :heart:

4 Mi Piace

È un componente davvero utile! Dovrebbe essere integrato in Discourse dal punto di vista dell’esperienza utente, ma questa è solo la mia opinione.

Comunque, sono bloccato nel tentativo di far funzionare la stessa logica per le Categorie. Volevo farlo con api.modifyClass, ma sembra che mi stia perdendo la parte cruciale. Puoi aiutarmi?

Ho questa impostazione per la mia pagina desktop:
image

Fondamentalmente, il riquadro rosso a sinistra dovrebbe essere cliccabile:

O per avere un’idea perfetta di ciò che voglio ottenere: ricreare il design del Forum di Blizzard, perché mi piace molto:

Apprezzo qualsiasi aiuto tu possa darmi.

Mentre aspettavo una risposta, ho anche trovato la pagina dei componenti qui:
https://github.com/discourse/discourse/tree/master/app/assets/javascripts/discourse/app/components
Ho provato diverse idee, ma sembra che il mio hook non sia nemmeno disponibile? O mi sto perdendo qualcosa!? :slight_smile:

Siamo contenti che ti piaccia il componente!

Grazie per i suggerimenti :grinning_face_with_smiling_eyes:

Al momento questo componente è progettato per funzionare solo con i Topics nell’elenco dei topic.

1 Mi Piace

Se desideri sperimentare e fare un fork di questo componente, sei il benvenuto a farlo :+1:

Come punto di partenza per rendere cliccabile una categoria, ti suggeriamo di esaminare il codice di questo componente che lo fa modificando il componente topic-list-item all’interno del nucleo di Discourse.

Potresti provare a creare un nuovo file nella stessa cartella, indirizzando uno dei numerosi tipi di layout di categoria inclusi nei nostri componenti, assicurandoti di selezionare lo stesso stile di pagina categoria scelto nel tuo forum.

Alcuni di questi sono elencati nelle rispettive posizioni qui sotto…

app/assets/javascripts/discourse/app/components/categories-and-latest-topics.js
app/assets/javascripts/discourse/app/components/categories-and-top-topics.js
app/assets/javascripts/discourse/app/components/categories-boxes-topic.js
app/assets/javascripts/discourse/app/components/categories-boxes-with-topics.js
app/assets/javascripts/discourse/app/components/categories-boxes.js
app/assets/javascripts/discourse/app/components/categories-only.js
app/assets/javascripts/discourse/app/components/category-list-item.js

3 Mi Piace

L’anteprima non funziona più

2 Mi Piace

Penso che ora dovrebbe andare bene. :slightly_smiling_face::+1:

2 Mi Piace

Rotto ora.

Ci siamo affidati a questo componente per rendere cliccabili le schede degli argomenti della vista Categorie + Ultime (predefinita nel nostro caso). Dopo l’aggiornamento di oggi alla versione più recente 3.1.0beta8 (ora mostra come 3.2.0.beta1-dev), il componente ha smesso di funzionare correttamente.

Ora lo stato attivo del cursore rimane cliccabile, ma l’area dell’argomento non è cliccabile. Con la console del browser aperta, c’è un errore, che potrebbe aiutare gli sviluppatori a identificare il problema:

Uncaught TypeError: this.router is undefined

function navigateToTopic(topic, href) {
    if (this.siteSettings.page_loading_indicator !== "slider") {
      // Con lo slider, è più piacevole che l'intestazione si aggiorni una volta che il resto del contenuto dell'argomento viene caricato,
      // quindi salta l'impostazione anticipata.
      this.appEvents.trigger("header:update-topic", topic);
    }
    this.session.set("lastTopicIdViewed", {
      topicId: topic.id,
      historyUuid: this.router.location.getState?.().uuid
    });
    _url.default.routeTo(href || topic.get("url"));
    return false;
  }

L’errore generato per la riga:

historyUuid: this.router.location.getState?.().uuid

Potrebbe essere correlato agli aggiornamenti di Ember pianificati/in corso nel core?

Ciao @kinetiksoft - Non sono riuscito a riprodurre il problema da parte mia. Il componente del tema sembra funzionare bene con l’ultima versione di Discourse. Anche il link “anteprima nel creatore di temi” nell’OP qui sembra funzionare.

Potresti condividere un link a un sito con il problema? Forse c’è un conflitto con un altro tema/plugin.

2 Mi Piace

Grazie! Ti ho inviato un messaggio privato con un link alla community in questione. Non è appropriato condividerlo pubblicamente.

1 Mi Piace

Grazie @kinetiksoft! Sembra che il problema si verifichi quando il componente del tema viene utilizzato insieme alla visualizzazione “categorie + ultime” (che hai configurato come homepage).

Ho creato una PR che dovrebbe risolvere il problema.

Pubblicherò qui una volta che sarà stata unita, e poi dovrai aggiornare il tuo forum all’ultima versione del core di Discourse.

3 Mi Piace

Grazie David! Lieti di aver potuto aiutare a identificare il problema in un componente perfettamente funzionante

2 Mi Piace

Fatto - quindi dovrebbe avere effetto la prossima volta che aggiorni all’ultima versione di Discourse

1 Mi Piace

Faremo un tentativo di aggiornamento più tardi questa settimana e tornerò sicuramente su questo argomento per riferire come sta andando. Grazie ancora!

1 Mi Piace

Possiamo confermare che il problema è stato risolto. Grazie ancora! :heart:

1 Mi Piace

Ciao, come posso modificare questo componente per supportare il plugin Docs?

Sto eseguendo l’ultima versione di Discourse 3.4.0.beta2-dev.


Non sono sicuro se ci sia qualcosa di sbagliato nella configurazione di questo componente del tema, ma tutto il testo del corpo sull’argomento nella scheda non è cliccabile. Se fai clic subito dopo la fine del testo su entrambe le righe, puoi attivare la scheda e aprire l’argomento.

Qualche idea su cosa potrebbe causare questo?

Grazie in anticipo per tutto il tuo aiuto e i tuoi suggerimenti. :slight_smile:

4 Mi Piace

Ciao, grazie per quel TC, ma sembra che una regione rimanga non cliccabile?

Sto riscontrando questo errore in modo intermittente su un sito che amministro:

Eseguo Discourse 52ab90911 e Clickable Topic 37f0aa135fe

1 Mi Piace