我刚为主题做了这个。我正在使用网站的标题和简短描述,但您也可以插入主题设置或本地化文本中的值。
在 components/header-logo-title.gjs 中添加一个 glimmer 组件
import Component from "@glimmer/component";
import { service } from "@ember/service";
export default class HeaderLogoTitle extends Component {
@service siteSettings;
<template>
{{#unless @outletArgs.minimized}}
<div class="header-logo-title">
<span
class="header-logo-title__title"
>{{this.siteSettings.title}}</span>
{{#if this.siteSettings.short_site_description}}
<span
class="header-logo-title__description"
>{{this.siteSettings.short_site_description}}</span>
{{/if}}
</div>
{{/unless}}
</template>
}
在 /api-initializers/my-theme.js 中将其附加到 outlet
import { apiInitializer } from "discourse/lib/api";
import HeaderLogoTitle from "../components/header-logo-title";
export default apiInitializer("1.26.0", (api) => {
api.renderAfterWrapperOutlet("home-logo", HeaderLogoTitle);
});
#unless 助手会检查 logo 的最小化状态,并且仅在完整 logo 可见时添加文本。如果您想始终显示它,则需要删除该条件。