{"users":[{"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":100484,"username":"JammyDodger","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jammydodger/{size}/254611_2.png","trust_level":3},{"id":153005,"username":"wal","name":null,"avatar_template":"https://avatars.discourse-cdn.com/v4/letter/w/d6d6ee/{size}.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":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":8571,"username":"tobiaseigen","name":"Tobias Eigen","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/tobiaseigen/{size}/539204_2.png","trust_level":2},{"id":63921,"username":"eextra","name":"Sylwia","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/eextra/{size}/170266_2.png","trust_level":2},{"id":77477,"username":"b4oshany","name":"Oshane Bailey","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/b4oshany/{size}/176298_2.png","trust_level":2},{"id":68638,"username":"ClawdiaWolf","name":"Claudia","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/clawdiawolf/{size}/262518_2.png","trust_level":2},{"id":16295,"username":"cogdog","name":"Alan Levine","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/cogdog/{size}/116536_2.png","trust_level":2},{"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":150857,"username":"MachineScholar","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/machinescholar/{size}/424719_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":172000,"username":"Olle11","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/o/cdc98d/{size}.png","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":64663,"username":"patrickemin","name":"Patrick EMIN","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/patrickemin/{size}/520162_2.png","trust_level":2},{"id":83775,"username":"fitzy","name":"Michael Fitz-Payne","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/fitzy/{size}/192549_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,"trust_level":4},{"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":166720,"username":"opcourdis","name":null,"avatar_template":"https://avatars.discourse-cdn.com/v4/letter/o/45deac/{size}.png","trust_level":2},{"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":24816,"username":"RBoy","name":"RBoy","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/{size}.png","trust_level":2},{"id":133767,"username":"petermarkley","name":null,"avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/petermarkley/{size}/307825_2.png","trust_level":1},{"id":138567,"username":"pHneutre","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/phneutre/{size}/326831_2.png","trust_level":2},{"id":79696,"username":"Jim_Starkweather","name":"Jim Starkweather","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jim_starkweather/{size}/181916_2.png","trust_level":2},{"id":19,"username":"eviltrout","name":"Robin Ward","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/eviltrout/{size}/5275_2.png","trust_level":4},{"id":14353,"username":"simon","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/simon/{size}/339122_2.png","trust_level":2},{"id":111706,"username":"kiefferr","name":"Ryan Kieffer","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/a5b964/{size}.png","trust_level":2},{"id":31832,"username":"Ivan_Rapekas","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ivan_rapekas/{size}/248924_2.png","trust_level":2},{"id":5859,"username":"j127","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/j127/{size}/79093_2.png","trust_level":2},{"id":27773,"username":"bletch","name":"Danny Goodall","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/bletch/{size}/69088_2.png","trust_level":2},{"id":117526,"username":"Dave_Driesmans","name":"Dave Driesmans","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/dave_driesmans/{size}/253276_2.png","trust_level":0},{"id":179822,"username":"kcahtoor","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/9de0a6/{size}.png","trust_level":1},{"id":40486,"username":"TheBestPessimist","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/thebestpessimist/{size}/247704_2.png","trust_level":2},{"id":57427,"username":"Machigatta","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/machigatta/{size}/125064_2.png","trust_level":1},{"id":104279,"username":"nat","name":"Natalie T","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/nat/{size}/235063_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":19127,"username":"webeindustry","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/webeindustry/{size}/53973_2.png","trust_level":2},{"id":27611,"username":"Jen_Lijo","name":"Jen","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jen_lijo/{size}/77057_2.png","trust_level":2},{"id":23842,"username":"AhmadF.Cheema","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ahmadf.cheema/{size}/87109_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":28866,"username":"schungx","name":"Stephen Chung","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/schungx/{size}/70989_2.png","trust_level":2},{"id":141900,"username":"maaatt","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/m/ecb155/{size}.png","trust_level":2},{"id":25674,"username":"Jithin_Krishnan","name":"Jithin Krishnan","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/jithin_krishnan/{size}/121329_2.png","trust_level":1},{"id":704,"username":"AstonJ","name":"AstonJ","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/astonj/{size}/215041_2.png","trust_level":2},{"id":149694,"username":"Ambient.Impact","name":"","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/ambient.impact/{size}/387027_2.png","trust_level":1},{"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":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":27384,"username":"merefield","name":"Robert","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/merefield/{size}/176214_2.png","trust_level":3},{"id":19189,"username":"rkda","name":"RK","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/rkda/{size}/120046_2.png","trust_level":2},{"id":43426,"username":"debryc","name":"Deborah Chang","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/debryc/{size}/101652_2.png","trust_level":2},{"id":193655,"username":"Devansh_Bartwal","name":"Devansh Bartwal","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/devansh_bartwal/{size}/489793_2.png","trust_level":0},{"id":179252,"username":"Athenkosi","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/a/e79b87/{size}.png","trust_level":0},{"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":83228,"username":"xu2","name":"Xu2","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/xu2/{size}/539078_2.png","trust_level":2},{"id":29739,"username":"southpaw","name":"Southpaw","avatar_template":"/user_avatar/meta-redesign-2026.discourse.group/southpaw/{size}/79352_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":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}],"primary_groups":[{"id":47,"name":"team"},{"id":276,"name":"VolunteerMods"}],"flair_groups":[{"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":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":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":73,"name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111"},{"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/documentation/10?page=1","per_page":30,"top_tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":482,"name":"参考","slug":"reference"},{"id":543,"name":"人工智能","slug":"ai"},{"id":479,"name":"解释","slug":"explanation"},{"id":812,"name":"用户","slug":"users"},{"id":820,"name":"主题指南","slug":"theme-guides"},{"id":39,"name":"电子邮件","slug":"email"},{"id":814,"name":"定制","slug":"customization"},{"id":330,"name":"rest-api","slug":"rest-api"},{"id":60,"name":"单点登录","slug":"sso"},{"id":484,"name":"教程","slug":"tutorial"},{"id":275,"name":"自动化","slug":"automation"},{"id":9,"name":"群组","slug":"groups"},{"id":819,"name":"代码","slug":"code"},{"id":3,"name":"审核","slug":"moderation"},{"id":274,"name":"插件指南","slug":"plugin-guides"},{"id":271,"name":"配置","slug":"configuring"},{"id":811,"name":"界面","slug":"interface"},{"id":65,"name":"迁移","slug":"migrations"},{"id":481,"name":"高级设置","slug":"advanced-setup"},{"id":230,"name":"聊天集成","slug":"chat-integration"},{"id":799,"name":"索引","slug":"index"},{"id":813,"name":"内容","slug":"content"},{"id":150,"name":"开发人员安装","slug":"dev-install"},{"id":816,"name":"平台","slug":"platforms"},{"id":632,"name":"人工智能机器人","slug":"ai-bot"},{"id":24,"name":"docker","slug":"docker"},{"id":509,"name":"邀请","slug":"invites"},{"id":55,"name":"备份","slug":"backups"},{"id":2,"name":"徽章","slug":"badges"},{"id":263,"name":"话语连接","slug":"discourseconnect"}],"topics":[{"fancy_title":"批量管理操作","fancy_title_localized":true,"locale":"en","id":118349,"title":"Administrative Bulk Operations","slug":"administrative-bulk-operations","posts_count":9,"reply_count":24,"highest_post_number":39,"image_url":null,"created_at":"2019-05-22T00:36:34.343Z","last_posted_at":"2026-06-09T07:19:49.127Z","bumped":true,"bumped_at":"2026-06-09T07:19:49.127Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"下面列出了一系列可从命令行启动的批量操作。您需要 SSH 访问权限，因此如果您是托管客户，请联系 Discourse 团队以运行这些操作…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":482,"name":"参考","slug":"reference"},{"id":271,"name":"配置","slug":"configuring"}],"tags_descriptions":{},"views":14259,"like_count":75,"has_summary":false,"last_poster_username":"nathank","category_id":55,"op_like_count":70,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user resolved a group export issue by disabling membership requests to avoid requiring an owner, allowing migration to proceed before patching settings post-transfer.","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":100484,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":153005,"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":57788,"primary_group_id":null,"flair_group_id":148}]},{"fancy_title":"理解并自定义“关于”页面","fancy_title_localized":true,"locale":"en","id":332161,"title":"Understanding and customizing the About page","slug":"understanding-and-customizing-the-about-page","posts_count":1,"reply_count":5,"highest_post_number":1,"image_url":null,"created_at":"2024-10-29T13:31:19.910Z","last_posted_at":"2024-10-29T13:31:19.910Z","bumped":true,"bumped_at":"2026-06-08T22:02:26.641Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse 中的“关于”页面是面向访客和新成员的介绍性部分，提供社区概览、幕后团队、基本统计数据和联系方式。虽然主要旨在……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"visibility_reason_id":4,"tags":[{"id":917,"name":"关于页面","slug":"about-page"}],"tags_descriptions":{},"views":1341,"like_count":7,"has_summary":false,"last_poster_username":"Discourse","category_id":53,"op_like_count":7,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Administrators can customize Discourse's About page to reflect community identity, including text, banner, and contact details, without needing console access.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":8571,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"通过 IFTTT 生成新话题、帖子和私信","fancy_title_localized":true,"locale":"en","id":61336,"title":"Generate new topics, posts and PM via IFTTT","slug":"generate-new-topics-posts-and-pm-via-ifttt","posts_count":6,"reply_count":3,"highest_post_number":6,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c.png","created_at":"2017-04-20T16:30:45.305Z","last_posted_at":"2023-03-23T22:43:21.096Z","bumped":true,"bumped_at":"2026-06-08T21:52:07.575Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"想使用 IFTTT 创建新主题、帖子和私信吗？让我们开始吧！\n通过 IFTTT 服务的 Maker Webhooks，我们可以调用 Discourse API。为此，我们首先需要生成 API 密钥。您可以创建 API&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1007,"height":209,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c.png"},{"max_width":800,"max_height":800,"width":800,"height":166,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_800x166.png"},{"max_width":600,"max_height":600,"width":600,"height":124,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_600x124.png"},{"max_width":400,"max_height":400,"width":400,"height":83,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_400x83.png"},{"max_width":300,"max_height":300,"width":300,"height":62,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_300x62.png"},{"max_width":200,"max_height":200,"width":200,"height":41,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/9/1/9165372a47fa7a7f88adf252d9e56f649bf01b6c_2_200x41.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":817,"name":"任务","slug":"tasks"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":11493,"like_count":26,"has_summary":false,"last_poster_username":"cogdog","category_id":167,"op_like_count":22,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users face issues with IFTTT integration due to API key and username being sent as GET params instead of headers, prompting alternatives like custom PHP scripts or Zapier for seamless Discourse integration.","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":63921,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":77477,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":68638,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":16295,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Discourse AI - 网络制品","fancy_title_localized":true,"locale":"en","id":339972,"title":"Discourse AI - Web Artifacts","slug":"discourse-ai-web-artifacts","posts_count":5,"reply_count":3,"highest_post_number":6,"image_url":null,"created_at":"2024-12-03T02:36:29.068Z","last_posted_at":"2025-06-13T18:58:11.481Z","bumped":true,"bumped_at":"2026-06-08T21:51:22.542Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"什么是 AI 工件？\nAI 工件是强大的工具，允许用户在 Discourse 帖子中直接创建、嵌入和交互动态的基于 Web 的组件。这些组件可以包含自定义 HTML、CSS 和…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":543,"name":"人工智能","slug":"ai"}],"tags_descriptions":{},"views":719,"like_count":25,"has_summary":false,"last_poster_username":"MachineScholar","category_id":53,"op_like_count":23,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse AI Artifacts allow embedding interactive web components in posts, but a user reported a bug where an artifact shared via a bot in a private category remains inaccessible to the intended group despite database permissions indicating access.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":1,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"最新发帖人","user_id":150857,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"配置主题的自动顶帖","fancy_title_localized":true,"locale":"en","id":262158,"title":"Configuring auto-bumping for topics","slug":"configuring-auto-bumping-for-topics","posts_count":25,"reply_count":14,"highest_post_number":31,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546.png","created_at":"2023-04-19T00:42:32.634Z","last_posted_at":"2026-06-06T20:10:57.964Z","bumped":true,"bumped_at":"2026-06-06T20:10:57.964Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: 本指南介绍如何在 Discourse 中设置和使用主题的自动置顶，包括全类别设置和单个主题计时器。\n:person_raising_hand: 所需用户级别：管理员\n\n自动置顶...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":719,"height":983,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546.png"},{"max_width":800,"max_height":800,"width":585,"height":800,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_585x800.png"},{"max_width":600,"max_height":600,"width":438,"height":600,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_438x600.png"},{"max_width":400,"max_height":400,"width":292,"height":400,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_292x400.png"},{"max_width":300,"max_height":300,"width":219,"height":300,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_219x300.png"},{"max_width":200,"max_height":200,"width":146,"height":200,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/0/220a55444deeacff454dc3c7faeca8949d426546_2_146x200.png"}],"tags":[{"id":627,"name":"自动提升","slug":"auto-bump"}],"tags_descriptions":{},"views":2132,"like_count":30,"has_summary":false,"last_poster_username":"patrickemin","category_id":53,"op_like_count":8,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user suggested enhancing auto-bumping by prioritizing topics based on visitor interest metrics like views or votes, and by excluding recently created topics to prevent spamming new content.","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":127856,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":172000,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":95552,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":64663,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"如何取消我的主机计划？","fancy_title_localized":true,"locale":"en","id":306413,"title":"How do I cancel my hosting plan?","slug":"how-do-i-cancel-my-hosting-plan","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_1024x228.png","created_at":"2024-05-01T23:36:57.849Z","last_posted_at":"2024-05-01T23:36:57.942Z","bumped":true,"bumped_at":"2026-06-05T11:39:22.941Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: 本指南介绍如何取消您的 Discourse 托管服务、下载您的数据，并了解维持对站点有限访问权限的选项。\n:person_raising_hand: 所需用户级别：管理员…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1630,"height":364,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":228,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_1024x228.png"},{"max_width":800,"max_height":800,"width":800,"height":178,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_800x178.png"},{"max_width":600,"max_height":600,"width":600,"height":133,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_600x133.png"},{"max_width":400,"max_height":400,"width":400,"height":89,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_400x89.png"},{"max_width":300,"max_height":300,"width":300,"height":66,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_300x66.png"},{"max_width":200,"max_height":200,"width":200,"height":44,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/d/0/7d0e3983d3e759ed6a137929fd2ec8b781b5b882_2_200x44.png"}],"tags":[],"tags_descriptions":{},"views":614,"like_count":3,"has_summary":false,"last_poster_username":"Discourse","category_id":164,"op_like_count":3,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The guide outlines steps to cancel a Discourse hosting plan, detailing automatic data backup generation, alternative downgrade options like staff-only or read-only modes, and the decommissioning timeline.","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":"在 Fedora Linux 上为开发设置 Discourse","fancy_title_localized":true,"locale":"en","id":163348,"title":"Set up Discourse for development on Fedora Linux","slug":"set-up-discourse-for-development-on-fedora-linux","posts_count":13,"reply_count":12,"highest_post_number":25,"image_url":null,"created_at":"2020-09-08T11:00:32.308Z","last_posted_at":"2026-06-05T08:25:11.120Z","bumped":true,"bumped_at":"2026-06-05T08:25:11.120Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"本指南已在全新的 Fedora 31 和 33 上进行了测试，但可能适用于使用 dnf 作为包管理工具的旧版本。这不是官方指南，但可能对其他开发者有用……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":150,"name":"开发人员安装","slug":"dev-install"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤","开发人员安装":"为开发安装 Discourse 的说明和问题"},"views":4491,"like_count":43,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":27,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users question the guide's official status and the use of an outdated Ruby version (2.7.1) in the Fedora Discourse development setup instructions.","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":83775,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":166720,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"为 Discourse 配置 Facebook 登录","fancy_title_localized":true,"locale":"en","id":13394,"title":"Configure Facebook login for Discourse","slug":"configure-facebook-login-for-discourse","posts_count":38,"reply_count":114,"highest_post_number":210,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_1024x523.png","created_at":"2014-03-04T17:40:19.713Z","last_posted_at":"2026-06-03T12:45:59.346Z","bumped":true,"bumped_at":"2026-06-03T12:45:59.346Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":exclamation: As of February 2023, Meta has implemented a business verification requirement when publishing new and existing apps. \n\n:warning: Updating the Facebook app API or creating a new app will break existing login&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1394,"height":713,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":523,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_1024x523.png"},{"max_width":800,"max_height":800,"width":800,"height":409,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_800x409.png"},{"max_width":600,"max_height":600,"width":600,"height":306,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_600x306.png"},{"max_width":400,"max_height":400,"width":400,"height":204,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_400x204.png"},{"max_width":300,"max_height":300,"width":300,"height":153,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_300x153.png"},{"max_width":200,"max_height":200,"width":200,"height":102,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/5/e/f5e6494265fecb4d7c9d54ee2ca1fc5a1c646754_2_200x102.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":60,"name":"单点登录","slug":"sso"},{"id":755,"name":"社交认证","slug":"social-auth"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":332047,"like_count":138,"has_summary":false,"last_poster_username":"pHneutre","category_id":167,"op_like_count":77,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The tutorial for configuring Facebook login in Discourse is currently outdated because the provided developer link is broken and Meta's February 2023 business verification requirement has changed the setup process.","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":24816,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":133767,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":35474,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":138567,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"通过 Javascript 将 Discourse 评论嵌入到另一个网站上","fancy_title_localized":true,"locale":"en","id":31963,"title":"Embed Discourse comments on another website via Javascript","slug":"embed-discourse-comments-on-another-website-via-javascript","posts_count":128,"reply_count":311,"highest_post_number":491,"image_url":null,"created_at":"2015-08-10T18:20:46.333Z","last_posted_at":"2026-06-02T19:14:05.544Z","bumped":true,"bumped_at":"2026-06-02T19:14:05.544Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse 具有使用创建 IFRAME 的 Javascript API 在远程站点中嵌入主题评论的功能。有关此功能的实际示例，请查看 Coding Horror 的博客。该博客由 Ghost 运行……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":43,"name":"嵌入","slug":"embedding"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":302993,"like_count":281,"has_summary":true,"last_poster_username":"kiefferr","category_id":167,"op_like_count":116,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users discuss embedding Discourse comments on external sites, noting that private forums on separate domains block display for non-logged-in users and that HTTP 419 errors may stem from CSRF token mismatches between disconnected domains.","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":79696,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":19,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":14353,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":111706,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"配置传入邮件以创建新主题或组消息","fancy_title_localized":true,"locale":"en","id":62977,"title":"Configuring incoming email to create new topics or group messages","slug":"configuring-incoming-email-to-create-new-topics-or-group-messages","posts_count":4,"reply_count":30,"highest_post_number":57,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_1024x327.png","created_at":"2017-05-18T20:07:09.953Z","last_posted_at":"2026-02-10T09:21:38.030Z","bumped":true,"bumped_at":"2026-06-02T17:19:29.151Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":":bookmark: 本指南介绍如何设置接收邮件以在 Discourse 中创建新主题或群组消息，包括站点设置以及特定类别或群组设置的配置。:person_raising_hand: …","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1190,"height":381,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":327,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_1024x327.png"},{"max_width":800,"max_height":800,"width":800,"height":256,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_800x256.png"},{"max_width":600,"max_height":600,"width":600,"height":192,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_600x192.png"},{"max_width":400,"max_height":400,"width":400,"height":128,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_400x128.png"},{"max_width":300,"max_height":300,"width":300,"height":96,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_300x96.png"},{"max_width":200,"max_height":200,"width":200,"height":64,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/d/7da6974c6b7c56a7db91950b9f1116e0b04ff8e0_2_200x64.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":832,"name":"邮件接收","slug":"email-in"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":24573,"like_count":52,"has_summary":false,"last_poster_username":"Moin","category_id":53,"op_like_count":50,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user troubleshooting incoming email setup on a self-hosted Discourse instance, using an outdated Bitnami version, seeks clarification on email configuration settings and receives guidance to test on a supported platform instead.","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":100484,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":31832,"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":61196,"title":"Create and share a color scheme","slug":"create-and-share-a-color-scheme","posts_count":2,"reply_count":0,"highest_post_number":3,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_1024x670.png","created_at":"2017-04-18T14:44:23.540Z","last_posted_at":"2025-08-01T18:49:05.210Z","bumped":true,"bumped_at":"2026-06-02T14:54:24.218Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse 现已支持从远程仓库导入配色方案。下面我将演示如何进行此操作。\n导航至“颜色”并添加一个配色方案。\n前往您网站的 /admin/customize/colors 页面…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1950,"height":1276,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":670,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_1024x670.png"},{"max_width":800,"max_height":800,"width":800,"height":523,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_800x523.png"},{"max_width":600,"max_height":600,"width":600,"height":392,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_600x392.png"},{"max_width":400,"max_height":400,"width":400,"height":261,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_400x261.png"},{"max_width":300,"max_height":300,"width":300,"height":196,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_300x196.png"},{"max_width":200,"max_height":200,"width":200,"height":130,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/b/7/b7fced237ee399d52c634a3ab6fcc9416db65605_2_200x130.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":6291,"like_count":23,"has_summary":false,"last_poster_username":"j127","category_id":56,"op_like_count":23,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"User suggests adding 'hover' and 'selected' fields to the color scheme configuration for enhanced customization.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":5859,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"创建并分享字体主题组件","fancy_title_localized":true,"locale":"en","id":62462,"title":"Create and share a font theme component","slug":"create-and-share-a-font-theme-component","posts_count":5,"reply_count":0,"highest_post_number":7,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_1024x412.png","created_at":"2017-05-10T20:48:47.477Z","last_posted_at":"2025-08-19T22:34:35.578Z","bumped":true,"bumped_at":"2026-06-02T14:54:22.736Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse 支持导入包含来自远程仓库资源的主题。这允许主题作者共享字体和图像。创建一个包含字体的新 git 仓库\nmkdir discourse-roboto-theme\ncd discourse-r…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1508,"height":608,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":412,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_1024x412.png"},{"max_width":800,"max_height":800,"width":800,"height":322,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_800x322.png"},{"max_width":600,"max_height":600,"width":600,"height":241,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_600x241.png"},{"max_width":400,"max_height":400,"width":400,"height":161,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_400x161.png"},{"max_width":300,"max_height":300,"width":300,"height":120,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_300x120.png"},{"max_width":200,"max_height":200,"width":200,"height":80,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/1/d/c1de6b52ae98df03f557c91f1ae02251f08cda18_2_200x80.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":820,"name":"主题指南","slug":"theme-guides"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":5991,"like_count":23,"has_summary":false,"last_poster_username":"kcahtoor","category_id":56,"op_like_count":19,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users report errors with undefined variables and missing assets when following the font theme component guide, questioning if the instructions need updating.","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":27773,"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":117526,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":179822,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"开发 Discourse 插件 - 第 6 部分 - 添加验收测试","fancy_title_localized":true,"locale":"en","id":32619,"title":"Developing Discourse Plugins - Part 6 - Add acceptance tests","slug":"developing-discourse-plugins-part-6-add-acceptance-tests","posts_count":33,"reply_count":26,"highest_post_number":38,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_1024x715.png","created_at":"2015-08-27T21:32:26.323Z","last_posted_at":"2022-06-02T11:06:38.274Z","bumped":true,"bumped_at":"2026-06-02T14:54:21.418Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"上一教程：开发 Discourse 插件 - 第 5 部分 - 添加管理界面\n\n您知道 Discourse 拥有两个庞大的测试套件用于其代码库吗？在服务器端，我们的 Ruby 代码使用 rs… 的测试套件。","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1058,"height":739,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":715,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_1024x715.png"},{"max_width":800,"max_height":800,"width":800,"height":558,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_800x558.png"},{"max_width":600,"max_height":600,"width":600,"height":419,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_600x419.png"},{"max_width":400,"max_height":400,"width":400,"height":279,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_400x279.png"},{"max_width":300,"max_height":300,"width":300,"height":209,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_300x209.png"},{"max_width":200,"max_height":200,"width":200,"height":139,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/0/2/602e6bb3fe340f0569c1bfd60bb74f6d83d92893_2_200x139.png"}],"tags":[{"id":484,"name":"教程","slug":"tutorial"},{"id":274,"name":"插件指南","slug":"plugin-guides"},{"id":58,"name":"测试","slug":"testing"}],"tags_descriptions":{"教程":""},"views":17409,"like_count":82,"has_summary":false,"last_poster_username":"nat","category_id":56,"op_like_count":30,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users are troubleshooting issues with running acceptance tests for Discourse plugins, resolving errors related to test suites, plugin registration, and EmberCLI, with solutions involving test setup, plugin configuration, and code updates.","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":1,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":40486,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":57427,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":104279,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"开发 Discourse 插件 - 第 5 部分 - 添加管理界面","fancy_title_localized":true,"locale":"en","id":31761,"title":"Developing Discourse Plugins - Part 5 - Add an admin interface","slug":"developing-discourse-plugins-part-5-add-an-admin-interface","posts_count":47,"reply_count":40,"highest_post_number":51,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3.png","created_at":"2015-08-04T20:34:32.128Z","last_posted_at":"2024-09-24T11:10:58.173Z","bumped":true,"bumped_at":"2026-06-02T14:54:20.026Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"上一教程：开发 Discourse 插件 - 第 4 部分 - 设置 git\n\n有时，站点设置不足以作为插件所需的后台管理界面。例如，如果您安装了 discourse-akism…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":995,"height":244,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3.png"},{"max_width":800,"max_height":800,"width":800,"height":196,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_800x196.png"},{"max_width":600,"max_height":600,"width":600,"height":147,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_600x147.png"},{"max_width":400,"max_height":400,"width":400,"height":98,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_400x98.png"},{"max_width":300,"max_height":300,"width":300,"height":73,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_300x73.png"},{"max_width":200,"max_height":200,"width":200,"height":49,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/f/c8f5548016153a30a3ace7679111c95847f293c3_2_200x49.png"}],"tags":[{"id":484,"name":"教程","slug":"tutorial"},{"id":274,"name":"插件指南","slug":"plugin-guides"}],"tags_descriptions":{"教程":""},"views":26495,"like_count":85,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":28,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Users discuss and resolve issues with adding admin interfaces for their Discourse plugins, sharing code fixes and troubleshooting advice on Ember routing, file naming conventions, and testing errors.","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":19127,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":27611,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":19,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"开发 Discourse 插件 - 第 4 部分 - 设置 git","fancy_title_localized":true,"locale":"en","id":31272,"title":"Developing Discourse Plugins - Part 4 - Setup git","slug":"developing-discourse-plugins-part-4-setup-git","posts_count":11,"reply_count":5,"highest_post_number":11,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007.png","created_at":"2015-07-21T20:54:59.409Z","last_posted_at":"2024-01-30T11:12:28.312Z","bumped":true,"bumped_at":"2026-06-02T14:54:17.764Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"上一个教程：开发 Discourse 插件 - 第 3 部分 - 添加自定义站点设置\n\n现在，随着您的插件变得更加复杂，您也需要以更复杂的方式开发它。\n我们建议您……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":730,"height":413,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007.png"},{"max_width":600,"max_height":600,"width":600,"height":339,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_600x339.png"},{"max_width":400,"max_height":400,"width":400,"height":226,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_400x226.png"},{"max_width":300,"max_height":300,"width":300,"height":169,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_300x169.png"},{"max_width":200,"max_height":200,"width":200,"height":113,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/d/4/bd4e72b31887f4016cfe86b0d0617f1799f1d007_2_200x113.png"}],"tags":[{"id":484,"name":"教程","slug":"tutorial"},{"id":274,"name":"插件指南","slug":"plugin-guides"}],"tags_descriptions":{"教程":""},"views":13108,"like_count":37,"has_summary":false,"last_poster_username":"maaatt","category_id":56,"op_like_count":23,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Windows and macOS users face challenges with symbolic links in Discourse plugin development; solutions include using junctions in Windows, aliases in macOS, or a synced folder in Vagrant to create working symlinks within the development environment.","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":23842,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":13093,"primary_group_id":276,"flair_group_id":276},{"extras":null,"description":"频繁发帖人","user_id":28866,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":141900,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"开发 Discourse 插件 - 第 1 部分 - 创建基础插件","fancy_title_localized":true,"locale":"en","id":30515,"title":"Developing Discourse Plugins - Part 1 - Create a basic plugin","slug":"developing-discourse-plugins-part-1-create-a-basic-plugin","posts_count":33,"reply_count":87,"highest_post_number":141,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73.png","created_at":"2015-06-26T21:01:08.310Z","last_posted_at":"2025-07-08T20:52:10.855Z","bumped":true,"bumped_at":"2026-06-02T14:54:16.316Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在 Discourse 中构建插件其实非常简单，只要你了解几个小窍门。本文的目标是创建一个插件骨架，并带你入门基础知识。\n你的开发环境\n请确保你已…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":845,"height":128,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73.png"},{"max_width":800,"max_height":800,"width":800,"height":121,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_800x121.png"},{"max_width":600,"max_height":600,"width":600,"height":90,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_600x90.png"},{"max_width":400,"max_height":400,"width":400,"height":60,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_400x60.png"},{"max_width":300,"max_height":300,"width":300,"height":45,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_300x45.png"},{"max_width":200,"max_height":200,"width":200,"height":30,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/9/7/b/97b7e2daac4cae0c6b3642a17d5b87dcec4b5c73_2_200x30.png"}],"tags":[{"id":484,"name":"教程","slug":"tutorial"},{"id":274,"name":"插件指南","slug":"plugin-guides"}],"tags_descriptions":{"教程":""},"views":82768,"like_count":210,"has_summary":false,"last_poster_username":"Ambient.Impact","category_id":56,"op_like_count":110,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The discussion details an issue encountered when creating plugins with the Docker setup, requiring users to configure Git's user email and name within the container before running `rake plugin:create`.","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":25674,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":13093,"primary_group_id":276,"flair_group_id":276},{"extras":null,"description":"频繁发帖人","user_id":704,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":149694,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"使用 DModal API 在 Discourse 中渲染模态窗口（即弹出窗口/对话框）","fancy_title_localized":true,"locale":"en","id":268304,"title":"Using the DModal API to render Modal windows (aka popups/dialogs) in Discourse","slug":"using-the-dmodal-api-to-render-modal-windows-aka-popups-dialogs-in-discourse","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35.png","created_at":"2023-07-03T09:52:06.275Z","last_posted_at":"2023-07-03T09:52:06.275Z","bumped":true,"bumped_at":"2026-06-02T14:54:11.378Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse 3.1.0.beta6 发布了一个全新的基于组件的 <DModal> API。\n\nℹ️ 此 API 已取代旧的基于控制器的 API，后者现已弃用。如果您有使用旧 API 的现有模态框，请...","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":696,"height":258,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35.png"},{"max_width":600,"max_height":600,"width":600,"height":222,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_600x222.png"},{"max_width":400,"max_height":400,"width":400,"height":148,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_400x148.png"},{"max_width":300,"max_height":300,"width":300,"height":111,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_300x111.png"},{"max_width":200,"max_height":200,"width":200,"height":74,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/0/b/40be9a7c253202136882269ba77d47ad86bd6d35_2_200x74.png"}],"tags":[{"id":819,"name":"代码","slug":"code"}],"tags_descriptions":{},"views":2083,"like_count":17,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":17,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse 3.1.0.beta6 introduces the <DModal> component API for rendering modals, replacing the deprecated controller-based method, with examples for template use, component wrapping, and service-based triggering.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":1,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"开发者指南索引","fancy_title_localized":true,"locale":"en","id":308036,"title":"Developer Guides Index","slug":"developer-guides-index","posts_count":1,"reply_count":1,"highest_post_number":1,"image_url":null,"created_at":"2024-05-15T06:05:51.350Z","last_posted_at":"2024-05-15T06:05:51.457Z","bumped":true,"bumped_at":"2026-06-01T15:09:46.938Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"关于通过插件、主题和主题组件扩展 Discourse、使用核心代码以及利用 Discourse API 的文档。\n\n简介\n\n简介：Discourse 开发入门\n\n开发&hellip;","visible":true,"closed":true,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":799,"name":"索引","slug":"index"}],"tags_descriptions":{"索引":"文档类别索引主题。"},"views":1986,"like_count":13,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":13,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discussion about creating a plugin skeleton, with the original link now found at https://meta.discourse.org/t/automating-discourse-plugin-setup-with-create-discourse-plugin-gem/315013, which provides a rake task for automating Discourse plugin setup.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"原始发帖人、最新发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":100484,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"使用 CSS 伪元素在站点任意位置插入文本或图片","fancy_title_localized":true,"locale":"en","id":99200,"title":"Insert text or images anywhere on your site using CSS pseudo-elements","slug":"insert-text-or-images-anywhere-on-your-site-using-css-pseudo-elements","posts_count":1,"reply_count":6,"highest_post_number":1,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_1024x471.png","created_at":"2018-10-11T11:12:34.130Z","last_posted_at":"2018-10-11T11:12:34.130Z","bumped":true,"bumped_at":"2026-06-01T15:09:42.855Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"所以，您想在您的 Discourse 站点中插入一些文本或图片。 \n关于文本，在大多数情况下，只需在 /admin/customize/site_texts 中修改即可。 \n但有时，我们确实希望添加一句话 ……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1911,"height":879,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":471,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_1024x471.png"},{"max_width":800,"max_height":800,"width":800,"height":367,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_800x367.png"},{"max_width":600,"max_height":600,"width":600,"height":275,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_600x275.png"},{"max_width":400,"max_height":400,"width":400,"height":183,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_400x183.png"},{"max_width":300,"max_height":300,"width":300,"height":137,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_300x137.png"},{"max_width":200,"max_height":200,"width":200,"height":91,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/7/3/8/7382dd2cbcd102675e74e8a1853a79d2e32a0021_2_200x91.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":814,"name":"定制","slug":"customization"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":17984,"like_count":33,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":33,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"To insert text or images on a site, use CSS pseudo-elements `:before` and `:after` to add content to elements without modifying existing HTML, by editing the site's stylesheet in the browser's developer console.","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":"Designing for Different Devices (Viewport Size, Touch/Hover, etc.)","fancy_title_localized":false,"locale":null,"id":367810,"title":"Designing for Different Devices (Viewport Size, Touch/Hover, etc.)","slug":"designing-for-different-devices-viewport-size-touch-hover-etc","posts_count":15,"reply_count":11,"highest_post_number":15,"image_url":null,"created_at":"2025-05-27T18:17:05.719Z","last_posted_at":"2026-01-25T21:34:26.908Z","bumped":true,"bumped_at":"2026-06-01T15:09:36.242Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"This document outlines the APIs used to adapt Discourse’s user interface for different devices. \nViewport Size\nThe most important characteristic to consider is the viewport size. We design “mobile first” and then add cus&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":701,"like_count":24,"has_summary":false,"last_poster_username":"merefield","category_id":56,"op_like_count":12,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse is phasing out legacy mobile/desktop modes in favor of viewport and touch detection; users discuss deprecating outdated classes like pull-left and adapting core components for responsive layouts across devices.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":-1,"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":23968,"primary_group_id":47,"flair_group_id":47},{"extras":null,"description":"频繁发帖人","user_id":127856,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Guidelines for CSS classes using BEM","fancy_title_localized":false,"locale":null,"id":361851,"title":"Guidelines for CSS classes using BEM","slug":"guidelines-for-css-classes-using-bem","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-04-15T05:48:23.418Z","last_posted_at":"2025-04-15T05:48:23.483Z","bumped":true,"bumped_at":"2026-06-01T15:09:34.864Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Background\nWhen writing CSS classes for Discourse components, themes, or plugins, we follow a modified variant of Block Element Modifier (BEM). Following these guidelines will make it much less likely for CSS conflicts t&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":294,"like_count":8,"has_summary":false,"last_poster_username":"system","category_id":56,"op_like_count":8,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse uses a modified BEM variant for CSS classes, following specific syntax and guidelines to minimize conflicts and improve specificity.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Using Transformers to customize client-side values and behavior","fancy_title_localized":false,"locale":null,"id":349954,"title":"Using Transformers to customize client-side values and behavior","slug":"using-transformers-to-customize-client-side-values-and-behavior","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2025-01-31T20:19:51.229Z","last_posted_at":"2025-11-03T03:00:09.908Z","bumped":true,"bumped_at":"2026-06-01T15:09:33.590Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse core includes a number of “transformer” hooks which can be used to customize client behavior. These fall into two categories: \n\n\nValue Transformers take an output from Discourse core, and optionally modify it, &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":605,"like_count":11,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":10,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A discussion on using Discourse's transformer hooks to customize client-side values and behavior, with recent updates including a PR to modify the Transformers registry link to the frontend directory.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":-1,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"使用 discourse-chat-integration 插件设置 Slack 通知","fancy_title_localized":true,"locale":"en","id":66730,"title":"Set up Slack notifications using the discourse-chat-integration plugin","slug":"set-up-slack-notifications-using-the-discourse-chat-integration-plugin","posts_count":107,"reply_count":64,"highest_post_number":118,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257.png","created_at":"2017-07-24T16:45:28.351Z","last_posted_at":"2026-06-01T13:26:59.689Z","bumped":true,"bumped_at":"2026-06-01T13:26:59.689Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"本 \\u003cspan class=\\\"hashtag-icon-placeholder\\\"\\u003e\\u003c/span\\u003ehowto\\u003c/span\\u003e 描述了如何设置 discourse-chat-integration 中包含的 Slack 提供程序。它允许发布通知到 Slack，使用斜杠命令管理规则，并将记录发布回 Discourse。Slac&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":564,"height":464,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257.png"},{"max_width":400,"max_height":400,"width":400,"height":329,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257_2_400x329.png"},{"max_width":300,"max_height":300,"width":300,"height":246,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257_2_300x246.png"},{"max_width":200,"max_height":200,"width":200,"height":164,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/3X/7/1/712d23f0886549eb0934b392fe790eaecd55b257_2_200x164.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":230,"name":"聊天集成","slug":"chat-integration"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":33759,"like_count":194,"has_summary":true,"last_poster_username":"Devansh_Bartwal","category_id":167,"op_like_count":33,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user inquired whether the discourse-chat-integration plugin allows tagging Slack users based on keywords used within the Discourse community.","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":19189,"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":43426,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":193655,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"开发者Markdown扩展指南","fancy_title_localized":true,"locale":"en","id":66023,"title":"Developer's guide to Markdown extensions","slug":"developers-guide-to-markdown-extensions","posts_count":2,"reply_count":13,"highest_post_number":24,"image_url":null,"created_at":"2017-07-11T21:23:25.941Z","last_posted_at":"2026-06-01T08:45:53.539Z","bumped":true,"bumped_at":"2026-06-01T08:45:53.539Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Discourse 使用一个名为 Markdown-it 的 Markdown 引擎。\n以下是一些开发人员笔记，可帮助您修复核心中的错误或创建新的插件。\n基础知识\nDiscourse 在引擎之上仅包含一些辅助函数，……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":482,"name":"参考","slug":"reference"},{"id":52,"name":"markdown","slug":"markdown"},{"id":819,"name":"代码","slug":"code"}],"tags_descriptions":{},"views":13554,"like_count":35,"has_summary":false,"last_poster_username":"NateDhaliwal","category_id":56,"op_like_count":35,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"While the guide details creating Markdown extensions for Discourse, a user inquires whether these customizations can be implemented within Theme Components or are restricted to plugins.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":135392,"primary_group_id":null,"flair_group_id":73}]},{"fancy_title":"创建、下载和恢复您的 Discourse 数据库备份","fancy_title_localized":true,"locale":"en","id":122710,"title":"Create, download, and restore a backup of your Discourse database","slug":"create-download-and-restore-a-backup-of-your-discourse-database","posts_count":26,"reply_count":41,"highest_post_number":69,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_1024x292.png","created_at":"2019-07-11T18:39:08.493Z","last_posted_at":"2026-05-29T20:31:09.472Z","bumped":true,"bumped_at":"2026-05-29T20:31:09.472Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"：bookmark: 本指南提供了创建、下载和恢复 Discourse 数据库备份的分步说明。\n：person_raising_hand: 所需用户级别：管理员\n\nDiscourse 允许站点管……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1241,"height":354,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":292,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_1024x292.png"},{"max_width":800,"max_height":800,"width":800,"height":228,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_800x228.png"},{"max_width":600,"max_height":600,"width":600,"height":171,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_600x171.png"},{"max_width":400,"max_height":400,"width":400,"height":114,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_400x114.png"},{"max_width":300,"max_height":300,"width":300,"height":85,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_300x85.png"},{"max_width":200,"max_height":200,"width":200,"height":57,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/5/1/251a2ade814ccd6010680618bb1fff0be9ea50a7_2_200x57.png"}],"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":55,"name":"备份","slug":"backups"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤"},"views":24487,"like_count":42,"has_summary":false,"last_poster_username":"southpaw","category_id":55,"op_like_count":32,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Discourse clarified that their infrastructure backups are for disaster recovery only and cannot be used for individual site restores, directing users to contact support for assistance with creating full backups that include uploads.","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":179252,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":160471,"primary_group_id":null,"flair_group_id":73},{"extras":null,"description":"频繁发帖人","user_id":83228,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"最新发帖人","user_id":29739,"primary_group_id":47,"flair_group_id":47}]},{"fancy_title":"Theme Developer Tutorial: 2. Creating a remote theme","fancy_title_localized":false,"locale":null,"id":357797,"title":"Theme Developer Tutorial: 2. Creating a remote theme","slug":"theme-developer-tutorial-2-creating-a-remote-theme","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-03-18T15:59:09.382Z","last_posted_at":"2025-03-18T15:59:09.454Z","bumped":true,"bumped_at":"2026-05-29T10:12:51.441Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"In the last chapter, we created a basic theme via the Discourse admin interface. This works well enough for very simple themes. But as soon as you want to do something more complex, or share a theme more widely, you’ll n&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[],"tags_descriptions":{},"views":724,"like_count":2,"has_summary":false,"last_poster_username":"system","category_id":56,"op_like_count":2,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"The tutorial guides users through creating a remote Discourse theme using the discourse_theme CLI, syncing it to a Discourse instance, adding custom code, and preparing it for GitHub hosting.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":-1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Write end-to-end system specs for the Discourse user interface","fancy_title_localized":false,"locale":null,"id":325937,"title":"Write end-to-end system specs for the Discourse user interface","slug":"write-end-to-end-system-specs-for-the-discourse-user-interface","posts_count":4,"reply_count":2,"highest_post_number":5,"image_url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64.png","created_at":"2024-09-11T04:07:31.148Z","last_posted_at":"2025-08-28T14:51:13.004Z","bumped":true,"bumped_at":"2026-05-29T10:12:45.063Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Background\nRails system specs are used to simulate the actions of a real user using the app in a browser. We use the Playwright ruby driver which is becoming an industry standard. The tests run locally and in CI out of t&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":990,"height":602,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64.png"},{"max_width":800,"max_height":800,"width":800,"height":486,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_800x486.png"},{"max_width":600,"max_height":600,"width":600,"height":364,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_600x364.png"},{"max_width":400,"max_height":400,"width":400,"height":243,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_400x243.png"},{"max_width":300,"max_height":300,"width":300,"height":182,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_300x182.png"},{"max_width":200,"max_height":200,"width":200,"height":121,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/5/5/5/55573c386666cc876d212e64995fd6a7a8bccc64_2_200x121.png"}],"tags":[],"tags_descriptions":{},"views":619,"like_count":12,"has_summary":false,"last_poster_username":"merefield","category_id":56,"op_like_count":9,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"A user encountered test failures due to missing color schemes in the test database, which was resolved by resetting the test database using migration commands after confirming the issue was with the local Discourse instance setup.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"原始发帖人","user_id":-1,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"频繁发帖人","user_id":21029,"primary_group_id":47,"flair_group_id":47},{"extras":"latest","description":"最新发帖人","user_id":27384,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"使用 Google 的“速度计”测量 Discourse 中的 JS 性能变化","fancy_title_localized":true,"locale":"en","id":281158,"title":"Using Google's 'tachometer' to measure JS performance changes in Discourse","slug":"using-googles-tachometer-to-measure-js-performance-changes-in-discourse","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/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_1024x146.png","created_at":"2023-10-05T13:57:29.422Z","last_posted_at":"2023-10-05T13:57:29.614Z","bumped":true,"bumped_at":"2026-05-29T10:12:43.709Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在 Discourse 核心/插件/主题中进行客户端开发时，重要的是要考虑性能影响。谷歌的“Tachometer”项目提供了一个统计上严谨的基准测试工具，我们可以用它来…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":[{"max_width":null,"max_height":null,"width":1234,"height":176,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8.png"},{"max_width":1024,"max_height":1024,"width":1024,"height":146,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_1024x146.png"},{"max_width":800,"max_height":800,"width":800,"height":114,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_800x114.png"},{"max_width":600,"max_height":600,"width":600,"height":85,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_600x85.png"},{"max_width":400,"max_height":400,"width":400,"height":57,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_400x57.png"},{"max_width":300,"max_height":300,"width":300,"height":42,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_300x42.png"},{"max_width":200,"max_height":200,"width":200,"height":28,"url":"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/c/8/c/c8c2c8280eb16bf88a2041b68bf45af1ef81b6d8_2_200x28.png"}],"tags":[{"id":819,"name":"代码","slug":"code"}],"tags_descriptions":{},"views":986,"like_count":17,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":17,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Google's 'Tachometer' project is used to measure JS performance changes in Discourse by statistically benchmarking changes through a 'round-robin' approach, reducing external factor impact and producing a comparison table after hundreds/thousands of iterations.","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":229310,"title":"Set up a multisite development environment","slug":"set-up-a-multisite-development-environment","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2022-06-07T16:01:37.089Z","last_posted_at":"2022-06-07T16:01:37.228Z","bumped":true,"bumped_at":"2026-05-29T10:12:41.903Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"在开发环境中以多站点模式运行 Discourse 是可行的。多站点服务器为每个服务站点使用不同的数据库和主机名。这对于开发某个功能或插件非常有用，该功能或插件应……","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":150,"name":"开发人员安装","slug":"dev-install"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤","开发人员安装":"为开发安装 Discourse 的说明和问题"},"views":2013,"like_count":12,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":12,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"Set up multisite development by adding a `config/multisite.yml` file, specifying a separate DB and hostname for each site, and using the `RAILS_DB` environment variable to run rake tasks against targeted sites.","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":"在非 Docker 开发环境中安装插件","fancy_title_localized":true,"locale":"en","id":205337,"title":"Install plugins in your non-Docker development environment","slug":"install-plugins-in-your-non-docker-development-environment","posts_count":1,"reply_count":2,"highest_post_number":1,"image_url":null,"created_at":"2021-10-06T09:47:24.341Z","last_posted_at":"2021-10-06T09:47:24.632Z","bumped":true,"bumped_at":"2026-05-29T10:12:40.846Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"（本指南仅涵盖非 Docker 开发安装。如需 Docker 开发安装，请参阅《使用 Docker 安装 Discourse 进行开发》）\n如果您已按照说明设置了本地 Discourse，则可以安装插件 loc…","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"thumbnails":null,"tags":[{"id":478,"name":"如何操作","slug":"how-to"},{"id":150,"name":"开发人员安装","slug":"dev-install"}],"tags_descriptions":{"如何操作":"操作指南包含解决特定问题的步骤","开发人员安装":"为开发安装 Discourse 的说明和问题"},"views":3406,"like_count":16,"has_summary":false,"last_poster_username":"Discourse","category_id":56,"op_like_count":16,"pinned_globally":false,"featured_link":null,"ai_topic_gist":"To install a plugin locally in a non-Docker development environment, download the plugin, run migrations if necessary, restart the server, and edit settings at localhost:4200/admin/plugins.","has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"原始发帖人、最新发帖人","user_id":115923,"primary_group_id":null,"flair_group_id":null}]}]}}