Nouvelles fonctionnalités dans 2.4.0.beta3
Personnalisation du fichier robots.txt
Cette fonctionnalité permet aux administrateurs de personnaliser/remplacer le contenu du fichier robots.txt à l’adresse /admin/customize/robots. Cette page n’est liée nulle part dans l’interface utilisateur : les administrateurs doivent saisir manuellement l’URL pour y accéder :
Envoi d’un maximum de 200 e-mails par minute pour les invitations en masse
Remarque : invite.via_email a été déprécié au profit de invite.emailed_status.
Ce commit ajoute une nouvelle colonne emailed_status dans la table invites pour suivre l’état d’envoi des e-mails.
0 - non requis
1 - en attente
2 - en attente (masse)
3 - en cours d'envoi
4 - envoyé
- Pour les invitations par e-mail normales, un enregistrement d’invitation est créé avec
emailed_statusdéfini sur « en attente ». - Lors de l’envoi d’invitations en masse, un enregistrement d’invitation est créé avec
emailed_statusdéfini sur « en attente (masse) ». - Pour les invitations générant un lien, un enregistrement d’invitation est créé avec
emailed_statusdéfini sur « non requis ». - Lorsque l’e-mail d’invitation est dans la file d’attente,
emailed_statusest mis à jour à « en cours d’envoi ». - Une fois l’e-mail envoyé via le travail
InviteEmail, l’enregistrement d’invitation voit sonemailed_statusmis à jour à « envoyé ».
Authentification externe lors de l’échange d’invitations
Cette fonctionnalité (lorsqu’elle est activée) permet aux sites invite_only d’exiger une authentification externe avant de pouvoir échanger une invitation.
- Création d’un paramètre de site caché pour activer/désactiver cette option
- Permet l’envoi d’invitations avec la connexion locale désactivée
- Ajout d’un bouton OAuth au formulaire d’invitation
- Nécessite que l’adresse e-mail OAuth corresponde à l’adresse e-mail de l’invitation
- Empêche l’échange de l’invitation si l’authentification OAuth échoue
Choix de la catégorie lors de la publication d’un MP
Auparavant, cela par défaut sur Non catégorisé, ce qui n’était pas idéal sur certains forums. Désormais, le membre du personnel peut immédiatement décider dans quelle catégorie déplacer le MP.
Affichage du contenu brut des e-mails pour les publications en file d’attente modérables
Si une publication arrive par e-mail mais doit être révisée, nous affichons désormais une icône cliquable pour voir le contenu brut de l’e-mail.
Ceci est utile si l’analyseur d’e-mails de Discourse se comporte de manière étrange et que l’utilisateur révisant la publication souhaite connaître le contenu original avant d’approuver/rejeter la publication.
Améliorations des mots surveillés
De nouvelles fonctionnalités ont été ajoutées dans cette version.
Il y a deux nouveaux boutons. Le premier permet aux administrateurs de télécharger les mots surveillés par action dans un fichier .txt, le deuxième bouton efface tous les mots supprimés par action (par exemple, bloquer, signaler, etc.). De plus, lorsqu’une publication est rejetée car elle contient un ou plusieurs mots bloqués, le message d’erreur liste désormais tous les mots bloqués contenus dans la publication.
Veuillez noter que ces nouvelles fonctionnalités changent également le format du fichier pour l’importation des mots surveillés de .csv à .txt, ce qui le rend incohérent avec l’extension du fichier lors de l’exportation des mots surveillés.
Personnalisation des e-mails HTML
Cette fonctionnalité ajoute la possibilité de personnaliser la partie HTML de tous les e-mails en utilisant un modèle HTML personnalisé et, éventuellement, du CSS pour le styliser. Le CSS sera analysé et converti en styles en ligne car le CSS est mal pris en charge par les clients de messagerie. Lors de la rédaction du HTML et du CSS personnalisés, tenez compte des clients de messagerie pris en charge. Gardez les personnalisations très simples.
Les personnalisations peuvent être ajoutées et modifiées dans Admin > Personnaliser > Style d’e-mail.
Puisque l’e-mail de résumé est déjà fortement stylisé, il existe un paramètre pour désactiver les styles personnalisés pour les e-mails de résumé appelé apply custom styles to digest (appliquer les styles personnalisés aux résumés), trouvé dans Admin > Paramètres > E-mail.
Dans le cadre de ce travail, les locales RTL sont désormais rendues correctement pour tous les e-mails.
Liste des modérateurs de catégorie sur la page À propos
Une nouvelle mise à jour pour la fonctionnalité Category Group Review/Moderation. Désormais, les modérateurs de catégorie seront visibles sur la page À propos du site, aux côtés des membres du personnel.
Ajout de la prise en charge du niveau de visibilité des membres du groupe et envoi d’une notification lorsqu’un membre est accepté dans un groupe.
Autre ajout à la gestion de la visibilité des groupes. Désormais, il existe 5 niveaux de visibilité (similaires à la visibilité du groupe) :
- public (par défaut)
- utilisateurs connectés
- membres uniquement
- personnel
- propriétaires
Les administrateurs et les propriétaires de groupes ont toujours une visibilité sur les membres du groupe.
Désormais, des notifications sont également envoyées aux utilisateurs qui sont acceptés dans un groupe.
Intégration de la liste des sujets sur des sites distants via l’API JavaScript.
Cette fonctionnalité ajoute la prise en charge d’une balise <d-topics-list> que vous pouvez intégrer dans votre site et qui sera rendue sous forme de liste de sujets Discourse. Tous les attributs de la balise seront transmis en tant que filtres. Par exemple :
<d-topics-list discourse-url="URL" category="1234"> filtrera sur la catégorie 1234.
Pour utiliser cette fonctionnalité, activez le paramètre de site embed topics list (intégrer la liste des sujets). Ensuite, sur le site où vous souhaitez intégrer, incluez le script JavaScript suivant :
<script src="http://URL/javascripts/embed-topics.js"></script>
Où URL est l’URL de votre forum Discourse.
Ensuite, incluez la balise <d-topics-list discourse-url="URL"> dans votre document HTML et elle sera remplacée par la liste des sujets.
Pour plus de détails, consultez Embedding a list of Discourse Topics in another site
Ajout d’un webhook pour les notifications utilisateur
Si activé, cela déclenchera un webhook chaque fois qu’une notification utilisateur est créée. Cela pourrait potentiellement générer beaucoup de données selon votre forum et doit être utilisé avec prudence car il inclut tout ce que tous les utilisateurs verront dans leurs flux.
Traiter theme_uploads comme des paramètres en JavaScript et permettre aux thèmes de télécharger des fichiers js en tant qu’actifs
Ce sont d’autres améliorations pour les thèmes. La première permet aux thèmes et aux composants d’accéder aux actifs du thème. Cela signifie que dans le JS du thème, vous pouvez maintenant obtenir l’URL d’un actif avec :
settings.theme_uploads.name
La deuxième amélioration aide à débloquer la capacité des thèmes à différer le chargement de plus gros payloads JS. Le changement est sûr car les thèmes ont déjà le droit d’inclure du JS en ligne.
Paramètres de site pour la liaison avec les applications natives iOS/Android et intégration de l’invite d’installation PWA dans l’interface utilisateur de Discourse
Dans cette version, de nouvelles fonctionnalités sont également disponibles pour les applications Android et iOS.
Il existe désormais deux nouveaux paramètres de site pour ajouter la prise en charge des liens universels iOS via un point de terminaison apple-app-site-association et des liens d’actifs numériques Google au point de terminaison .well-known/assetlinks.json.
De plus, nous empêcherons la barre d’« info mini » d’installation native de s’afficher, capturerons l’événement qui l’accompagne et le différerons jusqu’à ce que l’utilisateur remplisse nos critères, qui sont actuellement le niveau de confiance 1.
Si l’événement se produit et que l’utilisateur remplit nos critères, nous affichons une bannière d’alerte Discourse proposant l’installation à l’utilisateur. La fermeture de la bannière est enregistrée afin que l’utilisateur ne soit plus dérangé sur le même appareil.
Connexion avec Discord
Nous avons intégré la fonctionnalité de discourse-plugin-discord-auth dans le cœur du système. Le plugin se désactivera automatiquement lorsque le cœur sera mis à jour, voir : discourse/discourse-plugin-discord-auth@fd08678?w=1.
Pour les instructions de configuration, visitez Configure Discord Login for Discourse
Amélioration des performances du cache anonyme
Voici 2 nouvelles fonctionnalités pour améliorer les performances :
-
DISCOURSE_COMPRESS_ANON_CACHE (true|false, par défaut false) : cela vous permet de compresser optionnellement les entrées du corps du cache anonyme dans Redis, ce qui peut être utile pour les sites à forte charge avec Redis hébergé sur un serveur distinct des serveurs web.
-
DISCOURSE_ANON_CACHE_STORE_THRESHOLD (par défaut 2), ne placez les entrées dans Redis que si nous les observons plus de N fois. Cela évite les situations où un robot d’exploration peut parcourir un grand nombre de sujets et les stocker tous dans Redis sans jamais les utiliser. Notre durée de cache anonyme par défaut pour les sujets est de seulement 60 secondes. Le cache anonyme est en place pour éviter l’effet « Slashdot » où un seul sujet est touché par des centaines de personnes en une minute.




