{"users":[{"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":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/moin/{size}/554653_2.png","trust_level":3},{"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":82960,"username":"manuel","name":"Manuel Kostka","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/manuel/{size}/468169_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":119375,"username":"elmuerte","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/elmuerte/{size}/456517_2.png","trust_level":2},{"id":23968,"username":"david","name":"David Taylor","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/david/{size}/157490_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":187793,"username":"AkarinLiu","name":"AkarinLiu","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/akarinliu/{size}/539577_2.png","trust_level":1},{"id":406,"username":"RGJ","name":"Richard - Communiteq","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/rgj/{size}/523185_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":94920,"username":"cocococosti","name":"Constanza Abarca","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/cocococosti/{size}/231474_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":150621,"username":"尔德_王","name":"尔德 王","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/尔德_王/{size}/423343_2.png","trust_level":2},{"id":21029,"username":"pmusaraj","name":"Penar Musaraj","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/pmusaraj/{size}/119489_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":173987,"username":"cuo_wu","name":"James","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/cuo_wu/{size}/498442_2.png","trust_level":2},{"id":111125,"username":"typed-sigterm","name":"Typed SIGTERM","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/typed-sigterm/{size}/504463_2.png","trust_level":2},{"id":190268,"username":"sk-or-v1-contents","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/sk-or-v1-contents/{size}/547175_2.png","trust_level":2},{"id":27384,"username":"merefield","name":"Robert","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/merefield/{size}/176214_2.png","trust_level":3},{"id":2770,"username":"awesomerobot","name":"Kris","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/awesomerobot/{size}/142900_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":71988,"username":"pmcpa","name":"pmcpa","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/p/8797f3/{size}.png","trust_level":0},{"id":83716,"username":"stuwest","name":"Stu West","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/stuwest/{size}/192400_2.png","trust_level":2},{"id":127856,"username":"Lilly","name":"Lillian ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/lilly/{size}/555832_2.png","trust_level":3},{"id":185831,"username":"sniper756","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/sniper756/{size}/545002_2.png","trust_level":3},{"id":13426,"username":"mcmcclur","name":"Mark McClure","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mcmcclur/{size}/115456_2.png","trust_level":2},{"id":22295,"username":"Silvanus","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/silvanus/{size}/62831_2.png","trust_level":2},{"id":119529,"username":"kyle315a","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/a587f6/{size}.png","trust_level":0},{"id":174704,"username":"Diego_Rivera_Buendia","name":"Diego Rivera Buendia","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/diego_rivera_buendia/{size}/500083_2.png","trust_level":0},{"id":189191,"username":"nitinkg","name":"Nitin Gupta","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/n/eb8c5e/{size}.png","trust_level":1},{"id":20734,"username":"jamesarobbo","name":"James Robinson","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jamesarobbo/{size}/121843_2.png","trust_level":1},{"id":1995,"username":"zogstrip","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/zogstrip/{size}/512781_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":98059,"username":"marcosbc","name":"Marcos Bjoerkelund","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/marcosbc/{size}/222119_2.png","trust_level":1},{"id":24424,"username":"Eric_Keller","name":"Eric Keller","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/eric_keller/{size}/517693_2.png","trust_level":2},{"id":98939,"username":"isaac","name":"Isaac Janzen","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/isaac/{size}/235758_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":-1,"username":"system","name":"system","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/system/{size}/443519_2.png","admin":true,"moderator":true,"trust_level":4},{"id":160471,"username":"Ethsim2","name":"Ethan ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ethsim2/{size}/522255_2.png","flair_name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111","flair_group_id":73,"trust_level":1},{"id":117390,"username":"dmke","name":"Dominik Menke","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/dmke/{size}/264041_2.png","trust_level":1},{"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":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":60726,"username":"jrgong","name":"jrgong","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/j/c57346/{size}.png","trust_level":2},{"id":161351,"username":"BrianC","name":"Brian","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/brianc/{size}/487568_2.png","trust_level":2},{"id":15442,"username":"jericson","name":"Jon Ericson","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jericson/{size}/116215_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":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":113325,"username":"piffy","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/piffy/{size}/254198_2.png","trust_level":2},{"id":22917,"username":"klappradla","name":"Max","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/klappradla/{size}/531604_2.png","trust_level":2},{"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":173218,"username":"gilles","name":null,"avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/gilles/{size}/549022_2.png","trust_level":3},{"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":5795,"username":"mattdm","name":"Matthew Miller","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mattdm/{size}/216484_2.png","trust_level":2},{"id":113094,"username":"agungor","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/agungor/{size}/260344_2.png","trust_level":2},{"id":154549,"username":"irregular","name":"sac","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/i/f9ae1b/{size}.png","trust_level":2},{"id":191326,"username":"Mohamed_Ahmed2","name":"Mohamed Ahmed","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/mohamed_ahmed2/{size}/485262_2.png","trust_level":0},{"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":31176,"username":"Bar_Smith","name":"Bar Smith","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/bar_smith/{size}/92338_2.png","trust_level":1},{"id":83597,"username":"Gandharv_Bakshi","name":"Gandharv Bakshi","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/gandharv_bakshi/{size}/192102_2.png","trust_level":1},{"id":189822,"username":"remidm","name":"Rémi Delaporte-Mathurin","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/remidm/{size}/546042_2.png","trust_level":1},{"id":3,"username":"supermathie","name":"Michael Brown","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/supermathie/{size}/507518_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":26605,"username":"LeoDavidson","name":"Leo Davidson","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/leodavidson/{size}/119574_2.png","trust_level":2},{"id":191275,"username":"hanoith2022","name":"Hanoiopt","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/hanoith2022/{size}/549908_2.png","trust_level":1},{"id":1,"username":"sam","name":"Sam Saffron","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/sam/{size}/102149_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":181081,"username":"stephtara","name":"Stephanie Booth","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/stephtara/{size}/517827_2.png","trust_level":3}],"primary_groups":[{"id":47,"name":"team"},{"id":276,"name":"VolunteerMods"}],"flair_groups":[{"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":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":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":""}],"topic_list":{"can_create_topic":false,"more_topics_url":"/c/dev/7?page=1","per_page":30,"top_tags":[{"id":330,"name":"rest-api","slug":"rest-api"},{"id":436,"name":"css","slug":"css"},{"id":973,"name":"开发者新闻","slug":"dev-news"},{"id":328,"name":"插件api","slug":"plugin-api"},{"id":543,"name":"人工智能","slug":"ai"},{"id":317,"name":"聊天","slug":"chat"},{"id":556,"name":"品牌页眉","slug":"brand-header"},{"id":483,"name":"侧边栏","slug":"sidebar"},{"id":150,"name":"开发人员安装","slug":"dev-install"},{"id":35,"name":"移动","slug":"mobile"},{"id":466,"name":"rails-控制台","slug":"rails-console"},{"id":5,"name":"不支持的安装","slug":"unsupported-install"},{"id":107,"name":"网络钩子","slug":"webhooks"},{"id":660,"name":"点击计数器","slug":"click-counter"},{"id":22,"name":"作曲家","slug":"composer"},{"id":70,"name":"余烬","slug":"ember"},{"id":478,"name":"如何操作","slug":"how-to"},{"id":198,"name":"订阅","slug":"subscriptions"},{"id":529,"name":"标签","slug":"tags"},{"id":563,"name":"欢迎链接横幅","slug":"welcome-link-banner"},{"id":551,"name":"自定义页眉链接","slug":"custom-header-links"},{"id":278,"name":"开发","slug":"development"},{"id":24,"name":"docker","slug":"docker"},{"id":39,"name":"电子邮件","slug":"email"},{"id":618,"name":"用户自定义字段","slug":"user-custom-fields"},{"id":2,"name":"徽章","slug":"badges"},{"id":241,"name":"日历和事件","slug":"calendar-and-events"},{"id":126,"name":"数据浏览器","slug":"data-explorer"},{"id":31,"name":"单框","slug":"onebox"},{"id":87,"name":"广告","slug":"advertising"},{"id":43,"name":"嵌入","slug":"embedding"}],"topics":[{"fancy_title":"Discourse GitHub commit 前缀约定","fancy_title_localized":true,"locale":"en","id":19392,"title":"Discourse GitHub commit prefix convention","slug":"discourse-github-commit-prefix-convention","posts_count":2,"reply_count":1,"highest_post_number":11,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05.png","created_at":"2014-08-28T21:32:16.635Z","last_posted_at":"2026-01-10T21:37:02.376Z","bumped":true,"bumped_at":"2026-01-10T21:37:02.376Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"对于那些希望为 Discourse 代码带来更改的人，我们要求每次 GitHub 提交都带有以下前缀之一：\n\n前缀 | 定义\n--- | ---\nFIX | 错误修复 [1]\nPERF | 性能改进\nUX | 用户体验...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":773,"height":204,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05.png"},{"max_width":600,"max_height":600,"width":600,"height":158,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_600x158.png"},{"max_width":400,"max_height":400,"width":400,"height":105,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_400x105.png"},{"max_width":300,"max_height":300,"width":300,"height":79,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_300x79.png"},{"max_width":200,"max_height":200,"width":200,"height":52,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/3/c/3c2d6fdd842384af41da5ba3a1e5bae39ab88f05_2_200x52.png"}],"tags":[],"tags_descriptions":{},"views":13221,"like_count":56,"has_summary":false,"last_poster_username":"Moin","category_id":7,"op_like_count":53,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user inquired whether 'I18N' should be added to Discourse’s required commit prefix list, following the initial announcement of standardized prefixes for code contributions.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":32,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"关于 Dev 类别","fancy_title_localized":true,"locale":"en","id":1026,"title":"About the Development category","slug":"about-the-development-category","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":null,"created_at":"2013-02-06T08:43:41.559Z","last_posted_at":"2013-02-06T08:43:41.601Z","bumped":true,"bumped_at":"2023-08-09T13:19:55.222Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"所有关于 Discourse 开发的内容类别。是为您自己还是为社区构建定制功能？那么这就是您的类别！了解更多…","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":10716,"like_count":5,"has_summary":false,"last_poster_username":"Discourse","category_id":7,"op_like_count":5,"pinned_globally":false,"featured_link":null,"ai_topic_gist":null,"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":404923,"title":"Open-Source Hangout","slug":"open-source-hangout","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://us1.discourse-cdn.com/meta2026bsbx/original/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda.jpeg","created_at":"2026-06-16T12:11:33.622Z","last_posted_at":"2026-06-16T12:11:33.722Z","bumped":true,"bumped_at":"2026-06-16T12:11:33.722Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":640,"height":428,"url":"https://us1.discourse-cdn.com/meta2026bsbx/original/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda.jpeg"},{"max_width":600,"max_height":600,"width":600,"height":401,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_600x401.jpeg"},{"max_width":400,"max_height":400,"width":400,"height":267,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_400x267.jpeg"},{"max_width":300,"max_height":300,"width":300,"height":200,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_300x200.jpeg"},{"max_width":200,"max_height":200,"width":200,"height":133,"url":"https://us1.discourse-cdn.com/meta2026bsbx/optimized/4X/7/b/b/7bb52d39294c76ced4cd2c8b847508361173bdda_2_200x133.jpeg"}],"tags":[],"tags_descriptions":{},"views":3,"like_count":0,"has_summary":false,"last_poster_username":"manuel","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The developer hangout event is scheduled for June 16, 2026, from 17:00 to 18:00 Atlantic/Canary time, held via Google Meet, recurring every four weeks with a 15-minute notification reminder.","event_starts_at":"2026-07-14T16:00:00.000Z","event_ends_at":"2026-07-14T17:00:00.000Z","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":82960,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"GitHub Actions 失败：“检查 SKIP_DB_AND_REDIS 启动性”步骤","fancy_title_localized":true,"locale":"en","id":404152,"title":"Github actions failing \"Check SKIP_DB_AND_REDIS bootability\" step","slug":"github-actions-failing-check-skip-db-and-redis-bootability-step","posts_count":6,"reply_count":4,"highest_post_number":9,"image_url":null,"created_at":"2026-05-31T11:10:59.628Z","last_posted_at":"2026-06-09T20:26:54.493Z","bumped":true,"bumped_at":"2026-06-09T20:26:54.493Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"我遇到了一个问题：最近添加的“检查 SKIP_DB_AND_REDIS 启动性”步骤在我的一个插件中失败了。\n\nSKIP_DB_AND_REDIS 启动失败。请确保在 Rails 启动过程中未访问数据库……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":77,"like_count":8,"has_summary":false,"last_poster_username":"elmuerte","category_id":7,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user discovered that local reproduction of the bootability failure requires explicitly referencing the plugin controller class, indicating that the local environment does not fully load plugin code during the boot check as GitHub Actions does.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":119375,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"利用 AI LLM 重构 Flarum 导入脚本以迁移至 Discourse","fancy_title_localized":false,"locale":"zh_CN","id":404732,"title":"利用 AI LLM 重构 Flarum 导入脚本以迁移至 Discourse","slug":"ai-llm-flarum-discourse","posts_count":2,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2026-06-08T07:12:28.673Z","last_posted_at":"2026-06-08T20:07:55.382Z","bumped":true,"bumped_at":"2026-06-09T05:10:35.517Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"为了能够顺利迁移至 Discourse，我将 DeepSeek 官方 API 接到了 Visual Studio Code，对 Flarum 导入脚本使用了 AI LLM 进行了重构，已经过测试可用。 \nGist 链接：Discourse Flarum 导入器 （改进版） · GitHub","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":95,"like_count":5,"has_summary":false,"last_poster_username":"cocococosti","category_id":7,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"AkarinLiu shared a Discourse import script for Flarum, refactored using DeepSeek's API, which has been tested and confirmed to work. Cocococosti thanked the contributor and expressed interest in learning more about the migration process.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":187793,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":406,"primary_group_id":null,"flair_group_id":142},{"extras":"latest","description":"最新发帖人","user_id":94920,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"将Discourse连接到微信小程序","fancy_title_localized":true,"locale":"en","id":312085,"title":"Connect Discourse to WeChat Mini Program","slug":"connect-discourse-to-wechat-mini-program","posts_count":13,"reply_count":8,"highest_post_number":16,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_1024x554.jpeg","created_at":"2024-06-14T11:32:00.997Z","last_posted_at":"2026-06-06T15:16:08.841Z","bumped":true,"bumped_at":"2026-06-06T15:16:08.841Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在中国有一个即时通讯工具，叫做 WeChat。它有一个功能叫做（Mini Program），实际上是一个内置浏览器。如果可以将 Discourse 添加到 Mini Program 中，这将是一个很好的机会……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1920,"height":1040,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22.jpeg"},{"max_width":1024,"max_height":1024,"width":1024,"height":554,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_1024x554.jpeg"},{"max_width":800,"max_height":800,"width":800,"height":433,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_800x433.jpeg"},{"max_width":600,"max_height":600,"width":600,"height":325,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_600x325.jpeg"},{"max_width":400,"max_height":400,"width":400,"height":216,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_400x216.jpeg"},{"max_width":300,"max_height":300,"width":300,"height":162,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_300x162.jpeg"},{"max_width":200,"max_height":200,"width":200,"height":108,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/e/b/9eb7d432582f413d027b3296e9307e591abe1c22_2_200x108.jpeg"}],"tags":[],"tags_descriptions":{},"views":447,"like_count":14,"has_summary":false,"last_poster_username":"sk-or-v1-contents","category_id":7,"op_like_count":4,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Participants discuss technical hurdles for integrating Discourse into WeChat Mini Programs, highlighting content moderation API requirements, login complications, and the strategic value of embedding the forum within the app for Chinese users.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":150621,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":21029,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":173987,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":111125,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":190268,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"为 Discourse 核心引入新的 JS 构建系统","fancy_title_localized":true,"locale":"en","id":403908,"title":"Introducing a new JS build system for Discourse core","slug":"introducing-a-new-js-build-system-for-discourse-core","posts_count":2,"reply_count":1,"highest_post_number":4,"image_url":null,"created_at":"2026-05-29T10:12:41.174Z","last_posted_at":"2026-05-29T10:22:26.385Z","bumped":true,"bumped_at":"2026-05-29T10:22:26.385Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"继过去一年成功现代化主题和插件构建系统后，我们现在准备在 Discourse 核心中进行类似的升级。尽管这是对核心的全面重构…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"开发者新闻","slug":"dev-news"}],"tags_descriptions":{},"views":154,"like_count":37,"has_summary":false,"last_poster_username":"merefield","category_id":7,"op_like_count":33,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse is migrating its core JavaScript build system from ember-cli/webpack to rolldown, promising 80% faster development builds and native ES Modules while maintaining full backward compatibility for production installations.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"最新发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"改进移动/桌面模式的自动切换","fancy_title_localized":true,"locale":"en","id":384280,"title":"Improving automatic switching of mobile/desktop modes","slug":"improving-automatic-switching-of-mobile-desktop-modes","posts_count":12,"reply_count":6,"highest_post_number":12,"image_url":null,"created_at":"2025-09-29T18:49:12.662Z","last_posted_at":"2026-05-26T08:23:52.245Z","bumped":true,"bumped_at":"2026-05-26T08:23:52.245Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"历史上，Discourse 曾有两种截然不同的移动端和桌面端视图。多年来，这些视图已趋向于更现代的基于视口宽度的设计。这些现代模式记录在此处。在……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"开发者新闻","slug":"dev-news"}],"tags_descriptions":{},"views":444,"like_count":36,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":13,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse has permanently removed the legacy mobile mode setting, enforcing viewport-width-based detection to improve tablet and folding phone experiences, while addressing specific theme issues without reverting the change.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":2770,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":71988,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":83716,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":127856,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"优化Foundation theme首页显示效果","fancy_title_localized":false,"locale":"zh_CN","id":403802,"title":"优化Foundation theme首页显示效果","slug":"foundation-theme","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/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_1024x478.png","created_at":"2026-05-26T07:35:31.363Z","last_posted_at":"2026-05-26T07:35:31.564Z","bumped":true,"bumped_at":"2026-05-26T07:35:31.564Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"解决这个帖子的问题 \n刚才rebuild更新后，首页字体变的很小 - 贡献 / 用户体验 - Discourse Meta \n通过自定义组件优化首页显示： \n优化前： \n  \n优化后： \n  \n自定义组件css代码： \n/* ========== 让板块行上下边距一致 ========== */\n.category-list tbody tr td {\n  padding-top: 10px !important;\n  padding-&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1114,"height":521,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":478,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_1024x478.png"},{"max_width":800,"max_height":800,"width":800,"height":374,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_800x374.png"},{"max_width":600,"max_height":600,"width":600,"height":280,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_600x280.png"},{"max_width":400,"max_height":400,"width":400,"height":187,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_400x187.png"},{"max_width":300,"max_height":300,"width":300,"height":140,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_300x140.png"},{"max_width":200,"max_height":200,"width":200,"height":93,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/6/9/f69a16a718c81806ee281d5e76db648054e15d22_2_200x93.png"}],"tags":[],"tags_descriptions":{},"views":75,"like_count":1,"has_summary":false,"last_poster_username":"sniper756","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user shared CSS code to optimize the Foundation theme homepage display, achieving improved spacing, font sizes, and alignment for category lists and featured topics.","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":"Discourse 基本归档工具","fancy_title_localized":true,"locale":"en","id":62614,"title":"A basic Discourse archival tool","slug":"a-basic-discourse-archival-tool","posts_count":25,"reply_count":41,"highest_post_number":58,"image_url":null,"created_at":"2017-05-12T20:20:12.074Z","last_posted_at":"2025-04-30T02:30:28.021Z","bumped":true,"bumped_at":"2026-05-22T01:36:29.629Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"归档工具已随 2026 年 5 月版 Codex 更新\n\n将整个 Discourse 站点保存为静态版本似乎相当棘手。根据 Jeff Atwood 的这篇帖子，这“比你想象的要难得多”。它并不适……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":14479,"like_count":167,"has_summary":false,"last_poster_username":"Diego_Rivera_Buendia","category_id":7,"op_like_count":44,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse archival tool generates static HTML versions of sites using the API, with limitations, and is available on GitHub for potential expansion or inspiration.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":13426,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":22295,"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":119529,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":174704,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"同一帖子超过 1 条回复时，通知将合并显示","fancy_title_localized":true,"locale":"en","id":403440,"title":"Notification are grouped for the more than 1 reply on the same post","slug":"notification-are-grouped-for-the-more-than-1-reply-on-the-same-post","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-05-20T15:00:39.307Z","last_posted_at":"2026-05-20T15:00:39.482Z","bumped":true,"bumped_at":"2026-05-20T15:00:39.482Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"我们正在使用 Discourse 通知 API 和数据探索器查询，并观察到以下通知合并/分组行为：\n\n回复/评论通知（notification_type = 2）\n\n反应通知（no&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":58,"like_count":0,"has_summary":false,"last_poster_username":"nitinkg","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user inquires about Discourse's notification consolidation behavior, asking if settings control database-level grouping, whether rows are updated before thresholds, and if disabling consolidation or identifying reacting users is supported.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":189191,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"PG::UndefinedTable: ERROR: relation &ldquo;translation_overrides&rdquo; does not exist","fancy_title_localized":false,"locale":null,"id":42599,"title":"PG::UndefinedTable: ERROR: relation \"translation_overrides\" does not exist","slug":"pg-undefinedtable-error-relation-translation-overrides-does-not-exist","posts_count":5,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2016-04-15T09:46:09.119Z","last_posted_at":"2026-05-20T10:17:55.951Z","bumped":true,"bumped_at":"2026-05-20T10:17:55.951Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"I have cloned master and in trying to run migrations i get this error: \nActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR:  relation “translation_overrides” does not exist \nI see that a topic was created for this&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"unicode_title":"PG::UndefinedTable: ERROR: relation \"translation_overrides\" does not exist","thumbnails":null,"tags":[],"tags_descriptions":{},"views":4039,"like_count":2,"has_summary":false,"last_poster_username":"Eric_Keller","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The missing 'translation_overrides' table error during migrations stems from a version mismatch between the restored backup and container code, resolved by rebuilding the schema before restoring the backup.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":20734,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":1995,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":98059,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":24424,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Discourse 补丁分类机器人","fancy_title_localized":true,"locale":"en","id":402898,"title":"Discourse-patch-triage bot","slug":"discourse-patch-triage-bot","posts_count":7,"reply_count":4,"highest_post_number":9,"image_url":null,"created_at":"2026-05-13T18:49:14.058Z","last_posted_at":"2026-05-19T22:19:58.957Z","bumped":true,"bumped_at":"2026-05-19T22:19:58.957Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"正在尝试了解如何在从我们自己的 fork 发起 PR 时使用新的 discourse-patch-triage 机器人，这有点令人困惑，尤其是在与它和团队审查员进行三方对话时。是否有正确的方法...","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":148,"like_count":10,"has_summary":false,"last_poster_username":"Lilly","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"While the patch-triage bot now supports review and commit actions on forks, a user reported that using the 'fix all' command inadvertently modified code outside the intended scope.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人、已被接受的回答","user_id":98939,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"开发环境：在没有电子邮件的情况下引导第一个管理员账户的推荐方法是什么？","fancy_title_localized":true,"locale":"en","id":399187,"title":"Dev environment: recommended way to bootstrap the first admin account without email?","slug":"dev-environment-recommended-way-to-bootstrap-the-first-admin-account-without-email","posts_count":7,"reply_count":4,"highest_post_number":7,"image_url":null,"created_at":"2026-03-24T22:06:30.037Z","last_posted_at":"2026-05-16T16:26:02.739Z","bumped":true,"bumped_at":"2026-05-16T16:26:02.739Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"我一直在试验 discourse/discourse_dev Docker 镜像（在 Windows 11 笔记本电脑上），并注意到开发工作流程中有一个小的摩擦点。\n当在不进行出站邮件的情况下以开发模式运行 Discourse 时……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":278,"name":"开发","slug":"development"}],"tags_descriptions":{},"views":126,"like_count":9,"has_summary":false,"last_poster_username":"Moin","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Ethsim2 clarified that the standard `d/boot_dev --init` command handles admin account creation, while MailHog facilitates local email testing. Additionally, Moin explained that the vertical toolbar icons are developer controls for toggling safe mode, localization, and plugin outlets.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":160471,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"频繁发帖人","user_id":2770,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"最新发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"PR：修复 MiniScheduler::Web 与 Sidekiq 8 的集成","fancy_title_localized":true,"locale":"en","id":400645,"title":"PR: Fix MiniScheduler::Web integration with Sidekiq 8","slug":"pr-fix-minischeduler-web-integration-with-sidekiq-8","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2026-04-14T22:24:55.226Z","last_posted_at":"2026-05-13T11:14:35.559Z","bumped":true,"bumped_at":"2026-05-13T11:14:35.559Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在我上一个 PR 中，我不小心破坏了 MiniScheduler::Web 的集成：\n当前版本（v0.19.0）在调用 require “mini_scheduler/web” 时会立即抛出错误。根本原因是 Sidekiq::Web 的 API 发生了变化...","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":81,"like_count":3,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":3,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The PR fixing the broken MiniScheduler::Web integration with Sidekiq 8 has been merged and released.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":117390,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"主题和区块创作技能","fancy_title_localized":true,"locale":"en","id":401629,"title":"Skills for authoring themes and blocks","slug":"skills-for-authoring-themes-and-blocks","posts_count":8,"reply_count":3,"highest_post_number":10,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_1023x1009.png","created_at":"2026-04-27T17:39:44.880Z","last_posted_at":"2026-05-11T09:36:54.700Z","bumped":true,"bumped_at":"2026-05-11T09:36:54.700Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"用于构建 Discourse 主题和区块组件的 Claude Code 技能仓库：\n\n:toolbox: 包含内容\n主题创作技能 — 涵盖构建 Discourse 主题的全面范围：使用脚手架与…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1523,"height":1501,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d.png"},{"max_width":1024,"max_height":1024,"width":1023,"height":1009,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_1023x1009.png"},{"max_width":800,"max_height":800,"width":800,"height":788,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_800x788.png"},{"max_width":600,"max_height":600,"width":600,"height":591,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_600x591.png"},{"max_width":400,"max_height":400,"width":400,"height":394,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_400x394.png"},{"max_width":300,"max_height":300,"width":300,"height":295,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_300x295.png"},{"max_width":200,"max_height":200,"width":200,"height":197,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/3/8/e38d83686e5e13f1e0f06a0e81d9fe7f8a7a254d_2_200x197.png"}],"tags":[{"id":820,"name":"主题指南","slug":"theme-guides"},{"id":1160,"name":"技能","slug":"skills"},{"id":1159,"name":"方块","slug":"blocks"}],"tags_descriptions":{},"views":332,"like_count":42,"has_summary":false,"last_poster_username":"manuel","category_id":7,"op_like_count":18,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Manuel clarified that the Discourse theme skills remain synchronized with API updates, while the example theme serves as a reference; he advised users to fork freely and consult the skills documentation for maintaining compatibility with evolving Discourse versions.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":82960,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"频繁发帖人","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":60726,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":161351,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"业余插件作者案例研究","fancy_title_localized":true,"locale":"en","id":402084,"title":"Case study of an amateur plugin author","slug":"case-study-of-an-amateur-plugin-author","posts_count":12,"reply_count":8,"highest_post_number":12,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_1024x195.png","created_at":"2026-05-03T03:41:19.217Z","last_posted_at":"2026-05-04T18:56:52.183Z","bumped":true,"bumped_at":"2026-05-04T18:56:52.183Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"2024 年，我正在寻找工作。我决定提供社区顾问服务。不过，大多数人更感兴趣的是技术帮助，以修复或更新他们的 Discourse 网站。一位潜在客户询问…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1233,"height":236,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":195,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_1024x195.png"},{"max_width":800,"max_height":800,"width":799,"height":153,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_799x153.png"},{"max_width":600,"max_height":600,"width":600,"height":114,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_600x114.png"},{"max_width":400,"max_height":400,"width":399,"height":76,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_399x76.png"},{"max_width":300,"max_height":300,"width":300,"height":57,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_300x57.png"},{"max_width":200,"max_height":200,"width":199,"height":38,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/7/1/b71c3be885137979eb87a4ac97ad37a9b958f992_2_199x38.png"}],"tags":[],"tags_descriptions":{},"views":294,"like_count":36,"has_summary":false,"last_poster_username":"jericson","category_id":7,"op_like_count":7,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse developers clarified the `.hbs` deprecation timeline and updated documentation, while users discussed the impact of AI coding tools on plugin maintenance and the need for clearer migration guidance for non-expert authors.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":15442,"primary_group_id":null,"flair_group_id":118},{"extras":null,"description":"频繁发帖人","user_id":113000,"primary_group_id":null,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":113325,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"bin/lint 更新导致非捆绑插件的 lint 流程中断","fancy_title_localized":true,"locale":"en","id":402126,"title":"Update to bin/lint breaks linting flow for non-bundled plugins","slug":"update-to-bin-lint-breaks-linting-flow-for-non-bundled-plugins","posts_count":10,"reply_count":8,"highest_post_number":10,"image_url":null,"created_at":"2026-05-04T09:56:56.296Z","last_posted_at":"2026-05-04T18:27:02.131Z","bumped":true,"bumped_at":"2026-05-04T18:27:02.131Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse 主分支最近的一次更改（https://github.com/discourse/discourse/commit/e84d7c9f26ed）破坏了我们正在开发的自定义插件的 lint 检查方式。\n该 PR/提交的标题为\n\nDEV: 更新 bin/lint 以处理…","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":143,"like_count":10,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A recent Discourse update broke linting for non-bundled plugins, but after iterative debugging and fixes regarding file detection and the --fix flag, the issue was resolved and the pull request was merged.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":22917,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人、已被接受的回答","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"自动更新主题和插件至 .gjs 文件格式","fancy_title_localized":true,"locale":"en","id":368051,"title":"Automatically updating themes and plugins to .gjs file format","slug":"automatically-updating-themes-and-plugins-to-gjs-file-format","posts_count":10,"reply_count":6,"highest_post_number":11,"image_url":null,"created_at":"2025-05-29T10:56:25.320Z","last_posted_at":"2026-05-02T19:42:35.188Z","bumped":true,"bumped_at":"2026-05-02T19:42:35.188Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在Discourse最新版本的标准linting配置中，我们启用了require-strict-mode ember-template-lint规则。这将为任何.hbs文件引发一个linting错误。\n要解决这些警告，你应该 con&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"开发者新闻","slug":"dev-news"}],"tags_descriptions":{},"views":430,"like_count":29,"has_summary":false,"last_poster_username":"jericson","category_id":7,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse introduced a linting rule requiring .hbs files to be converted to .gjs format, with a codemod provided for automation, while users noted that older skeletons may also require updated eslint configuration files.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":15209,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"频繁发帖人","user_id":173218,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":15442,"primary_group_id":null,"flair_group_id":118}]},{"fancy_title":"通过认证管理群组成员","fancy_title_localized":true,"locale":"en","id":175950,"title":"Managing group membership via authentication","slug":"managing-group-membership-via-authentication","posts_count":33,"reply_count":19,"highest_post_number":34,"image_url":null,"created_at":"2021-01-13T06:50:24.340Z","last_posted_at":"2026-04-29T11:00:52.096Z","bumped":true,"bumped_at":"2026-04-29T11:00:52.096Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"@david Continuing the discussion from \nhttps://github.com/discourse/discourse-openid-connect/pull/7#issuecomment-758082333 \nAs you probably can guess, I’m also keen to see a stable solution to this problem, which is not &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":5491,"like_count":126,"has_summary":false,"last_poster_username":"david","category_id":7,"op_like_count":11,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse v2026.4.0 introduced group sync for OIDC, allowing automatic membership updates based on token claims, which resolves earlier discussions about managing external versus manual group assignments.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":13378,"primary_group_id":null,"flair_group_id":142},{"extras":null,"description":"频繁发帖人","user_id":5795,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":113094,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":154549,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Minio 安装程序导致 CI 失败","fancy_title_localized":true,"locale":"en","id":401370,"title":"Minio installer breaks CI","slug":"minio-installer-breaks-ci","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2026-04-23T15:20:15.014Z","last_posted_at":"2026-04-29T00:38:21.091Z","bumped":true,"bumped_at":"2026-04-29T00:38:21.091Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"minio_runner 的安装脚本已损坏，原因是未遵循重定向。这导致 .github 仓库中的共享 GitHub Action 工作流失效。\n对于我们的插件而言，这意味着我们无法运行 Rails ……","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":278,"name":"开发","slug":"development"},{"id":1056,"name":"错误","slug":"bug"}],"tags_descriptions":{},"views":132,"like_count":8,"has_summary":false,"last_poster_username":"Lilly","category_id":7,"op_like_count":1,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The Minio installer issue breaking CI workflows due to an unhandled redirect has been resolved by a fix merged in the minio_runner repository.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":22917,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人、已被接受的回答","user_id":127856,"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":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"改进 Discourse API 文档以构建完全自定义的前端社区","fancy_title_localized":true,"locale":"en","id":401236,"title":"Improving Discourse API documentation for building fully custom frontend community","slug":"improving-discourse-api-documentation-for-building-fully-custom-frontend-community","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2026-04-22T11:48:13.415Z","last_posted_at":"2026-04-22T13:15:05.826Z","bumped":true,"bumped_at":"2026-04-22T13:15:05.826Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"大家好 :waving_hand: \n我一直在使用 Discourse 作为无头后端构建自定义前端（基于 Next.js 的架构），我想分享一些我在当前 API 设计中遇到的实际差距...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":330,"name":"rest-api","slug":"rest-api"}],"tags_descriptions":{"rest-api":"关于向 Discourse 发出外部请求的主题"},"views":77,"like_count":6,"has_summary":false,"last_poster_username":"darkpixlz","category_id":7,"op_like_count":6,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A developer outlines API documentation and structural gaps hindering headless Discourse frontends, while a responder adds that inconsistent form-encoded endpoints further complicate modern JSON-based integrations.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":191326,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":114728,"primary_group_id":276,"flair_group_id":276}]},{"fancy_title":"从 API 删除草稿帖子 - 收到 not_found 错误","fancy_title_localized":true,"locale":"en","id":401220,"title":"Delete Draft post from the API - getting not_found error","slug":"delete-draft-post-from-the-api-getting-not-found-error","posts_count":2,"reply_count":0,"highest_post_number":3,"image_url":null,"created_at":"2026-04-22T08:38:25.157Z","last_posted_at":"2026-04-22T10:32:31.402Z","bumped":true,"bumped_at":"2026-04-22T10:32:31.402Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"您好，\n我尝试通过 API 删除草稿：\nDELETE /drafts/{draft_key}.json\n\n该草稿确实存在（已通过 GET /drafts.json 验证），我使用的 draft_key 和 sequence 也是正确的。\nAPI 请求（Postman / 后端）\nDELET…\n","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":330,"name":"rest-api","slug":"rest-api"}],"tags_descriptions":{"rest-api":"关于向 Discourse 发出外部请求的主题"},"views":58,"like_count":1,"has_summary":false,"last_poster_username":"zogstrip","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user's API draft deletion error was identified as an inconsistency in fallback authentication, which is being resolved by a pending pull request that adds support for the username query parameter.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":189191,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":1995,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"如何用 Python 与 Discourse 交互？","fancy_title_localized":true,"locale":"en","id":87543,"title":"Interact with discourse from Python?","slug":"interact-with-discourse-from-python","posts_count":32,"reply_count":25,"highest_post_number":33,"image_url":null,"created_at":"2018-05-15T16:34:39.786Z","last_posted_at":"2026-04-20T15:11:15.147Z","bumped":true,"bumped_at":"2026-04-20T15:11:15.147Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"大家好！我们热爱 Discourse，它是社区的基石。  \n我们是一个开源项目，在 GitHub 上拥有强大的影响力。我们有一个用 Python 编写的机器人，用于管理我们的 GitHub 仓库并执行类似……的任务。","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":5315,"like_count":88,"has_summary":false,"last_poster_username":"supermathie","category_id":7,"op_like_count":3,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"After concerns about Terms of Service violations regarding automated forum access, the Discourse team clarified that tools accessing public endpoints are acceptable provided users avoid bulk scraping and respect rate limits, prompting the tool creator to add a compliance disclaimer.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":31176,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":83597,"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":189822,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":3,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"按类别切换的一键移动帖子功能","fancy_title_localized":true,"locale":"en","id":400983,"title":"Category-toggled one-touch move post","slug":"category-toggled-one-touch-move-post","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-04-19T06:34:58.520Z","last_posted_at":"2026-04-19T06:34:59.112Z","bumped":true,"bumped_at":"2026-04-19T06:34:59.112Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"你好，\n在我的邮件分类中，我希望能够启用一个按钮——该按钮会出现在此分类的每篇帖子中。\n点击该按钮将自动选中该帖子并打开对话框，以便将该帖子拆分到现有的…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":61,"like_count":0,"has_summary":false,"last_poster_username":"Ethsim2","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user inquires about the implementation complexity of adding a one-touch button to automatically select posts and open the split dialogue within a specific email category.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":160471,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"禁用重定向至 /login 的初始页面","fancy_title_localized":true,"locale":"en","id":400773,"title":"Disable initial page that re-directs to /login","slug":"disable-initial-page-that-re-directs-to-login","posts_count":6,"reply_count":5,"highest_post_number":6,"image_url":null,"created_at":"2026-04-16T08:40:01.531Z","last_posted_at":"2026-04-17T19:05:23.863Z","bumped":true,"bumped_at":"2026-04-17T19:05:23.863Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"你好，\n我目前正在实现一个缓慢的重定向，以避免需要点击初始页面上唯一的“登录”按钮\nimport { apiInitializer } from \"discourse/lib/api\";\n\nexport default apiInitializer(\"1.0\", (api) => {\n  ap…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":740,"name":"登录","slug":"login"}],"tags_descriptions":{},"views":128,"like_count":5,"has_summary":false,"last_poster_username":"Ethsim2","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user resolved the slow redirect issue by discovering the 'skip landing screen' setting was already enabled and subsequently disabled local logins because their login and sign-up pages are identical.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":160471,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"频繁发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":1995,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":21029,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"弃用主题和插件中的 .hbs 文件扩展名","fancy_title_localized":true,"locale":"en","id":398896,"title":"Deprecating .hbs file extension in themes and plugins","slug":"deprecating-hbs-file-extension-in-themes-and-plugins","posts_count":19,"reply_count":11,"highest_post_number":19,"image_url":null,"created_at":"2026-03-20T16:48:11.841Z","last_posted_at":"2026-04-13T13:09:24.980Z","bumped":true,"bumped_at":"2026-04-13T13:09:24.980Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在最新版本的 Discourse 中，在主题和插件中使用 .hbs 文件已被弃用。此文件格式的支持将在下一次 ESR 版本发布后移除。Handlebars 模板应替换为更…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"开发者新闻","slug":"dev-news"}],"tags_descriptions":{},"views":611,"like_count":43,"has_summary":false,"last_poster_username":"manuel","category_id":7,"op_like_count":7,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A plugin developer expresses frustration over the deprecation of .hbs files, arguing that frequent breaking changes undermine stability, while the Discourse team defends the transition as a necessary evolution supported by automated migration tools and a clear deprecation timeline.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":173218,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":26605,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":406,"primary_group_id":null,"flair_group_id":142},{"extras":"latest","description":"最新发帖人","user_id":82960,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"生成或获取 Discourse 测试数据的最佳方法？","fancy_title_localized":true,"locale":"en","id":400205,"title":"Best Ways to Generate or Obtain Test Data for Discourse?","slug":"best-ways-to-generate-or-obtain-test-data-for-discourse","posts_count":5,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2026-04-08T08:06:21.251Z","last_posted_at":"2026-04-08T08:19:02.937Z","bumped":true,"bumped_at":"2026-04-08T08:19:02.937Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"大家好 :waving_hand: \n我目前正在使用 Discourse，并试图更好地理解如何有效地测试功能和流程。我面临的一个挑战是如何获取真实且有用的测试数据，用于一个 …","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":79,"like_count":7,"has_summary":false,"last_poster_username":"hanoith2022","category_id":7,"op_like_count":0,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The user clarified their need for diverse media test files like MP3s beyond standard topic seeding, receiving suggestions to use a webcam for video and generative AI for audio.","has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":191275,"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":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"使用 dv (Discourse Vibe) 在开发中配置 Discourse AI","fancy_title_localized":true,"locale":"en","id":388622,"title":"Using dv (Discourse Vibe) to configure Discourse AI in development","slug":"using-dv-discourse-vibe-to-configure-discourse-ai-in-development","posts_count":6,"reply_count":3,"highest_post_number":6,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_741x1024.png","created_at":"2025-11-17T03:44:03.670Z","last_posted_at":"2026-04-07T21:58:57.795Z","bumped":true,"bumped_at":"2026-04-07T21:58:57.795Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"dv - Discourse Vibe - https://github.com/samsaffron/dv 是我一直在构建的一个工具，可以让你轻松地处理多个预配置的 Discourse 开发容器。我构建它是为了让与 AI 代理的协作更加容易，b&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1344,"height":1857,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3.png"},{"max_width":1024,"max_height":1024,"width":741,"height":1024,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_741x1024.png"},{"max_width":800,"max_height":800,"width":578,"height":800,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_578x800.png"},{"max_width":600,"max_height":600,"width":434,"height":600,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_434x600.png"},{"max_width":400,"max_height":400,"width":289,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_289x400.png"},{"max_width":300,"max_height":300,"width":217,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_217x300.png"},{"max_width":200,"max_height":200,"width":144,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/9/b/49beab442301ca30e69def73c24cf3fa9c88c5c3_2_144x200.png"}],"tags":[],"tags_descriptions":{},"views":275,"like_count":23,"has_summary":false,"last_poster_username":"sam","category_id":7,"op_like_count":17,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Sam clarifies that dv is a technical tool primarily for developers to manage multiple isolated Discourse development environments, noting it simplifies even single-instance setups but is not designed for non-technical hobbyists.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":1,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":161351,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":181081,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"弃用主题和插件中的 .js.es6 文件扩展名","fancy_title_localized":true,"locale":"en","id":398894,"title":"Deprecating .js.es6 file extensions in themes and plugins","slug":"deprecating-js-es6-file-extensions-in-themes-and-plugins","posts_count":9,"reply_count":7,"highest_post_number":9,"image_url":null,"created_at":"2026-03-20T16:03:38.678Z","last_posted_at":"2026-04-07T14:34:36.664Z","bumped":true,"bumped_at":"2026-04-07T14:34:36.664Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"早在 2020 年，Discourse 就已将 .js.es6 扩展名切换为 .js。多年来，绝大多数主题和插件都已切换到新的扩展名，这为现代 JavaScript 提供了更好的兼容性……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":973,"name":"开发者新闻","slug":"dev-news"}],"tags_descriptions":{},"views":259,"like_count":26,"has_summary":false,"last_poster_username":"awesomerobot","category_id":7,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse is removing support for .js.es6 extensions to resolve developer confusion and improve tooling, despite plugin author LeoDavidson's objection that the change breaks backward compatibility and demonstrates poor prioritization.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":114728,"primary_group_id":276,"flair_group_id":276},{"extras":"latest","description":"最新发帖人","user_id":2770,"primary_group_id":47,"flair_group_id":47}]}]}}