(veraltet) Plugin-Outlet-Standort-Theme-Komponente

:mega: the ability to debug plugin outlets is now included in core. Check out this topic for more details

Original theme component info

Continuing the discussion from Plugin Outlet Locations:

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.

Repository: GitHub - communiteq/plugin-outlets-theme-component

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.

firefox_whjNGBiVSB

Install this theme component

Theme preview: Theme Creator

63 „Gefällt mir“

Didn’t @Mittineague write something like this before?

1 „Gefällt mir“

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.

7 „Gefällt mir“

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.

6 „Gefällt mir“

I use this theme component (and the theme preview) a lot since I develop a few themes but I never thanked @RGJ

I can’t say how much time this theme component helped me save, but it’s a lot. Great job, very very useful.

10 „Gefällt mir“

I’m getting a “Bad Gateway” error when trying to install the component. Also when trying to paste the generated content into head_tag.html manually.

Is there a length limit for that file? Because it works fine when I split the content into two separate files.

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.

2 „Gefällt mir“

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.

13 „Gefällt mir“

Das ist brillant. Danke!
PR zusammengeführt.

9 „Gefällt mir“

Brillante Idee! Ich liebe das Plugin-Button-Icon :slight_smile:

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 :sweat_smile: (was in meinem Fall nützlich war, aber wahrscheinlich im Allgemeinen nicht gewünscht ist?).

2 „Gefällt mir“

@merefield
Aah ja, da haben Sie Recht. :sweat_smile: Ich habe die Sichtbarkeit über eine Klasse zum Body umgeschaltet und das scheint das Problem behoben zu haben. PR hier:

6 „Gefällt mir“

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?
:folded_hands:

Das Skript dient nur der Plugin-Wartung, Sie brauchen es nicht.

Installieren Sie einfach die Theme-Komponente, fügen Sie sie Ihrem Haupt-Theme hinzu und drücken Sie auf das „Plug“-Symbol.

firefox_jDikn4jVrC

6 „Gefällt mir“

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:

1 „Gefällt mir“

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:

Übrigens, falls ich es noch nicht gesagt habe, diese Theme-Komponente ist absolut fantastisch.

2 „Gefällt mir“

Ja, das kann ich reproduzieren, danke für die Meldung!! :+1:

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.

3 „Gefällt mir“

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. :slight_smile:

(Ich kann aber auch einen PR machen)

4 „Gefällt mir“

Neue Version!!

  • Aktualisiert mit allen 3.2beta PluginOutlets
  • Konfigurierbare Farben
  • Klicken Sie auf eine Steckdose, um die tatsächlichen Parameter anzuzeigen :fire:

firefox_whjNGBiVSB

13 „Gefällt mir“

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]
1 „Gefällt mir“

Ah, danke, dass du mich darauf aufmerksam gemacht hast, @Firepup650 ! :+1:
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.

8 „Gefällt mir“