{"users":[{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/moin/{size}/554653_2.png","trust_level":3},{"id":135392,"username":"NateDhaliwal","name":"Nate Dhaliwal","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/natedhaliwal/{size}/313494_2.png","flair_name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111","flair_group_id":73,"trust_level":3},{"id":123090,"username":"HamMan2118","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/hamman2118/{size}/383565_2.png","flair_name":"support-explorers","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/d/1/b/d1ba0acf09b9d01f87f9e05bbee1dc5b0e316d5f.png","flair_bg_color":"dddddd","flair_color":"111111","flair_group_id":118,"trust_level":2},{"id":185831,"username":"sniper756","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/sniper756/{size}/545002_2.png","trust_level":3},{"id":8722,"username":"Falco","name":"Falco","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/falco/{size}/179432_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":4},{"id":109156,"username":"Stigin","name":"Stigin","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/s/49beb7/{size}.png","trust_level":1},{"id":16290,"username":"bekircem","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/bekircem/{size}/44582_2.png","trust_level":2},{"id":117867,"username":"Fabrice","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/fabrice/{size}/265087_2.png","trust_level":2},{"id":184568,"username":"raadtotheraad","name":"Raad","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/raadtotheraad/{size}/527788_2.png","trust_level":1},{"id":191411,"username":"Lxk520","name":"Lxk520","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/lxk520/{size}/550353_2.png","trust_level":1},{"id":27384,"username":"merefield","name":"Robert","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/merefield/{size}/176214_2.png","trust_level":3},{"id":15209,"username":"pfaffman","name":"Jay Pfaffman","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/pfaffman/{size}/120154_2.png","flair_name":"support-experts","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_group_id":142,"trust_level":4},{"id":114728,"username":"darkpixlz","name":"Pyx ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/darkpixlz/{size}/549896_2.png","primary_group_name":"VolunteerMods","flair_name":"VolunteerMods","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/7/d/27de051915b8a604d176484cd260d10cfc956d42.svg","flair_group_id":276,"trust_level":4},{"id":115923,"username":"Discourse","name":null,"avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/discourse/{size}/148734_2.png","admin":true,"trust_level":4},{"id":138497,"username":"ToddZ","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/toddz/{size}/328350_2.png","primary_group_name":"VolunteerMods","flair_name":"VolunteerMods","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/7/d/27de051915b8a604d176484cd260d10cfc956d42.svg","flair_group_id":276,"trust_level":4},{"id":135971,"username":"microhit","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/microhit/{size}/447960_2.png","trust_level":2},{"id":7229,"username":"DavidGNavas","name":"David García-Navas","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/davidgnavas/{size}/68313_2.png","trust_level":2},{"id":8571,"username":"tobiaseigen","name":"Tobias Eigen","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/tobiaseigen/{size}/539204_2.png","trust_level":2},{"id":6626,"username":"riking","name":"Kane York","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/riking/{size}/170938_2.png","trust_level":2},{"id":21555,"username":"BenLeong","name":"Ben Leong","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/benleong/{size}/60951_2.png","trust_level":2},{"id":13093,"username":"pacharanero","name":"Marcus Baw","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/pacharanero/{size}/500583_2.png","primary_group_name":"VolunteerMods","flair_name":"VolunteerMods","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/7/d/27de051915b8a604d176484cd260d10cfc956d42.svg","flair_group_id":276,"trust_level":4},{"id":24426,"username":"enigmaty","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/enigmaty/{size}/65626_2.png","trust_level":2},{"id":60917,"username":"mesatenista","name":"Edmar Holanda","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/m/5f9b8f/{size}.png","trust_level":1},{"id":84520,"username":"OdysLam","name":"Odysseas Lamtzidis","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/odyslam/{size}/194433_2.png","trust_level":2},{"id":145010,"username":"Twissell","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/twissell/{size}/366765_2.png","trust_level":1},{"id":129914,"username":"dlambert","name":"Derek","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/dlambert/{size}/295355_2.png","trust_level":1},{"id":12454,"username":"Richie","name":"Richie Rich","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/richie/{size}/115110_2.png","trust_level":2},{"id":89208,"username":"kynic","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/b487fb/{size}.png","trust_level":2},{"id":37716,"username":"Mr.X_Mr.X","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mr.x_mr.x/{size}/126610_2.png","trust_level":2},{"id":189531,"username":"jesse_c","name":"Jesse","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jesse_c/{size}/545099_2.png","trust_level":0},{"id":181081,"username":"stephtara","name":"Stephanie Booth","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/stephtara/{size}/517827_2.png","trust_level":3},{"id":64725,"username":"JimPas","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jimpas/{size}/148179_2.png","trust_level":2},{"id":174162,"username":"majorjc_MS","name":"Major","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/majorjc_ms/{size}/498912_2.png","trust_level":1},{"id":171937,"username":"alltiagocom","name":"Tiago","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/alltiagocom/{size}/492709_2.png","trust_level":2},{"id":35474,"username":"Canapin","name":"Coin-coin le Canapin","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/canapin/{size}/119591_2.png","trust_level":3},{"id":15019,"username":"5minpause","name":"5minpause","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/5minpause/{size}/116074_2.png","trust_level":1},{"id":75906,"username":"neounix","name":"Dark Matter","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/neounix/{size}/215617_2.png","trust_level":2},{"id":2377,"username":"mcdanlj","name":"Michael K Johnson","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mcdanlj/{size}/131829_2.png","trust_level":2},{"id":7720,"username":"rahim123","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/r/df705f/{size}.png","trust_level":2},{"id":63143,"username":"Ed_S","name":"Ed S","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ed_s/{size}/134015_2.png","trust_level":3},{"id":13375,"username":"markersocial","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/markersocial/{size}/170136_2.png","trust_level":2},{"id":16697,"username":"mpalmer","name":"Matt Palmer","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mpalmer/{size}/45740_2.png","trust_level":2},{"id":108275,"username":"markcoley","name":"Mark Coley","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/markcoley/{size}/242366_2.png","trust_level":1},{"id":109684,"username":"f1r4s","name":"Eddie","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/f1r4s/{size}/245347_2.png","trust_level":2},{"id":32726,"username":"gwmngilfen","name":"Greg","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/gwmngilfen/{size}/302925_2.png","trust_level":2},{"id":15568,"username":"fefrei","name":"Felix Freiberger","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/fefrei/{size}/119538_2.png","trust_level":2},{"id":24453,"username":"ewanly","name":"EW 👌","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ewanly/{size}/62854_2.png","trust_level":2},{"id":32,"username":"codinghorror","name":"Jeff Atwood","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/codinghorror/{size}/110067_2.png","admin":true,"trust_level":2},{"id":17621,"username":"jomaxro","name":"Joshua Rosenfeld","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jomaxro/{size}/126216_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":2},{"id":15291,"username":"philh","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/philh/{size}/532740_2.png","trust_level":2},{"id":20815,"username":"marcospreviato","name":"Marcos P","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/marcospreviato/{size}/54766_2.png","trust_level":2},{"id":17969,"username":"Pad_Pors","name":"Pad Pors","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/pad_pors/{size}/52016_2.png","trust_level":2},{"id":72263,"username":"denvergeeks","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/denvergeeks/{size}/327671_2.png","trust_level":2},{"id":135057,"username":"fokx","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/f/958977/{size}.png","trust_level":2},{"id":182632,"username":"dodger","name":"dodger","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/dodger/{size}/522280_2.png","trust_level":1},{"id":182437,"username":"lion","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/l/57b2e6/{size}.png","trust_level":1},{"id":63814,"username":"ondrej","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ondrej/{size}/198804_2.png","trust_level":3},{"id":43913,"username":"ganncamp","name":"G  Ann Campbell","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ganncamp/{size}/106199_2.png","trust_level":2},{"id":4263,"username":"mcwumbly","name":"Dave McClure","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mcwumbly/{size}/103861_2.png","primary_group_name":"team","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":113000,"username":"chapoi","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/chapoi/{size}/537252_2.png","flair_name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_color":"111","flair_group_id":47,"admin":true,"trust_level":3},{"id":27495,"username":"thaidb","name":"thaidb","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/thaidb/{size}/68488_2.png","trust_level":2},{"id":4457,"username":"Lee_Ars","name":"Lee_Ars","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/lee_ars/{size}/1597_2.png","trust_level":2},{"id":10365,"username":"brahn","name":"Brahn","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/brahn/{size}/109267_2.png","trust_level":2},{"id":141713,"username":"jayme","name":"Jayme ","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/j/b38774/{size}.png","trust_level":2},{"id":57788,"username":"nathank","name":"Nathan Kershaw","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/nathank/{size}/290039_2.png","flair_name":"support-advocates","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/4/e4038d4d9848de2eabab38e17b8bdb69da154024.svg","flair_bg_color":"FFFFFF","flair_group_id":148,"trust_level":4},{"id":12933,"username":"gdpelican","name":"James Kiesel","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/gdpelican/{size}/81308_2.png","trust_level":2},{"id":66606,"username":"spirobel","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/spirobel/{size}/170908_2.png","flair_name":"plugin_authors","flair_url":"plug","flair_bg_color":"dddddd","flair_color":"111111","flair_group_id":48,"trust_level":2},{"id":13378,"username":"angus","name":"Angus McLeod","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/angus/{size}/341715_2.png","flair_name":"support-experts","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_group_id":142,"trust_level":4},{"id":88244,"username":"frank.manuel","name":"Frank Manuel","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/frank.manuel/{size}/203348_2.png","trust_level":2},{"id":185178,"username":"TimFelix","name":null,"avatar_template":"https://avatars.discourse-cdn.com/v4/letter/t/919ad9/{size}.png","trust_level":1},{"id":183536,"username":"DevTeVe","name":"DevTek Ve","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/devteve/{size}/487601_2.png","trust_level":2}],"primary_groups":[{"id":47,"name":"team"},{"id":276,"name":"VolunteerMods"}],"flair_groups":[{"id":73,"name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111"},{"id":118,"name":"support-explorers","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/d/1/b/d1ba0acf09b9d01f87f9e05bbee1dc5b0e316d5f.png","flair_bg_color":"dddddd","flair_color":"111111"},{"id":47,"name":"team","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111"},{"id":142,"name":"support-experts","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_color":""},{"id":276,"name":"VolunteerMods","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/7/d/27de051915b8a604d176484cd260d10cfc956d42.svg","flair_bg_color":"","flair_color":""},{"id":148,"name":"support-advocates","flair_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/e/4/e4038d4d9848de2eabab38e17b8bdb69da154024.svg","flair_bg_color":"FFFFFF","flair_color":""},{"id":48,"name":"plugin_authors","flair_url":"plug","flair_bg_color":"dddddd","flair_color":"111111"}],"topic_list":{"can_create_topic":false,"more_topics_url":"/c/wiki/177?page=1","per_page":30,"top_tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":297,"name":"chinese-translation","slug":"chinese-translation"},{"id":66,"name":"wordpress","slug":"wordpress"},{"id":824,"name":"安装","slug":"install"},{"id":199,"name":"视频","slug":"video"},{"id":482,"name":"参考","slug":"reference"},{"id":479,"name":"解释","slug":"explanation"},{"id":60,"name":"单点登录","slug":"sso"},{"id":481,"name":"高级设置","slug":"advanced-setup"},{"id":24,"name":"docker","slug":"docker"},{"id":65,"name":"迁移","slug":"migrations"},{"id":39,"name":"电子邮件","slug":"email"},{"id":274,"name":"插件指南","slug":"plugin-guides"},{"id":803,"name":"activitypub","slug":"activitypub"},{"id":543,"name":"人工智能","slug":"ai"},{"id":55,"name":"备份","slug":"backups"},{"id":230,"name":"聊天集成","slug":"chat-integration"},{"id":330,"name":"rest-api","slug":"rest-api"},{"id":72,"name":"s3","slug":"s3"},{"id":814,"name":"定制","slug":"customization"},{"id":150,"name":"开发人员安装","slug":"dev-install"},{"id":263,"name":"话语连接","slug":"discourseconnect"},{"id":825,"name":"域名","slug":"domains"},{"id":817,"name":"任务","slug":"tasks"},{"id":16,"name":"翻译","slug":"translation"},{"id":484,"name":"教程","slug":"tutorial"},{"id":5,"name":"不支持的安装","slug":"unsupported-install"},{"id":107,"name":"网络钩子","slug":"webhooks"},{"id":46,"name":"内容分发网络","slug":"cdn"},{"id":827,"name":"cloudflare","slug":"cloudflare"},{"id":813,"name":"内容","slug":"content"}],"topics":[{"fancy_title":"为默认侧边栏配置您的用户","fancy_title_localized":true,"locale":"en","id":347764,"title":"Configuring the default sidebar for your users","slug":"configuring-the-default-sidebar-for-your-users","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/7/f/4/7f4ed72896403abf8b7670f46a655ea316b0e802.png","created_at":"2025-01-17T23:01:22.584Z","last_posted_at":"2025-01-18T01:59:06.495Z","bumped":true,"bumped_at":"2026-05-28T03:36:18.471Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"侧边栏提供对您 Discourse 站点重要部分的快速访问。虽然用户可以自定义自己的侧边栏以适应个人偏好，但提供一个经过深思熟虑的默认设置尤其有助于新用户和...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":266,"height":445,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/7/f/4/7f4ed72896403abf8b7670f46a655ea316b0e802.png"},{"max_width":400,"max_height":400,"width":239,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/f/4/7f4ed72896403abf8b7670f46a655ea316b0e802_2_239x400.png"},{"max_width":300,"max_height":300,"width":179,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/f/4/7f4ed72896403abf8b7670f46a655ea316b0e802_2_179x300.png"},{"max_width":200,"max_height":200,"width":119,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/f/4/7f4ed72896403abf8b7670f46a655ea316b0e802_2_119x200.png"}],"tags":[{"id":483,"name":"侧边栏","slug":"sidebar"}],"tags_descriptions":{},"views":742,"like_count":18,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":178,"op_like_count":13,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"NateDhaliwal expresses appreciation for the new documentation on admin sidebar customization, noting it addresses long-sought guidance for managing default sidebar configurations for users.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"暗色模式说明：如何选择以及如何启用切换","fancy_title_localized":true,"locale":"en","id":327397,"title":"Explanation of dark mode, how to select it, and how to enable switching","slug":"explanation-of-dark-mode-how-to-select-it-and-how-to-enable-switching","posts_count":5,"reply_count":2,"highest_post_number":5,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151_2_543x1024.jpeg","created_at":"2024-09-20T11:02:20.147Z","last_posted_at":"2025-05-11T08:20:11.487Z","bumped":true,"bumped_at":"2026-05-25T23:00:01.206Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"简介\n本指南涵盖深色模式、如何选择以及如何启用它。\n什么是深色模式？\n正如《福布斯》所解释的，\n\n深色模式的核心理念在于，它在保持...\n","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1080,"height":2034,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151.jpeg"},{"max_width":1024,"max_height":1024,"width":543,"height":1024,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151_2_543x1024.jpeg"},{"max_width":800,"max_height":800,"width":424,"height":800,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151_2_424x800.jpeg"},{"max_width":600,"max_height":600,"width":318,"height":600,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151_2_318x600.jpeg"},{"max_width":400,"max_height":400,"width":212,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151_2_212x400.jpeg"},{"max_width":300,"max_height":300,"width":159,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151_2_159x300.jpeg"},{"max_width":200,"max_height":200,"width":106,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/f/f/aff1752e32bf979692f6b2a8215cf160ac09e151_2_106x200.jpeg"}],"tags":[],"tags_descriptions":{},"views":839,"like_count":23,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":181,"op_like_count":6,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Dark mode enables a mainly dark theme with light text, and can be selected in Discourse via theme settings, with a dark/light toggle now available in core.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"频繁发帖人","user_id":123090,"primary_group_id":null,"flair_group_id":118}]},{"fancy_title":"解决1Panel部署的Discourse，所有用户ip显示为来自 Cloudflare，而不是用户的浏览器真实IP的问题","fancy_title_localized":false,"locale":"zh_CN","id":402038,"title":"解决1Panel部署的Discourse，所有用户ip显示为来自 Cloudflare，而不是用户的浏览器真实IP的问题","slug":"1panel-discourse-ip-cloudflare-ip","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-05-01T19:46:58.087Z","last_posted_at":"2026-05-01T19:46:58.299Z","bumped":true,"bumped_at":"2026-05-02T08:14:31.818Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"我在VPS上安装了1Panel，安装了Discourse（容器部署），使用OpenResty（容器部署）进行了反向代理。域名托管在Cloudflare，并开启了cdn小黄云。以下我写了教程，用于解决用户IP显示为来自 Cloudflare，而不是用户的浏览器IP的问题。 \n一、在1Panel中创建计划任务，每周下载最新的Cloudflare ip列表，并保存到Openresty的配置目录。 \n\n\n在 1Panel 左侧菜单栏点击 “计划&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":105,"like_count":2,"has_summary":false,"last_poster_username":"sniper756","category_id":180,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The post provides a tutorial for fixing Discourse IP display issues behind Cloudflare and OpenResty by configuring automated IP list updates, setting realip headers, and modifying Discourse templates to ensure accurate user IP logging.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":185831,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"在家庭互联网环境下通过Cloudflare Tunnel安装Discourse","fancy_title_localized":true,"locale":"en","id":211297,"title":"Install Discourse on a residential internet with Cloudflare Tunnel","slug":"install-discourse-on-a-residential-internet-with-cloudflare-tunnel","posts_count":69,"reply_count":44,"highest_post_number":74,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40_2_1024x512.png","created_at":"2021-12-07T14:02:07.164Z","last_posted_at":"2026-05-01T14:25:24.180Z","bumped":true,"bumped_at":"2026-05-01T14:25:24.180Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"由于 Discourse 现在支持在树莓派上运行，在您的家庭实验室中运行小型实例将成为常见的用例。但是，许多住宅 ISP 会阻止 Discourse 所需的 80/443 端口的入站流量。 \n对于我们在 https://discourse-on-a-pi.falco.dev/ 上的演示站点，我们使用了 Cloudflare Tunnel 来解决这个问题，您也可以这样做！ \n设置您的隧道\n首先，请遵循以下指南： \nhttps://deve&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1200,"height":600,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":512,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40_2_1024x512.png"},{"max_width":800,"max_height":800,"width":800,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40_2_800x400.png"},{"max_width":600,"max_height":600,"width":600,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40_2_600x300.png"},{"max_width":400,"max_height":400,"width":400,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40_2_400x200.png"},{"max_width":300,"max_height":300,"width":300,"height":150,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40_2_300x150.png"},{"max_width":200,"max_height":200,"width":200,"height":100,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/3/f/b3f0eb49548dfd0986084517deeb172c3dbecd40_2_200x100.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":824,"name":"安装","slug":"install"},{"id":318,"name":"手臂","slug":"arm"},{"id":739,"name":"树莓派","slug":"raspberry-pi"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":8916,"like_count":165,"has_summary":true,"last_poster_username":"raadtotheraad","category_id":180,"op_like_count":39,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user resolved an ERR_CONNECTION_TIMED_OUT error while setting up a Cloudflare Tunnel for Discourse on a Raspberry Pi by re-enabling the orange cloud proxy setting.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":8722,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":109156,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":16290,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":117867,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":184568,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"@顶级域名重定向到www","fancy_title_localized":false,"locale":"zh_CN","id":400583,"title":"@顶级域名重定向到www","slug":"www","posts_count":7,"reply_count":5,"highest_post_number":7,"image_url":null,"created_at":"2026-04-14T06:50:44.835Z","last_posted_at":"2026-04-16T18:04:50.402Z","bumped":true,"bumped_at":"2026-04-16T18:04:50.402Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"使用 sudo 临时提权编辑app.yml\n\ncd /var/discourse\nsudo nano /containers/app.yml\n\n\n编辑Discourse 的配置文件 app.yml\n\n你只需要在 Discourse 的配置文件 app.yml 中进行设置，把主域名和别名关系确定下来： \nDISCOURSE_HOSTNAME: &#39;www.discourse.cc&#39;      # 你的主域名（最终访问地址）  \nDISCO&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":144,"like_count":8,"has_summary":false,"last_poster_username":"pfaffman","category_id":180,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Participants clarify that while standard Discourse installs typically log in as root making sudo unnecessary, using sudo is appropriate for secure configurations where root login is disabled.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":191411,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142}]},{"fancy_title":"任何随机子域名重定向到www","fancy_title_localized":false,"locale":"zh_CN","id":400584,"title":"任何随机子域名重定向到www","slug":"www","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2026-04-14T06:58:50.366Z","last_posted_at":"2026-04-14T15:23:07.898Z","bumped":true,"bumped_at":"2026-04-14T17:53:28.226Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"随机子域名重定向到www \n\n获取阿里云 AccessKey（使用阿里云举例，自己去申请key）。\n\nAccessKey ID:LTAI5tQCfDcVcghn5\nAccessKey Secret:J8ZayXB44MIWa1Mfnj\n\n\n安装 acme.sh\n\ncd ~\ncurl https://get.acme.sh | sh\n\n\n默认 CA 切换为 Let’s Encrypt，然后重新申请证书：\n\n# 切换默认 CA 为 Let&#39;&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":87,"like_count":1,"has_summary":false,"last_poster_username":"Lxk520","category_id":180,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The discussion clarifies that the proposed solution enables redirecting any random subdomain to www, distinguishing it from methods that only redirect the root domain.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":191411,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":114728,"primary_group_id":276,"flair_group_id":276}]},{"fancy_title":"管理员索引","fancy_title_localized":true,"locale":"en","id":322712,"title":"Administrators Index","slug":"administrators-index","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2024-08-21T13:33:48.536Z","last_posted_at":"2024-08-21T13:33:48.621Z","bumped":true,"bumped_at":"2026-04-02T23:13:19.128Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"通用指南\n\n重建 Lounge：重建自动 Lounge 分类\n自定义服务条款：关于自定义默认服务条款的一些说明\n自定义电子邮件通知页脚：自定义电子邮件通知页脚…","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":545,"like_count":8,"has_summary":false,"last_poster_username":"Discourse","category_id":178,"op_like_count":8,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"General guides and translations for Discourse administrators, including customization, plugins, and integrations, with links to resources on topics such as gamification, webhooks, and Chinese language support.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"重现自动休息室分类","fancy_title_localized":true,"locale":"en","id":397689,"title":"Re-creating the automatic Lounge category","slug":"re-creating-the-automatic-lounge-category","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2026-03-05T03:37:24.474Z","last_posted_at":"2026-03-05T05:57:33.937Z","bumped":true,"bumped_at":"2026-04-02T23:05:53.554Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: 本指南提供了两种方法来重现 Lounge 分类功能，该功能以前默认提供，目前仍可在某些 Discourse 安装中看到。\n:person_raising_hand: 所需用户级别：管理员…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":151,"like_count":10,"has_summary":false,"last_poster_username":"ToddZ","category_id":178,"op_like_count":6,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A guide proposes two methods to recreate the Lounge category for Trust Level 3 users, with the author noting minor formatting habits regarding lowercase sub-headers.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":138497,"primary_group_id":276,"flair_group_id":276},{"extras":null,"description":"频繁发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"自定义 Discourse 中的子分类框","fancy_title_localized":true,"locale":"en","id":239691,"title":"Customizing subcategory boxes in Discourse","slug":"customizing-subcategory-boxes-in-discourse","posts_count":3,"reply_count":1,"highest_post_number":6,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/6/f/6f81f6c65323d8d5c2beb14c5458b3d8ee3f5e37.png","created_at":"2022-09-21T19:19:52.577Z","last_posted_at":"2026-04-02T21:45:10.074Z","bumped":true,"bumped_at":"2026-04-02T21:45:10.074Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: 本指南介绍如何自定义 Discourse 中子分类框的外观，包括调整特色主题样式、修改“框”样式以及管理分类描述的截断…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1021,"height":257,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/6/f/6f81f6c65323d8d5c2beb14c5458b3d8ee3f5e37.png"},{"max_width":800,"max_height":800,"width":800,"height":201,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/6/f/6f81f6c65323d8d5c2beb14c5458b3d8ee3f5e37_2_800x201.png"},{"max_width":600,"max_height":600,"width":600,"height":151,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/6/f/6f81f6c65323d8d5c2beb14c5458b3d8ee3f5e37_2_600x151.png"},{"max_width":400,"max_height":400,"width":400,"height":100,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/6/f/6f81f6c65323d8d5c2beb14c5458b3d8ee3f5e37_2_400x100.png"},{"max_width":300,"max_height":300,"width":300,"height":75,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/6/f/6f81f6c65323d8d5c2beb14c5458b3d8ee3f5e37_2_300x75.png"},{"max_width":200,"max_height":200,"width":200,"height":50,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/6/f/6f81f6c65323d8d5c2beb14c5458b3d8ee3f5e37_2_200x50.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":814,"name":"定制","slug":"customization"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":1448,"like_count":1,"has_summary":false,"last_poster_username":"Moin","category_id":179,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user questions why topics remain visible on mobile despite desktop customizations, to which another member responds that separate mobile-specific settings likely control this behavior.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":135971,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"创建您的论坛网络图表 - 数据可视化","fancy_title_localized":true,"locale":"en","id":37426,"title":"Create a Network chart of your forum - data visualization","slug":"create-a-network-chart-of-your-forum-data-visualization","posts_count":5,"reply_count":1,"highest_post_number":5,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/3/9/39b31332ba376814335437f8ca011aad6ecc4995.png","created_at":"2016-01-04T17:13:02.758Z","last_posted_at":"2026-03-26T19:49:25.668Z","bumped":true,"bumped_at":"2026-03-26T19:49:25.668Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Thanks to the Data Explorer Plugin and the query that @riking created, we have a great visualization of the interaction in our :discourse: instance. \n \nYou can also play with it. \nIt’s easy to do it: \n1 - Install Data Ex&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":661,"height":518,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/3/9/39b31332ba376814335437f8ca011aad6ecc4995.png"},{"max_width":600,"max_height":600,"width":600,"height":470,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/9/39b31332ba376814335437f8ca011aad6ecc4995_2_600x470.png"},{"max_width":400,"max_height":400,"width":400,"height":313,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/9/39b31332ba376814335437f8ca011aad6ecc4995_2_400x313.png"},{"max_width":300,"max_height":300,"width":300,"height":235,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/9/39b31332ba376814335437f8ca011aad6ecc4995_2_300x235.png"},{"max_width":200,"max_height":200,"width":200,"height":156,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/9/39b31332ba376814335437f8ca011aad6ecc4995_2_200x156.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":821,"name":"报告","slug":"reporting"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":6761,"like_count":27,"has_summary":false,"last_poster_username":"merefield","category_id":178,"op_like_count":19,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user shares a method to visualize forum interactions using the Data Explorer plugin and Google Fusion Tables, while another participant references a related community network visualization discussion.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":7229,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":8571,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":6626,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":21555,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Discourse MCP 在 OpenCode CLI 中的设置","fancy_title_localized":true,"locale":"en","id":398378,"title":"Discourse MCP Setup in OpenCode CLI","slug":"discourse-mcp-setup-in-opencode-cli","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-03-13T14:33:29.472Z","last_posted_at":"2026-03-13T14:33:29.548Z","bumped":true,"bumped_at":"2026-03-13T16:09:31.736Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"本指南提供了将 Discourse MCP 安装到 OpenCode CLI 中的经过测试的说明。如果您使用的是其他 MCP 客户端，我也为 Codex CLI 撰写了指南。\n\n使用您的 LLM！LLM 非常擅长遵循……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":543,"name":"人工智能","slug":"ai"},{"id":1087,"name":"mcp","slug":"mcp"},{"id":968,"name":"用户api","slug":"user-api"}],"tags_descriptions":{},"views":731,"like_count":3,"has_summary":false,"last_poster_username":"pacharanero","category_id":181,"op_like_count":3,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user provides tested instructions for installing the Discourse MCP into OpenCode CLI, detailing prerequisites, the three-component architecture, API key generation, configuration file setup, and support for multiple forum instances.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":13093,"primary_group_id":276,"flair_group_id":276}]},{"fancy_title":"将带有MongoDB的NodeBB论坛迁移到Discourse","fancy_title_localized":true,"locale":"en","id":126553,"title":"Migrate a NodeBB forum with MongoDB to Discourse","slug":"migrate-a-nodebb-forum-with-mongodb-to-discourse","posts_count":19,"reply_count":11,"highest_post_number":23,"image_url":null,"created_at":"2019-08-22T17:33:06.337Z","last_posted_at":"2026-03-08T14:39:08.041Z","bumped":true,"bumped_at":"2026-03-08T14:39:08.041Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"As you properly know, NodeBB supports two DB backends, Redis and MongoDB. Discourse importer script supports them both. In this tutorial, we will learn how to migrate NodeBB with MongoDB as DB backend. We will be using N&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":5920,"like_count":29,"has_summary":false,"last_poster_username":"Twissell","category_id":180,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user resolved a NodeBB to Discourse migration error by modifying the import script to handle missing posts and sort data chronologically, with community members suggesting added logging for better debugging.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":24426,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":60917,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":84520,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":"latest","description":"最新发帖人","user_id":145010,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Discourse MCP 在 OpenAI Codex CLI 中的设置","fancy_title_localized":true,"locale":"en","id":397662,"title":"Discourse MCP Setup in OpenAI Codex CLI","slug":"discourse-mcp-setup-in-openai-codex-cli","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-03-04T21:49:40.243Z","last_posted_at":"2026-03-04T21:49:40.379Z","bumped":true,"bumped_at":"2026-03-04T21:49:40.379Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"我一直在试验 Discourse MCP，但发现 Meta 中现有的使用文档中没有包含 Codex CLI 的内容，而且弄清楚文档的哪些部分……有点令人困惑。","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":543,"name":"人工智能","slug":"ai"},{"id":1087,"name":"mcp","slug":"mcp"},{"id":968,"name":"用户api","slug":"user-api"}],"tags_descriptions":{},"views":467,"like_count":4,"has_summary":false,"last_poster_username":"pacharanero","category_id":181,"op_like_count":4,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user shared a tested guide for integrating Discourse MCP with Codex CLI, detailing configuration steps and enabling write features, while another contributor provided an alternative configuration example for the Antigravity tool.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":13093,"primary_group_id":276,"flair_group_id":276}]},{"fancy_title":"配置AWS SES用于发件、退信和收件邮件","fancy_title_localized":true,"locale":"en","id":263604,"title":"Configuring AWS SES for outgoing, bounce, and incoming email","slug":"configuring-aws-ses-for-outgoing-bounce-and-incoming-email","posts_count":13,"reply_count":3,"highest_post_number":13,"image_url":null,"created_at":"2023-05-02T22:18:25.324Z","last_posted_at":"2026-02-26T03:11:21.833Z","bumped":true,"bumped_at":"2026-02-26T03:11:21.833Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"我将分享我为使用 AWS SES 进行出站、退信和入站电子邮件而配置的设置。SES 服务确实存在一些细微之处，经过大量的试错才完全理解其工作原理。这更像是一次思路的倾泻，而不是循序渐进的指南。理论上是不必要的，但请自行承担风险。而且，务必仔细阅读并理解您实现的任何他人编写的代码。 \n背景：\n我正在 AWS 中部署 Discourse，并尽可能利用其所有服务来确保可靠性和冗余。作为一名开发人员，我更熟悉命令行和代码，并希望使用 IaC 自&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":39,"name":"电子邮件","slug":"email"},{"id":478,"name":"如何操作","slug":"how-to"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":3022,"like_count":13,"has_summary":false,"last_poster_username":"jesse_c","category_id":180,"op_like_count":9,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users successfully implemented AWS SES for Discourse using Lambda, with one confirming compatibility with Python 3.14 and sharing updated layer build commands for deployment.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":129914,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":12454,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":89208,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":37716,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":189531,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"自定义主题但没有“编辑代码”按钮","fancy_title_localized":true,"locale":"en","id":329601,"title":"Customizing themes without an Edit code button","slug":"customizing-themes-without-an-edit-code-button","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/3/0/a/30a3bdd097573a7aea636864b876b095d364cc27.png","created_at":"2024-10-06T23:23:48.112Z","last_posted_at":"2026-02-25T10:48:12.767Z","bumped":true,"bumped_at":"2026-02-25T10:48:12.767Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"有时，您可能希望自定义 Discourse 主题，但发现没有“自定义代码”部分和“编辑代码”按钮。这通常发生在远程主题（从外部安装的主题）中……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":741,"height":744,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/3/0/a/30a3bdd097573a7aea636864b876b095d364cc27.png"},{"max_width":600,"max_height":600,"width":597,"height":600,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/3/0/a/30a3bdd097573a7aea636864b876b095d364cc27_2_597x600.png"},{"max_width":400,"max_height":400,"width":398,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/3/0/a/30a3bdd097573a7aea636864b876b095d364cc27_2_398x400.png"},{"max_width":300,"max_height":300,"width":298,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/3/0/a/30a3bdd097573a7aea636864b876b095d364cc27_2_298x300.png"},{"max_width":200,"max_height":200,"width":199,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/3/0/a/30a3bdd097573a7aea636864b876b095d364cc27_2_199x200.png"}],"tags":[{"id":814,"name":"定制","slug":"customization"}],"tags_descriptions":{},"views":405,"like_count":15,"has_summary":false,"last_poster_username":"stephtara","category_id":178,"op_like_count":15,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The discussion explains how to customize Discourse themes without an Edit code button by using custom components, and addresses a follow-up question about adding footer content to specific pages or categories using this method.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":181081,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"自托用户推荐的托管服务提供商","fancy_title_localized":true,"locale":"en","id":79562,"title":"Recommended Hosting Providers for Self Hosters","slug":"recommended-hosting-providers-for-self-hosters","posts_count":119,"reply_count":85,"highest_post_number":134,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/7/d/97d8f04c3c8d1e0f7fed6cfd60cb58693eeb231e.jpeg","created_at":"2018-02-01T18:57:31.970Z","last_posted_at":"2026-02-24T12:43:22.570Z","bumped":true,"bumped_at":"2026-02-24T12:43:22.570Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"This guide is intended for people who are not system administrators who just want to make Discourse work. This is a list of cloud hosting services that are believed to be reliable and easy enough for a novice to get up a&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":800,"height":500,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/7/d/97d8f04c3c8d1e0f7fed6cfd60cb58693eeb231e.jpeg"},{"max_width":600,"max_height":600,"width":600,"height":375,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/d/97d8f04c3c8d1e0f7fed6cfd60cb58693eeb231e_2_600x375.jpeg"},{"max_width":400,"max_height":400,"width":400,"height":250,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/d/97d8f04c3c8d1e0f7fed6cfd60cb58693eeb231e_2_400x250.jpeg"},{"max_width":300,"max_height":300,"width":300,"height":187,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/d/97d8f04c3c8d1e0f7fed6cfd60cb58693eeb231e_2_300x187.jpeg"},{"max_width":200,"max_height":200,"width":200,"height":125,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/d/97d8f04c3c8d1e0f7fed6cfd60cb58693eeb231e_2_200x125.jpeg"}],"tags":[{"id":1113,"name":"托管","slug":"hosting"}],"tags_descriptions":{"托管":"关于在您自己的服务器、云端或使用特定托管服务上托管 Discourse 的服务主题。"},"views":31195,"like_count":407,"has_summary":true,"last_poster_username":"Canapin","category_id":180,"op_like_count":68,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Recent updates highlight upcoming price increases at Hetzner, with potential implications for other providers, prompting discussions on cost comparisons and the impact of inflation on self-hosting options for Discourse.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"频繁发帖人","user_id":64725,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":174162,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":171937,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":35474,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"从独立容器迁移到独立的 Web 和数据容器","fancy_title_localized":true,"locale":"en","id":29413,"title":"Move from standalone container to separate web and data containers","slug":"move-from-standalone-container-to-separate-web-and-data-containers","posts_count":138,"reply_count":116,"highest_post_number":148,"image_url":null,"created_at":"2015-05-29T14:12:22.726Z","last_posted_at":"2026-02-24T00:32:38.549Z","bumped":true,"bumped_at":"2026-02-24T00:32:38.549Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":warning: 这是一个高级设置。除非您有经验丰富的 Linux 服务器管理和 Docker 经验，否则请勿遵循此操作。您还需要密切关注 discourse_docker 的提交，以确保您注意到……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":24,"name":"docker","slug":"docker"},{"id":492,"name":"双容器","slug":"two-container"},{"id":481,"name":"高级设置","slug":"advanced-setup"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":26341,"like_count":254,"has_summary":true,"last_poster_username":"Canapin","category_id":180,"op_like_count":43,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The discussion centers on the removal of the --two-container option from the discourse-install script, sparking debate over reduced convenience for advanced users, concerns about support burden, and perceived unequal treatment between paid and self-hosting users, while acknowledging that two-container setups remain technically supported.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":15019,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":75906,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"频繁发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":35474,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"MKJ 关于 Discourse 部署配置的观点性讨论","fancy_title_localized":true,"locale":"en","id":193355,"title":"MKJ's Opinionated Discourse Deployment Configuration","slug":"mkjs-opinionated-discourse-deployment-configuration","posts_count":40,"reply_count":28,"highest_post_number":40,"image_url":null,"created_at":"2021-06-09T23:34:00.917Z","last_posted_at":"2026-02-16T19:56:58.881Z","bumped":true,"bumped_at":"2026-02-16T19:56:58.881Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在过去的几年里，我一直在运行一个包含大量内容和大量图片的 Discourse 论坛。Maker Forums 有超过 100GB 的图片和超过 400,000 篇帖子，其中很大一部分是...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":479,"name":"解释","slug":"explanation"},{"id":824,"name":"安装","slug":"install"}],"tags_descriptions":{},"views":7208,"like_count":108,"has_summary":false,"last_poster_username":"mcdanlj","category_id":180,"op_like_count":54,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users are troubleshooting Transparent Huge Pages (THP) configuration on Linux systems for Discourse, confirming that sysctl settings may not persist without proper priority or overrides, despite no apparent conflicting files.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":2377,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"频繁发帖人","user_id":7720,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":63143,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":13375,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"自定义直邮Postfix配置","fancy_title_localized":true,"locale":"en","id":118759,"title":"Customize direct-delivery Postfix configuration","slug":"customize-direct-delivery-postfix-configuration","posts_count":20,"reply_count":8,"highest_post_number":20,"image_url":null,"created_at":"2019-05-27T04:32:28.414Z","last_posted_at":"2026-02-14T23:28:15.998Z","bumped":true,"bumped_at":"2026-02-14T23:28:15.998Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"If you have a mail receiver container which requires customised Postfix configuration, this is the topic for you.  Herein are described the steps required to set Postfix main.cf configuration variables to whatever your h&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":481,"name":"高级设置","slug":"advanced-setup"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":5069,"like_count":20,"has_summary":false,"last_poster_username":"gwmngilfen","category_id":180,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user asks if the mail-receiver container can support multiple domains for incoming mail and Let's Encrypt certificates, seeking clarification on configuration flexibility beyond the default setup.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":16697,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":108275,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":109684,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":"latest","description":"最新发帖人","user_id":32726,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"为 Discourse 重建或启动时添加一个离线页面显示","fancy_title_localized":true,"locale":"en","id":45238,"title":"Add an offline page to display when Discourse is rebuilding or starting up","slug":"add-an-offline-page-to-display-when-discourse-is-rebuilding-or-starting-up","posts_count":141,"reply_count":119,"highest_post_number":163,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/9/0/9065d42ce76d3b600e84f1c694f932a9a1938b75.png","created_at":"2016-06-04T08:41:48.125Z","last_posted_at":"2026-02-03T11:01:35.205Z","bumped":true,"bumped_at":"2026-02-03T11:01:35.205Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":warning: 本指南面向已经在使用 Docker 容器外部的 nginx 的高级用户。遵循本指南将使您的设置更加复杂，并会损失一些速度优势，例如 HTTP2，如果……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":317,"height":328,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/9/0/9065d42ce76d3b600e84f1c694f932a9a1938b75.png"},{"max_width":300,"max_height":300,"width":289,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/0/9065d42ce76d3b600e84f1c694f932a9a1938b75_2_289x300.png"},{"max_width":200,"max_height":200,"width":193,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/0/9065d42ce76d3b600e84f1c694f932a9a1938b75_2_193x200.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":481,"name":"高级设置","slug":"advanced-setup"},{"id":271,"name":"配置","slug":"configuring"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":245023,"like_count":341,"has_summary":true,"last_poster_username":"merefield","category_id":180,"op_like_count":100,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users discuss alternative, simpler methods to handle offline pages during Discourse rebuilds, such as using plugins or container bootstrapping to reduce downtime and complexity.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":15568,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":24453,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":32,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":17621,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"最新发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"配置 AWS 的 Amazon S3 用于存储和 Cloudfront 用于 CDN","fancy_title_localized":true,"locale":"en","id":392369,"title":"Configuring AWS's Amazon S3 for storage and Cloudfront for CDNs","slug":"configuring-awss-amazon-s3-for-storage-and-cloudfront-for-cdns","posts_count":3,"reply_count":0,"highest_post_number":3,"image_url":null,"created_at":"2025-12-30T03:58:29.998Z","last_posted_at":"2026-01-13T17:22:50.447Z","bumped":true,"bumped_at":"2026-01-13T17:56:03.694Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"入门\n您将需要：\n一个可以访问 app.yml 的 Discourse 实例\n一个 AWS 账户\n\n命名策略\n有很多地方可能出错。使用一个对您和可能还有其他人有意义的命名约定策略……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":72,"name":"s3","slug":"s3"},{"id":46,"name":"内容分发网络","slug":"cdn"}],"tags_descriptions":{},"views":198,"like_count":1,"has_summary":false,"last_poster_username":"philh","category_id":180,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Philh revised the CloudFront setup by using a custom origin with subdomain.yourdomain.tld instead of a temporary S3 bucket, simplifying distribution configuration while maintaining caching and security settings.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":15291,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"在您的论坛中设置一个工具提示","fancy_title_localized":true,"locale":"en","id":45792,"title":"Setup a ToolTip in your Forum","slug":"setup-a-tooltip-in-your-forum","posts_count":5,"reply_count":1,"highest_post_number":5,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/2/9/29795cb79a11f5b947ca4b83334a38eee138cc01.png","created_at":"2016-06-16T23:09:01.116Z","last_posted_at":"2026-01-12T16:59:30.521Z","bumped":true,"bumped_at":"2026-01-12T16:59:30.521Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Hi, this is my first post sharing a resource to help this wonderful community. \nI want to help them create simple forms a tooltip for your forum making it modern and clean, ok lets do it! \nFirst what is tooltip? A toolti&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":377,"height":418,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/2/9/29795cb79a11f5b947ca4b83334a38eee138cc01.png"},{"max_width":400,"max_height":400,"width":360,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/2/9/29795cb79a11f5b947ca4b83334a38eee138cc01_2_360x400.png"},{"max_width":300,"max_height":300,"width":270,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/2/9/29795cb79a11f5b947ca4b83334a38eee138cc01_2_270x300.png"},{"max_width":200,"max_height":200,"width":180,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/2/9/29795cb79a11f5b947ca4b83334a38eee138cc01_2_180x200.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":3189,"like_count":23,"has_summary":false,"last_poster_username":"denvergeeks","category_id":179,"op_like_count":11,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user shares CSS code to create tooltips for forums, while another suggests using a theme component instead, noting hover-based tooltips don’t work well on mobile devices.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":20815,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":32,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":17969,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":72263,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"在没有 Docker 的情况下部署 Discourse","fancy_title_localized":true,"locale":"en","id":351194,"title":"Deploy Discourse without Docker","slug":"deploy-discourse-without-docker","posts_count":34,"reply_count":19,"highest_post_number":36,"image_url":null,"created_at":"2025-02-08T03:56:12.775Z","last_posted_at":"2026-01-08T17:05:01.166Z","bumped":true,"bumped_at":"2026-01-08T17:05:01.166Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Though it is more convenient and safer to deploy Discourse following the official install guide, I want to dive deeper into the container and see how it can be deployed in Linux without Docker. I want to share the step&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":5,"name":"不支持的安装","slug":"unsupported-install"},{"id":481,"name":"高级设置","slug":"advanced-setup"}],"tags_descriptions":{},"views":1686,"like_count":17,"has_summary":false,"last_poster_username":"lion","category_id":180,"op_like_count":8,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user shares a detailed guide on deploying Discourse on Linux without Docker, including system setup, dependencies, configuration, and a script for installation, emphasizing manual steps and potential risks.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":135057,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"频繁发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"频繁发帖人","user_id":182632,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":182437,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"撰写有效的特性请求：分步指南","fancy_title_localized":true,"locale":"en","id":327385,"title":"Writing an effective feature request, a step by step guide","slug":"writing-an-effective-feature-request-a-step-by-step-guide","posts_count":4,"reply_count":2,"highest_post_number":6,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/8/9/8/898f1e84b2954e2445a84e543c97c9737351ac2e.png","created_at":"2024-09-20T08:52:16.199Z","last_posted_at":"2024-10-01T19:12:29.950Z","bumped":true,"bumped_at":"2026-01-05T10:06:08.645Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"摘要\n本文档主题涵盖了在 Discourse 中撰写功能请求：分步指南。\n步骤 1：开始之前\n所以，你有一个很棒的 Discourse 功能想法？太棒了！以下是如何分享……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":775,"height":163,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/8/9/8/898f1e84b2954e2445a84e543c97c9737351ac2e.png"},{"max_width":600,"max_height":600,"width":600,"height":126,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/8/9/8/898f1e84b2954e2445a84e543c97c9737351ac2e_2_600x126.png"},{"max_width":400,"max_height":400,"width":400,"height":84,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/8/9/8/898f1e84b2954e2445a84e543c97c9737351ac2e_2_400x84.png"},{"max_width":300,"max_height":300,"width":300,"height":63,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/8/9/8/898f1e84b2954e2445a84e543c97c9737351ac2e_2_300x63.png"},{"max_width":200,"max_height":200,"width":200,"height":42,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/8/9/8/898f1e84b2954e2445a84e543c97c9737351ac2e_2_200x42.png"}],"tags":[],"tags_descriptions":{},"views":709,"like_count":28,"has_summary":false,"last_poster_username":"mcwumbly","category_id":181,"op_like_count":17,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Writing effective feature requests involves searching existing discussions, creating informative titles, and tagging topics to help the Discourse team identify areas for improvement.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":63814,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":43913,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":4263,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"主题组件/插件的常见导入列表 (JS)","fancy_title_localized":true,"locale":"en","id":382493,"title":"Common list of imports for Theme Components/plugins (JS)","slug":"common-list-of-imports-for-theme-components-plugins-js","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2025-09-13T03:13:05.568Z","last_posted_at":"2025-12-26T12:19:50.196Z","bumped":true,"bumped_at":"2025-12-26T12:19:50.196Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"我通常在创建主题组件时，需要为不同的东西到处寻找导入（imports），所以我决定将它们整理并放在这里。\n与 Ember 相关的\n\n名称\n导入\n用法\n\n组件\nimport…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":189,"like_count":12,"has_summary":false,"last_poster_username":"chapoi","category_id":179,"op_like_count":11,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users appreciate the compiled list of Ember and Discourse imports for theme components, noting VS Code's autocomplete often suggests incorrect paths, making such references helpful.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73},{"extras":"latest","description":"最新发帖人","user_id":113000,"primary_group_id":null,"flair_group_id":47}]},{"fancy_title":"在单个 VPS 上使用 Nginx 反向代理运行 Discourse 和 WordPress (Docker)","fancy_title_localized":true,"locale":"en","id":392094,"title":"Running Discourse with WordPress (Docker) on a single VPS using Nginx Reverse Proxy","slug":"running-discourse-with-wordpress-docker-on-a-single-vps-using-nginx-reverse-proxy","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-12-24T16:14:24.554Z","last_posted_at":"2025-12-24T16:14:24.630Z","bumped":true,"bumped_at":"2025-12-24T16:14:24.630Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"介绍\n默认情况下，Discourse “独立”安装会绑定到端口 80 和 443。要在同一服务器上托管另一个应用程序（如 WordPress），您必须重新配置 Discourse 以便侦听内部端口并使用……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":66,"name":"wordpress","slug":"wordpress"}],"tags_descriptions":{},"views":119,"like_count":2,"has_summary":false,"last_poster_username":"thaidb","category_id":180,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse must be reconfigured to use internal ports with Nginx reverse proxy to coexist with WordPress on a single VPS, enabling shared SSL and centralized traffic management.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":27495,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"一些 wp-discourse + cloudflare 的经验教训","fancy_title_localized":true,"locale":"en","id":391942,"title":"Some wp-discourse + cloudflare lessons learned","slug":"some-wp-discourse-cloudflare-lessons-learned","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb_2_1024x567.png","created_at":"2025-12-22T18:06:12.689Z","last_posted_at":"2025-12-22T18:06:12.802Z","bumped":true,"bumped_at":"2025-12-22T18:06:12.802Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在过去几个月里，我使用 Discourse、wp-discourse 和 Cloudflare 学习到了一些特定于个人设置的经验。分享给大家，希望对大家有所帮助。\n环境：\n\nDiscourse 和 Wordpress 托管在 sepa……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":2190,"height":1214,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":567,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb_2_1024x567.png"},{"max_width":800,"max_height":800,"width":800,"height":443,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb_2_800x443.png"},{"max_width":600,"max_height":600,"width":600,"height":332,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb_2_600x332.png"},{"max_width":400,"max_height":400,"width":400,"height":221,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb_2_400x221.png"},{"max_width":300,"max_height":300,"width":300,"height":166,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb_2_300x166.png"},{"max_width":200,"max_height":200,"width":200,"height":110,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/0/d/2/0d2c8d563a23447e3f6175e1073d52f614b627eb_2_200x110.png"}],"tags":[{"id":252,"name":"wp-discourse","slug":"wp-discourse"}],"tags_descriptions":{},"views":109,"like_count":2,"has_summary":false,"last_poster_username":"Lee_Ars","category_id":180,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user shares lessons learned from integrating Discourse with WordPress using wp-discourse, Cloudflare, and AWS, focusing on solving API rate-limiting issues via VPC host file adjustments and resolving comment display race conditions with a custom mu-plugin and cache-clearing strategy.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":4457,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"使用 Let&rsquo;s Encrypt 设置多个域名 / 重定向","fancy_title_localized":true,"locale":"en","id":56685,"title":"Set up Let’s Encrypt with multiple domains / redirects","slug":"set-up-let-s-encrypt-with-multiple-domains-redirects","posts_count":112,"reply_count":142,"highest_post_number":188,"image_url":null,"created_at":"2017-02-01T02:21:03.592Z","last_posted_at":"2025-12-16T02:52:10.263Z","bumped":true,"bumped_at":"2025-12-16T02:52:10.263Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"NOTE: @pfaffman says: This page needs to be cleaned up. There is now a new ENV setting that will let you add more hostnames. In your app.yml under your DISCOURSE_HOSTNAME line (it can go many places but that one makes se&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":709,"name":"letsencrypt","slug":"letsencrypt"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":20272,"like_count":214,"has_summary":true,"last_poster_username":"philh","category_id":180,"op_like_count":48,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users discuss using DISCOURSE_HOSTNAME_ALIASES in app.yml to add multiple domains for Let's Encrypt certificates, confirming it resolves redirect and certificate errors, with clarification on correct usage and issues related to AWS CDN and rate limiting.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":10365,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":141713,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":57788,"primary_group_id":null,"flair_group_id":148},{"extras":"latest","description":"最新发帖人","user_id":15291,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"在插件中覆盖现有的Discourse方法","fancy_title_localized":true,"locale":"en","id":83389,"title":"Override existing Discourse methods in plugins","slug":"override-existing-discourse-methods-in-plugins","posts_count":9,"reply_count":5,"highest_post_number":13,"image_url":null,"created_at":"2018-03-20T11:37:16.168Z","last_posted_at":"2025-12-10T17:36:56.810Z","bumped":true,"bumped_at":"2025-12-10T17:36:56.810Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"I’ve been running into a bunch of instances recently of needing to override existing ruby methods from plugins, and thought I’d share my best practices here. \nOverriding an instance method\nclass ::TopicQuery\n  module Bab&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":274,"name":"插件指南","slug":"plugin-guides"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":4890,"like_count":65,"has_summary":false,"last_poster_username":"TimFelix","category_id":179,"op_like_count":35,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A discussion on overriding existing Discourse methods in plugins, focusing on techniques for instance methods, class methods, and scopes, with a recent example showing how to override a singleton class method using prepend in a module.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":12933,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":66606,"primary_group_id":null,"flair_group_id":48},{"extras":null,"description":"频繁发帖人","user_id":13378,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"频繁发帖人","user_id":88244,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":185178,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Discourse AI：Discord 机器人集成指南","fancy_title_localized":true,"locale":"en","id":390391,"title":"Discourse AI: Discord Bot Integration Guide","slug":"discourse-ai-discord-bot-integration-guide","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002_2_1024x472.png","created_at":"2025-12-04T10:07:23.079Z","last_posted_at":"2025-12-04T10:07:23.174Z","bumped":true,"bumped_at":"2025-12-04T10:28:33.211Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"工作原理（架构）\n在设置此项之前，重要的是要了解您不需要在服务器上托管单独的机器人应用程序或运行“机器人”脚本（如 Node.js 或 Python 机器人）。\n▶\n这个集……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":3452,"height":1594,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":472,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002_2_1024x472.png"},{"max_width":800,"max_height":800,"width":800,"height":369,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002_2_800x369.png"},{"max_width":600,"max_height":600,"width":600,"height":277,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002_2_600x277.png"},{"max_width":400,"max_height":400,"width":400,"height":184,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002_2_400x184.png"},{"max_width":300,"max_height":300,"width":300,"height":138,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002_2_300x138.png"},{"max_width":200,"max_height":200,"width":200,"height":92,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/8/1/481cdd154f62f2998b6f48618d71c6e0d1b1d002_2_200x92.png"}],"tags":[],"tags_descriptions":{},"views":892,"like_count":2,"has_summary":false,"last_poster_username":"DevTeVe","category_id":180,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse AI integrates with Discord via webhooks and progressive edits to simulate live streaming responses without hosting a separate bot, using slash commands registered manually via API.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":183536,"primary_group_id":null,"flair_group_id":null}]}]}}