<script type="text/discourse-plugin" version="0.8">
// 这是插件出口,后面跟着组件的自定义名称
api.registerConnectorClass("below-site-header", "custom-homepage", {
// 设置我们的组件
setupComponent(args, component) {
// 接下来我们获取站点设置 'top_menu',
// 将值拆分为一个数组,
// 并添加一个前导斜杠
var topMenuRoutes =
component.siteSettings.top_menu.split('|')
.map(function(route) {return '/' + route});
// 'top_menu' 设置中列出的第一个页面是您的主页
// 让我们将其分配给一个变量
var homeRoute = topMenuRoutes[0];
// 每当页面更改时,此函数就会调用我们的代码
api.onPageChange((url) => {
// 检查我们是否在主页上
if (url === "/" || url === homeRoute ){
// 如果是主页,则将 'custom-homepage' 类添加到 HTML 标签
// 并将 'displayCustomHomepage' 设置为 true
document.querySelector("html").classList.add("custom-homepage");
component.set("displayCustomHomepage", true);
} else {
// 如果我们不在主页上,则删除该类
// 并将 `displayCustomHomepage` 设置为 false
document.querySelector("html").classList.remove("custom-homepage");
component.set("displayCustomHomepage", false);
}
});
}
});
</script>
^ 将此添加到您的 head 中,以便在主页上时将 .custom-homepage 类添加到您的 body 标签,然后 →
.custom-homepage #main-outlet-wrapper {
margin-top: -38px;
}