代码拉取完成,页面将自动刷新
# frozen_string_literal: true
# name: discourse-docs
# about: A plugin to make it easy to explore and find knowledge base documents in Discourse
# version: 0.1
# author: Justin DiRose
# url: https://github.com/discourse/discourse-docs
# transpile_js: true
enabled_site_setting :docs_enabled
register_asset "stylesheets/common/docs.scss"
register_asset "stylesheets/mobile/docs.scss"
register_svg_icon "sort-alpha-down"
register_svg_icon "sort-alpha-up"
register_svg_icon "sort-numeric-up"
register_svg_icon "sort-numeric-down"
register_svg_icon "far-circle"
load File.expand_path("lib/docs/engine.rb", __dir__)
load File.expand_path("lib/docs/query.rb", __dir__)
GlobalSetting.add_default :docs_path, "docs"
after_initialize do
require_dependency "search"
if SiteSetting.docs_enabled
if Search.respond_to? :advanced_filter
Search.advanced_filter(/in:(kb|docs)/) do |posts|
selected_categories = SiteSetting.docs_categories.split("|")
if selected_categories
categories = Category.where("id IN (?)", selected_categories).pluck(:id)
end
selected_tags = SiteSetting.docs_tags.split("|")
tags = Tag.where("name IN (?)", selected_tags).pluck(:id) if selected_tags
posts.where(
"category_id IN (?) OR topics.id IN (SELECT DISTINCT(tt.topic_id) FROM topic_tags tt WHERE tt.tag_id IN (?))",
categories,
tags,
)
end
end
end
add_to_class(:topic_query, :list_docs_topics) { default_results(@options) }
on(:robots_info) do |robots_info|
robots_info[:agents] ||= []
any_user_agent = robots_info[:agents].find { |info| info[:name] == "*" }
if !any_user_agent
any_user_agent = { name: "*" }
robots_info[:agents] << any_user_agent
end
any_user_agent[:disallow] ||= []
any_user_agent[:disallow] << "/#{GlobalSetting.docs_path}/"
end
add_to_serializer(:site, :docs_path) { GlobalSetting.docs_path }
end
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。