Configuration et dépannage des oneboxes

:bookmark: Ce guide explique comment configurer et dépanner les oneboxes dans Discourse. Il couvre les paramètres d’administration, le fonctionnement des oneboxes et les étapes pour résoudre les problèmes courants.

:person_raising_hand: Niveau utilisateur requis : Administrateur

Les oneboxes sont des aperçus de liens enrichis que les utilisateurs peuvent créer dans leurs publications. Bien que les utilisateurs puissent facilement générer ces aperçus, les administrateurs du site disposent de contrôles supplémentaires et peuvent devoir dépanner lorsque les liens ne s’affichent pas comme prévu.

Configuration administrateur

Pour gérer les paramètres des oneboxes :

  1. Accédez au panneau d’administration
  2. Naviguez vers la section des paramètres du site
  3. Recherchez « onebox »

Vous verrez une liste de paramètres liés aux oneboxes :

Certains paramètres notables incluent :

  • post onebox maxlength : Contrôle la quantité de texte incluse dans une onebox
  • max oneboxes per post : Limite le nombre de oneboxes pouvant apparaître dans une seule publication (par défaut : 50)
  • enable inline onebox on all domains : Active les oneboxes en ligne sur tous les domaines, convertissant les URL simples en titres liés (par exemple, https://en.wikipedia.org/wiki/Fun_(band) devient « Fun (band) - Wikipedia »). Ceci est activé par défaut.
  • blocked onebox domains : Permet de désactiver les oneboxes pour des domaines spécifiques
  • block onebox on redirect : Lorsqu’activé, empêche la création de oneboxes pour les URL qui redirigent vers une autre destination

Fonctionnement des oneboxes

Lorsqu’un lien est inclus dans une publication, Discourse visite la page de destination et recherche des balises Open Graph ou oEmbed, notamment :

  • Adresse du site
  • Titre
  • Image à la une
  • Icône du site (ou favicon)
  • Description (obligatoire)
  • Prix du produit (si pertinent)

:warning: Discourse exige que la balise description soit présente et contienne suffisamment de texte pour résumer la page. Sans cela, le lien cible ne sera pas converti en onebox.

Voici un exemple de onebox pour https://discourse.org montrant le titre du site, l’image à la une, l’icône et la description :

Dépannage

Si les oneboxes ne fonctionnent pas comme prévu, essayez ces étapes :

  1. Testez le site en utilisant iFramely :

    • Collez le lien et vérifiez s’il utilise les balises méta OpenGraph ou oEmbed correctes
    • Assurez-vous que le texte de description est présent et adéquat
  2. Vérifiez si la requête de onebox est bloquée :

    • Certains hébergeurs peuvent bloquer les agents utilisateurs « inconnus »
    • Vérifiez que le site cible ne bloque pas l’agent utilisateur de Discourse
  3. Pour les liens internes ne s’affichant pas sous forme de oneboxes :

    • Assurez-vous que le lien n’est pas dans une catégorie sécurisée
    • Les liens internes ne génèrent des oneboxes que dans des catégories publiques ou au sein de la même catégorie pour des raisons de sécurité

Depuis la console Rails, vous pouvez invalider ou récupérer explicitement les oneboxes en appelant les méthodes lors des tests en exécutant :

[1] pry(main)> Oneboxer.invalidate(url)
=> 0

[2] pry(main)> Oneboxer.onebox(url)
=> "<aside class=\"onebox …(elidé)\""

[3] pry(main)> InlineOneboxer.invalidate(url)
=> 0

[4] pry(main)> InlineOneboxer.lookup(url)
=> {url: "https://example.com", title: "Titre de la page exemple"}

Ressources supplémentaires

2 « J'aime »

C’est une bonne ressource mais elle semble insuffisante

Je l’ai fait et cela a renvoyé une seule boîte, elle était légère en contenu mais semblait toujours meilleure qu’un simple lien URL

En supposant que le manque de contenu soit le problème pour qu’il ne s’affiche pas en une seule boîte sur mon site, car il ne répond pas à cette exigence, que peut-on faire ?

Je ne vois pas de paramètre pour afficher en une seule boîte les sites qui n’ont pas assez de contenu, donc peut-on contacter un administrateur de site pour qu’il apporte une modification de son côté, si oui, que faut-il demander ?

Comment cela aide-t-il à résoudre le problème de ne pas afficher en une seule boîte ?

2 « J'aime »