Ich verwende derzeit das folgende Widget, um ein Banner/einen Link nach dem ersten Beitrag eines Threads anzuzeigen. Dies funktioniert bisher gut:
const { iconNode } = require("discourse-common/lib/icon-library");
api.decorateWidget("post:after", helper => {
const firstPost = helper.attrs.firstPost;
const h = helper.h;
if (firstPost) {
return h("div#support", [
h(
'a.icon', {
href:'link',
title: 'Support-Icon'
}, iconNode('heart')),
h(
'a.link', {
href: "link",
title: 'Support-Link'
}, 'some text',
),
]);
}
});
Ich möchte das Banner/den Link jedoch an einer anderen Stelle integrieren – nämlich vor dem Antwort-Button. Die Position habe ich unten rot markiert:
Kann mir jemand einen Tipp geben, wie ich das umsetzen kann?
Ich weiß, dass die Position/Aufgabe durch dieses hier definiert wird. Die Frage ist, wie ich dieses NAME:LOCATION finde:
api.decorateWidget("NAME:LOCATION", helper => {
Moin
12. Januar 2024 um 08:17
2
OrkoGrayskull:
nach dem ersten Beitrag
OrkoGrayskull:
Die von Ihnen auf dem Bild markierte Position befindet sich nach allen Beiträgen des Themas. Wenn es Antworten gibt, würde Ihr Banner darunter und nicht direkt nach dem ersten Beitrag angezeigt werden.
2 „Gefällt mir“
piffy
12. Januar 2024 um 08:17
3
Dort gibt es eine Plugin-Ausgabe namens topic-above-footer-buttons
Dies hilft Ihnen, sie zu sehen:
(deprecated) Plugin outlet locations theme component
Befolgen Sie dann diese Anleitung:
Discourse includes hundreds of Plugin Outlets which can be used to inject new content or replace existing contend in the Discourse UI. ‘Outlet arguments’ are made available so that content can be customized based on the context.
Choosing an outlet
To find the name of a plugin outlet, search Discourse core for “<PluginOutlet”, or use the plugin outlet locations theme component. (e.g. topic-above-posts).
Wrapper outlets
Some outlets in core look like <PluginOutlet @name="foo" />. These allow you…
4 „Gefällt mir“
Danke. Es hat funktioniert.
Codebeispiel für Head:
<script type='text/x-handlebars' data-template-name='/connectors/topic-footer-main-buttons-before-create/team-support'>
<div id="support">
<a href="link" title="Support-Icon" class="icon">
<svg class="fa d-icon d-icon-heart svg-icon svg-node" aria-hidden="true"><use xlink:href="#heart"></use></svg>
</a>
<a href="link" title="Support-Link" class="link">text</a>
</div>
</script>
1 „Gefällt mir“
Leider wird der Button/Banner nur angezeigt, wenn der Benutzer angemeldet ist. Wie kann ich sicherstellen, dass der Button/Banner auch für nicht registrierte Benutzer angezeigt wird?
Ich verwende diese Theme-Position: topic-footer-main-buttons-before-create
system
(system)
Geschlossen,
18. Februar 2024 um 06:56
6
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.