I needed an updated version with all the plugin outlets that have been added recently and then I realised that it would be really easy to create a theme component for this, so there is no need to install a plugin any more.
The repository includes a script (gen/generate.rb) that will auto-generate the outlets based on the Discourse source code.
To toggle the plugin outlets, click the “connector” icon in the top right.
When you click a specific plugin outlet, the display will change and you will be able to see all the arguments to the plugin outlet. Click it again to change it back.
Yes, see the link at the very top of this topic, that refers to the topic about that. @Mittineague wrote a plugin in 2015. I was using it and then I found out that it needed to be updated (it hadn’t been updated for over 2 years).
The next step was me realizing that this could be done much easier now using a theme component.
Yes, I had started to update the plugin to take into account the changes in the number and locations of plugin outlets a few weeks ago, but other priorities moved it down on my ever growing todo list.
If the same information can be provided as a theme component that works in the GUI and doesn’t require editing app.yml and running launcher I think it would be easier for most. I may be wrong, but I have a feeling most prefer GUI over CLI.
There is no length limit (at least not one that is close to the current length of the file).
The theme component does take a while to install, your server might be not fast enough and time out because of the large number of plugin outlets / script fragments that are being used.
Ich habe mich beim Entwickeln immer dabei ertappt, dieses Theme hinzuzufügen/zu entfernen, um Plugin-Outlets zu sehen. Um dies in meiner Entwicklungsumgebung zu erleichtern, habe ich eine Umschalt-Schaltfläche hinzugefügt, um die Sichtbarkeit von Plugin-Outlets umzuschalten. Vielleicht finden andere dies nützlich, also habe ich einen PR dafür erstellt.
Nur ein Problem: Es scheint, dass, wenn Sie zu verschiedenen Routen wechseln, der Schalter oben nicht mit den Inhaltsauslässen synchronisiert werden kann, sodass Sie niemals alles gleichzeitig ein- oder ausschalten können (was in meinem Fall nützlich war, aber wahrscheinlich im Allgemeinen nicht gewünscht ist?).
@merefield
Aah ja, da haben Sie Recht. Ich habe die Sichtbarkeit über eine Klasse zum Body umgeschaltet und das scheint das Problem behoben zu haben. PR hier:
Was übersehe ich? Ich habe die Komponente installiert. Aber muss ich das Skript trotzdem ausführen, damit es funktioniert? Befindet sich das Skript irgendwo auf meinem Server, wo ich es ausführen kann? Oder muss ich es kopieren und einfügen? Wenn ich common/head_tag.html ändere, muss ich es dann wieder zurücksetzen, um diese Komponente zu deaktivieren?
Es gibt einen kleinen Fehler, wenn er zusammen mit Custom Header Links (icons) verwendet wird.
Das Klicken auf ein benutzerdefiniertes Header-Symbol löst den Outlet-Button aus:
Es gibt einen kleinen Fehler in der neuen Benutzerkarte als Theme-Komponente. Ich bin mir nicht sicher, ob er auftritt, wenn sie im Kern ausgeliefert wird (falls sie das wird). Aber trotzdem… die Ausgänge in der experimentellen Benutzerkarte werden immer noch angezeigt, wenn die Ausgänge deaktiviert sind:
Ja, das kann ich reproduzieren, danke für die Meldung!!
Ich werde Anfang nächster Woche eine neue Version der Theme-Komponente veröffentlichen, sie wird neue Ausgänge für 3.1 und eine Korrektur für diesen Fehler enthalten.
Darf ich eine einzelne Einstellung vorschlagen? Wählen Sie die Hintergrundfarbe. Ich bin froh, dass das „brutale Rot“ in ein „knalliges Grün“ geändert wurde, aber persönlich mag ich gedämpfte Farben.
Dies scheint leicht fehlerhaft zu sein, es ist jetzt standardmäßig bei jedem Seiten-Refresh auf meinem PC aktiviert und wirft ein paar Deprecations:
[THEME 105 'Plugin Outlet Locations'] Deprecation notice: Das Widget header-icons wurde als veraltet markiert und decorateWidget ist keine unterstützte Überschreibung mehr. [veraltet seit Discourse v3.3.0.beta1-dev] [deprecation id: discourse.header-widget-overrides] [info: https://meta.discourse.org/t/296544]
[THEME 105 'Plugin Outlet Locations'] Deprecation notice: Das Widget header-icons wurde als veraltet markiert und attachWidgetAction ist keine unterstützte Überschreibung mehr. [veraltet seit Discourse v3.3.0.beta1-dev] [deprecation id: discourse.header-widget-overrides] [info: https://meta.discourse.org/t/296544]
Ah, danke, dass du mich darauf aufmerksam gemacht hast, @Firepup650 !
Ich habe nur meine Plugins gegen diese Veralterung geprüft und meine Theme-Komponenten vergessen.
Ich habe ein Update veröffentlicht, um diese Veralterung zu beheben.
Ich werde die Komponente auch bald aktualisieren, um einige neuere Plugin-Outlets einzuschließen, aber das dauert aufgrund der neuen Wrapper-Outlets noch etwas länger.
Ich habe die Komponente auch aktualisiert, um die neuesten Plugin-Outlets einzuschließen, außer den Wrapper-Outlets, da diese noch etwas Zeit / Refactoring benötigen.