Gutenberg: Übersicht über die native Gutenberg-Erweiterbarkeit

Erstellt am 3. Nov. 2017  ·  42Kommentare  ·  Quelle: WordPress/gutenberg

Dies ist eine fortlaufende Referenzausgabe, die die verschiedenen Aspekte der nativen Gutenberg-Plugin-Unterstützung enthält.

Blöcke

Blöcke sind das primäre Schnittstellenelement, das Plugins nutzen und darauf aufbauen können. Die Block-API ist derzeit der am stärksten ausgearbeitete Aspekt des Projekts. Es umfasst im Allgemeinen:

  • Hinzufügen neuer Blöcke – und der gesamten API-Oberfläche ihrer Konfiguration.
  • Hinzufügen einer neuen Kategorie von Blöcken.
  • Deaktivieren bestimmter Blöcke.

Ein weiterer Aspekt der Erweiterbarkeit von Blöcken besteht darin, sich in vorhandene Blöcke einzuklinken, um Funktionen zu ändern oder hinzuzufügen:

  • Hinzufügen von Symbolleisten- oder Inspektorelementen zu vorhandenen Blöcken.
  • Deaktivieren Sie bestimmte Blockfunktionen.
  • Kommentar-API.
  • Erweiterung der Schreibfähigkeiten (dh von Editable erkennbare Register-Token).

Theme-Unterstützung

Einige allgemeine Aspekte des Editors können durch einen add_theme_support Aufruf konfiguriert werden, einschließlich der Konfiguration der Standardfarbpalette und der Aktivierung von Optionen für breite/volle Breite in Ausrichtungen.

Weitere Informationen : http://gutenberg-devdoc.surge.sh/reference/theme-support/

Es gibt mehrere Elemente, die wir über Designs steuern lassen möchten, einschließlich der Deaktivierung bestimmter Funktionen wie benutzerdefinierter Farbwerkzeuge oder bestimmter Inline-Stile oder der Deaktivierung bestimmter Blöcke auf der ganzen Linie.

Metadaten

Obwohl Gutenbergs Hauptaugenmerk auf dem Inhalt liegt, gibt es unzählige Verwendungen, die außerhalb davon fallen. Angesichts des Fehlens eines geeigneten Inhaltsblock-Editors haben sich mehrere Lösungen um Meta-Boxen herum entwickelt, um eine zweckorientiertere Benutzeroberfläche zum Bearbeiten von Bereichen einer Seite oder eines Beitrags bereitzustellen.

Blöcke sollten eine große Anzahl von Fällen direkt aufnehmen, in denen Meta-Boxen für Inhalte (ein Heldenbanner, eine Diashow auf der Homepage, Attribute von Entitäten wie Buchautor oder Preis usw.) als primäre Schnittstelle verwendet werden. Die vorhandene Unterstützung für Metafelder als Attribute ermöglicht die Erstellung von Blöcken, bei denen die Benutzeroberfläche direkt als Inhalt manipuliert wird, die Daten jedoch als Meta gespeichert werden, sodass der Block nicht darauf beschränkt ist, wo Daten zugewiesen werden.

Außerhalb des Inhalts

Blöcke decken den Bereich des Inhalts ab, aber es gibt mehrere Anwendungsfälle für Metadaten, die nicht in den Inhalt gehören (Yoast SEO-Tools, die Veröffentlichungsfunktion von Jetpack und vieles mehr). Diese Funktionalität, die von Natur aus vom Inhalt getrennt ist, hat andere dedizierte Stellen in der Benutzeroberfläche, um den Benutzern die Trennung klarer zu vermitteln und für den Zweck der vorliegenden Tools zu optimieren. nämlich:

  • Blockinspektor. (Metadaten zu einem Block)
  • Post-Sidebar-Panels.
  • Menüablauf veröffentlichen.
  • Kopfzeilen-Symbolleiste.
  • Ellipsen-Menü (der "Bereich der verfügbaren Apps").

Dies sind die aktuellen _Regionen_ der Gutenberg-Benutzeroberfläche, auf die Plugins abzielen könnten, wenn die Block-API stabil wird und wir uns auf sie konzentrieren können. [Screenshots und Konzepte einschließen]

Elemente wie der Zustandsbaum für die Blockliste oder die Post-Konfiguration würden durch Helfer und Selektoren für diese Kontexte (außerhalb des Blocks) verfügbar gemacht, damit Plugins ihn konsumieren und damit interagieren können.

Globale Blöcke

Mit der Arbeit rund um globale Blöcke wäre dies auch ein weiterer potenzieller Bereich für Plugins, um Gutenberg durch die Bereitstellung vorgefertigter globaler Blöcke zu erweitern.

Benutzerdefinierte Beitragstypen

Benutzerdefinierte Post-Typen können in ihrem Fokus stark variieren – einige sind lediglich taxonomisch, während andere die Benutzeroberfläche auf verschiedene Weise konfigurieren, bis zu dem Punkt, an dem ein "Inhalt"-Bereich keinen Sinn mehr macht (denken Sie an WooCommerce-Bestellungen). Gutenberg respektiert die editor Unterstützung, wie sie von einem CPT deklariert wurde, und wird nicht geladen, wenn dies nicht unterstützt wird. Es wird auch nicht geladen, wenn show_in_rest nicht eingestellt ist.

Darüber hinaus sollte ein CPT in der Lage sein, Standardblöcke, einen Standardsatz von Blöcken (verschachtelte Gruppe) oder Blöcke zu deklarieren, die in dem CPT nicht erlaubt sein sollten.


Modelle

Beachten Sie, dass dies Mockups sind. Änderungen und Rückmeldungen sind vorbehalten. Möglicherweise finden wir bei der Implementierung Details, die nicht funktionieren. Bitte öffnen Sie Mockups in einem neuen Tab, um die Details anzuzeigen.

Kommentare blockieren

Plugins könnten das Menü auf Blockebene erweitern, um kontextbezogene Aktionen hinzuzufügen, wie beispielsweise die Möglichkeit, Kommentare hinzuzufügen.

block comments 01

block comments 02 adding comments

Diese Schnittstelle könnte auch für Plugins wie Rechtschreibprüfungen oder Inhaltsanalysetools verwendet werden.

readability 01

readability 02 block comments

Zusammenarbeit

Das Auslassungsmenü ist ein guter Ort, um Werkzeuge und Aktionen auf Dokumentebene hinzuzufügen:

collaboration 01

collaboration 02 invite

collaboration 03 coediting

Plugin-Seitenleisten

Die Seitenleiste für die Post-Einstellungen kann deaktiviert werden, entweder damit sie als Modal auf dem Handy aufgerufen werden kann, oder Sie können sie schließen, wenn Sie den darin enthaltenen Inhalt nicht verwenden. Auf diese Weise können wir auch andere Seitenleisten umschalten, einschließlich der durch Plugins hinzugefügten. So könnte eine WolframAlpha-Sidebar aussehen:

plugin sidebars 01

plugin sidebars 02 wolframalpha

Bildschirmübernahme-Modal

Wenn ein Plugin sehr viel Platz benötigt, um beispielsweise Konfigurationstools anzuzeigen, können wir sie in einem Modal den gesamten Canvas übernehmen lassen

screen takeover 1

screen takeover 2

Vorab-Checkup

Einige Informationen sind am nützlichsten, wenn sie Ihnen im Zusammenhang mit dem Veröffentlichungsgesetz angezeigt werden. Dinge wie Planung und Sichtbarkeit von Beiträgen. Es ist auch ein Bereich, in dem Plugins nützliche Überprüfungshinweise in letzter Minute hinzufügen können, z.

publish checkup 01

publish checkup 02 popup version

[Feature] Extensibility

Hilfreichster Kommentar

Ich kann mir nichts besseres vorstellen, als sich auf iframes zu verlassen, um eine Benutzeroberfläche zusammenzustellen. Ich verstehe zwar, dass Metaboxen den Designprozess stark beeinträchtigen, aber ein Teil des Designs hat mit Einschränkungen zu tun. Sich vorwärts zu bewegen, als ob diese Einschränkungen nicht existierten, oder den Übergangsplan bis zum Ende zu verschieben, wird einer bereits besorgten und skeptischen Gemeinschaft weitere Sorgen bereiten.

Wenn der langfristige Plan für Gutenberg Plugin-Territorium wäre, dann würde ich sagen, experimentiere ohne Grenzen. Aber wenn es nicht dazu bestimmt ist, ein Plugin zu sein, für das die Leute sich entscheiden müssen, anstatt sich abzumelden, dann muss es realistisch mit dem Kern und dem ganzen Gepäck umgehen, das es mit sich bringt.

Alle 42 Kommentare

Gutenberg respektiert die von einem CPT deklarierte Editorunterstützung und wird nicht geladen, wenn dies nicht unterstützt wird.

Wenn dies bedeutet, dass Gutenberg überhaupt nicht geladen wird und stattdessen der Classic-Editor verwendet wird, führt uns das auf einen Weg zu einem zersplitterten WP-Administrator, der zwischen Gutenberg- und Classic-Umgebungen aufgeteilt ist. Dies wäre in vielerlei Hinsicht schlecht für WordPress.

  • Neue Benutzer müssten die wichtigsten und subtilen Arten lernen, in denen sich die beiden Arten von Schnittstellen unterscheiden. So einfache Aktionen wie das Veröffentlichen eines Beitrags oder das Wechseln zur Textansicht funktionieren in Gutenberg- und Classic-Editoren unterschiedlich.

  • Bestehende Entwickler wären gezwungen, die Funktionalität ihrer Themes und Plugins in beiden Umgebungen aufrechtzuerhalten. Wir sprechen hier nicht von einer Übergangszeit; wir reden auf unbestimmte Zeit. Plugins, die jeden Beitragstyp erweitern sollen, wären am stärksten betroffen. Wenn diese Entwickler ihre Meta-Boxen in Blöcke umwandeln, müssen sie die alten Meta-Boxen immer noch beibehalten, falls jemand ihr Plugin in einem Nicht-Gutenberg-Posttyp verwendet.

  • Neue Plugin-Entwickler, die in die WordPress-Entwicklung einsteigen, müssten lernen, wie man Plugins auf zwei verschiedene Arten erstellt. Angenommen, sie umfassen Gutenberg-Blöcke, ihre Plugin-Funktionalität ist möglicherweise nicht einmal in Beitragstypen mit dem Classic-Editor verfügbar.

So sehr ich glaube, dass wir Metaboxen zum Laufen bringen müssen, Gutenberg einfach abzuschalten ist auf lange Sicht nicht die beste Lösung.

Wenn dies bedeutet, dass Gutenberg überhaupt nicht geladen wird und stattdessen der Classic-Editor verwendet wird, führt uns das auf einen Weg zu einem zersplitterten WP-Administrator, der zwischen Gutenberg- und Classic-Umgebungen aufgeteilt ist.

In den Fällen, in denen ein CPT den Editor überhaupt nicht aktivieren möchte, scheint dies der beste Weg zu sein. Es ist einfach eine andere Administratoransicht, die für eine andere Erfahrung optimiert ist. (Die "Bestellungen"-Ansicht von Woo zum Beispiel.) Es würde niemandem helfen, zu versuchen, diese im Gutenberg-Kontext zu rendern.

Es ähnelt dem Aufkommen des Customizers – es war ein neues Schnittstellenparadigma, das einige der gleichen Dinge in einem anderen Kontext tat. Wir werden immer eine „Verwaltungs“-Schnittstelle und eine „Bearbeitungs“-Schnittstelle brauchen. Auf diese Weise kommen wir teilweise voran, indem wir die unterschiedlichen Zwecke von Schnittstellen klären.

Aber wegen Gutenbergs Scope Creep geht es nicht nur darum, den Editortyp zu aktivieren oder zu deaktivieren. Da Gutenberg nun die gesamte Bearbeitungsoberfläche bestimmt, gibt es eine ganze Liste von Nebenwirkungen, die mit dem oben aufgeführten Editor-Typ verbunden sind.

Wir werden immer eine „Verwaltungs“-Schnittstelle und eine „Bearbeitungs“-Schnittstelle brauchen.

Genau diese Rollen erfüllen heute der Editor und die Metaboxen. Sie sind keine isolierten Erfahrungen. Sie arbeiten zusammen.

dann sollte vielleicht das Scope Creep angegangen werden, und Gutenberg sollte auf den von wp_editor() bevölkerten Bereich beschränkt werden. Es würde sicherlich viele Kompatibilitätsprobleme lösen.

Zielfernrohrkriechen

Die Bekämpfung des Scope Creeps ist meine Vorliebe und etwas, das viele von uns in den letzten Monaten gefordert haben. Dies würde es uns ermöglichen, den Editor zu verbessern, ohne die Admin-Erfahrung aufzuteilen.

Aktivieren von Gutenberg pro Beitragstyp

In Bezug auf die Möglichkeit, Gutenberg pro Beitragstyp zu deaktivieren, möchte ich betonen, dass die Vermeidung des Problems nicht dasselbe ist wie das Erreichen einer Lösung. Das Abschalten von Gutenberg pro Post-Typ kann die Inkompatibilität der Meta-Box für einige Plugins vermeiden, aber es schadet der WordPress-Landschaft auf lange Sicht.

Wenn Sie nicht sehen können, warum, stellen Sie sich vor, in zwei Jahren, nachdem Gutenberg fusioniert wurde, ein neuer Plugin-Entwickler zu sein, der in die Branche einsteigt.

  • Schreiben Sie als Entwickler Ihre Plugin-Benutzeroberfläche als Block oder als Meta-Box? Wenn Sie alle Beitragstypen unterstützen möchten, müssen Sie beides schreiben.
  • Ist sich ein Benutzer bei der Suche nach Plugins bewusst, dass die von Ihnen auf Ihrer Plugin-Seite versprochene Funktionalität nur in Gutenberg-aktivierten Beitragstypen funktioniert? Werden sie enttäuscht sein, wenn sie herausfinden, dass sie ihn nicht zusammen mit dem Classic-Editor verwenden können?
  • Wenn derselbe Benutzer Sie um Unterstützung kontaktiert, wissen Sie, ob er fragt, wie Ihr Plugin im Classic-Editor oder im Gutenberg-Editor funktioniert. Kennt dieser Kunde überhaupt den Unterschied?
  • Wenn Sie Monate nach dem Start Funktionen hinzufügen möchten, sind Sie dann bereit, Ihre Entwicklungszeit zu vervielfachen, um diese Funktionalität sowohl in die PHP-Metabox als auch in den JS-Block zu integrieren?

Dies sind nur einige der Fragen, die die Landschaft durcheinander bringen, wenn wir mit zwei Editoren und keinem Weg zur Singularität in der Benutzeroberfläche vorankommen.

show_in_rest

Die Tatsache, dass Posts Gutenberg nicht verwenden können, wenn show_in_rest nicht festgelegt ist, ist nur ein weiteres Beispiel für eine nicht verwandte Funktionalität, die sich auf die Bearbeitungserfahrung auswirkt. Es gibt keinen Grund, warum meine Präferenz für die Sichtbarkeit öffentlicher Beiträge in der REST-API sich darauf auswirken sollte, welche Schnittstelle ich beim Bearbeiten verwende. Ich verstehe die technischen Gründe, aber die Logik ist nicht vorhanden, und ich vermute, dass viele Entwickler sich nicht einmal bewusst sind, dass dies zu diesem Zeitpunkt eine Einschränkung ist.

Wie Gutenberg jemals den Geltungsbereich der wp_editor()-Parameter verlassen hat, verblüfft mich immer noch. Wenn der Gutenberg-"Editor" auf wp_editor() beschränkt wäre, dann wird die "Aktivierung als Option" pro Beitragstyp Realität und in Zukunft viel überschaubarer und erweiterbarer. Ich habe immer noch keine rationale Erklärung dafür gesehen, warum Gutenberg-Scope Creep nicht zurückskaliert und einfach in wp_editor() enthalten sein kann.

Es macht keinen Sinn, dass Gutenberg für benutzerdefinierte Beitragstypen aktiviert wird, die den Editor nicht verwenden und die nicht direkt im Frontend angezeigt werden.

Ich habe verschiedene Websites gesehen, auf denen CPTs nicht nur für echte Beitragstypen verwendet werden, sondern auch als Methode zum Erstellen von Admin-Schnittstellen für verschiedene Einstellungen und Elemente.

Zum Beispiel hat eine Autoren-Site, an der ich gearbeitet habe, CPTs für "Bücher" und "Shop-Links". Gutenberg als Redakteur für die Seiten mit den Büchern zu haben, ist absolut sinnvoll. Aber "Shop-Links" haben keine eigenen Beiträge oder Seiten, sondern werden verwendet, um die Logik für Links zu Online-Buchhandlungen auf jeder "Buch"-Seite bereitzustellen. Die Seitenvorlage Bücher zeigt Shop-Links zu Produktseiten an, die der Region (z. B. Großbritannien, USA) und dem Format (z. B. E-Book, Print) entsprechen, und fügt die in einem Post-Metafeld gespeicherte ISBN in die URL-Struktur jedes Online-Shops ein – siehe Screenshots.
screen shot 2017-11-04 at 22 08 07
screen shot 2017-11-04 at 22 08 43

CPTs sind vielleicht nicht die beste Möglichkeit, diese Art von Daten und Einstellungen zu verwalten, aber es gibt viele Websites, die verschiedene Funktionen mit Editor-losen CPTs und benutzerdefinierten Metafeldern zusammengefügt haben - ich könnte andere Beispiele für diese Art der Verwendung geben. Es wäre verwirrend und kontraproduktiv, den Gutenberg-Editor auf CPTs aufzuzwingen, die den Editor überhaupt nicht verwenden.

Es macht keinen Sinn, dass Gutenberg für benutzerdefinierte Beitragstypen aktiviert wird, die den Editor nicht verwenden und die nicht direkt im Frontend angezeigt werden.

Nein, es macht keinen Sinn, aber solange Gutenberg ein Vollbild-Ersatz ist, hat die Entscheidung, Gutenberg aufzunehmen oder auszuschließen, größere Auswirkungen, die darüber hinausgehen, ob Sie einen Editor in Ihrem Beitragstyp wünschen oder nicht.

Stellen Sie sich zum Beispiel vor, Sie sind ein Plugin-Entwickler und möchten, dass Ihre Metabox "Shop-Link-Einstellungen" in einem Beitragstyp verfügbar ist, der Gutenberg verwendet, und einem zweiten Beitragstyp, der dies nicht tut. Wenn Sie ein Plugin an Tausende von Benutzern verteilen, die erwarten, dass es mit jedem Beitragstyp funktioniert, haben Sie nicht den Luxus, sich zu entscheiden. Dann kommen die in https://github.com/WordPress/gutenberg/issues/3330#issuecomment -341867663 genannten Fragen ins Spiel.

Es ist erwähnenswert, dass Metaboxen, die innerhalb ihres eigenen Posttyps isoliert sind, am wenigsten von Gutenberg betroffen sind.

Ja, ich kann sehen, dass Plugins, die sowohl Gutenberg- als auch Nicht-Gutenberg-Schnittstellen unterstützen müssen, ein großes anhaltendes Problem darstellen.

Ich denke, die Frage ist dann, wie Gutenberg mit CPTs umgehen sollte, die den Editor nicht unterstützen - wie funktioniert Gutenberg in Kontexten, in denen es keinen Sinn macht, eine Seite aus Blöcken zu erstellen, wo es nur Meta-gesteuert ist?

... wie Gutenberg mit CPTs umgehen sollte, die den Editor nicht unterstützen - wie funktioniert Gutenberg in Kontexten, in denen es keinen Sinn macht, eine Seite aus Blöcken aufzubauen, wo es nur Meta-gesteuert ist?

Wenn Gutenberg zurückfahren und nur den Editor ersetzen sollte, wie im Yoast-Konzept, das ich in https://github.com/WordPress/gutenberg/issues/3304#issuecomment -341474018 erwähnt habe, dann wird das Aktivieren oder Deaktivieren von Gutenberg ziemlich einfach.

  • Wenn editor aktiviert ist, ist der Blockeditor vorhanden und Metaboxen können je nach verwendeten Hooks darüber oder darunter erscheinen.
  • Wenn editor deaktiviert ist, fehlt der Blockeditor und die Metaboxen gleiten nach oben, um die primäre Schnittstelle für den Beitragstyp zu werden.

So funktioniert es heute im Wesentlichen, und durch Beibehaltung dieses Verhaltens könnten Plugins Meta-Boxen schrittweise in Blöcke umwandeln, wenn dies sinnvoll ist. Es würde auch viele der oben aufgeführten verwirrenden Fragen vermeiden, die mit einer geteilten Admin-Erfahrung verbunden sind.

Ich finde "Scope Creep" angesichts des Kickoff-Posts und des Segens, den das Projekt erhalten hat , ein seltsamer Begriff. Es ist abwertend für die Arbeit, die bereits seit dem 11. Januar in der Öffentlichkeit geleistet wurde, als wir begannen, zu diskutieren und zu recherchieren, wie die Bearbeitungserfahrung insgesamt verbessert werden kann . Uns ist nichts eingefallen, das war immer der Plan, und deshalb gibt es keine feste Bezeichnung für den Fokus.

Sei es wie es sei, ich mag ein wenig über die Design - Der Status Quo ist der einfache Ausweg, aber nicht immer der richtige.

Das Hinzufügen von Blöcken zum bestehenden Editor, ohne den Ablauf zu überdenken, hätte die Komplexität erhöht, wo bereits Komplexität vorhanden war .

Angesichts des Mandats – Post-Authoring zu überdenken, um Blöcke zum Ersetzen von Shortcodes, benutzerdefiniertem HTML, Widgets und mehr einzubeziehen – würde ich meine Verantwortung als Designer vergeuden, indem ich nicht den gesamten Schreib-, Bearbeitungs- und Veröffentlichungsfluss ganzheitlich betrachte.

Ich bin nicht überzeugt, dass WordPress in fünf Jahren relevant sein wird , es sei denn, das Projekt als Ganzes unternimmt mutige Schritte, um die Zukunft zu meistern. Ein JavaScript-Kern wird seit Jahren auf Keynotes von State of the Word beworben. In Anbetracht dessen und der Möglichkeit, das Authoring von Rich-Post-Inhalten radikal zu vereinfachen, ist es nicht nur eine Chance, die gesamte Bearbeitungserfahrung anstelle eines winzigen Fensters zu betrachten, sondern es wäre trotz der damit verbundenen Herausforderungen wohl fahrlässig, anders zu designen damit.

Es ist unmöglich, einen guten Editor zu entwerfen, ohne den gesamten Bildschirm zu betrachten . Dies ist unbequem, erschwert das Projekt und macht es angesichts des Erbes von WordPress noch schwieriger. Es war nicht einfach, und wir haben noch einen Weg vor uns, insbesondere wie Gutenberg nativ erweitert werden kann. Aber einen halben Schritt zu machen, Gutenberg so aufzubauen, dass es nur den Inhaltstextbereich ersetzt, wäre ein großer Bärendienst für WordPress und ein schlechtes Design obendrein.

Das Laden einer Komponente von Gutenberg , nur des Editor-Canvas, in den aktuellen Bearbeitungsbildschirm ist möglich. Es wird eine stark kompromittierte Erfahrung und eine Frankenstein-Benutzeroberfläche sein, aber es kann ein Weg sein, den es zu erkunden gilt, um einen guten Migrationspfad von 4.9 auf 5.0 sicherzustellen. Es sollte jedoch klargestellt werden, dass dies weder die Aktienerfahrung noch die optimale ist.

Ich denke, die Frage ist dann, wie Gutenberg mit CPTs umgehen sollte, die den Editor nicht unterstützen - wie funktioniert Gutenberg in Kontexten, in denen es keinen Sinn macht, eine Seite aus Blöcken zu erstellen, wo es nur Meta-gesteuert ist?

@CalebWoodbridge so funktioniert es bereits. Siehe: https://github.com/WordPress/gutenberg/blob/master/lib/register.php#L290

Ich möchte darauf hinweisen, dass die Verwendung des Begriffs „Scope Creep“ nicht korrekt ist. Es ist ein Begriff, der sicherlich nicht auf ein Projekt zutrifft, das das tun soll, was Gutenberg ist.

Verzeihen Sie, dass ich dazu einen Seitenpunkt nehme, aber ich denke, es ist erwähnenswert. So wie Entwicklern Respekt entgegengebracht wird, wenn sie etwas Technisches sagen, denken Sie auch an die Designer. Die Designer, die an diesem Projekt arbeiten, haben viel Erfahrung und Können, ich respektiere die Arbeit zutiefst und es ist eine Freude, der Designleiter eines Projekts mit so großartigen Designern zu sein.

Ich fühle mich geehrt, die Gelegenheit zu haben, mit den Designern von Gutenberg zusammenzuarbeiten. Es ist ein tägliches Vergnügen und etwas, das wir in WordPress nicht immer bekommen. Als Designer im Kern ist man die meiste Zeit ein Einzelgänger, es war unglaublich, zusammenzuarbeiten.

Die Erfahrung ist der Schlüssel, wenn wir den Designansatz betrachten. @jasmussen in der ursprünglichen Vision bildete zusammen mit @matias den Grundstein für ein umfassendes Erlebnis. Als zweiter Design-Lead war es etwas, das ich schätze und bewahren möchte.

Eines der großen Probleme mit WordPress in der Vergangenheit aus Designperspektive war eine Spirale kleiner Iterationen über kleine Iterationen. Während es für die ersten paar funktioniert, summiert es sich im Laufe der Zeit zu einer Erfahrung, die mit Patches von Verbesserungen zusammengehalten wird. Es gibt viele WordPress, die darunter leiden. Editor ist das eine, Medien das andere und es gibt noch viel mehr, auf das man verweisen kann.

Gutenberg hat uns Raum gegeben, die Patches zu entfernen, zu schauen, was wir haben und wieder aufzubauen. Es hat uns als Ergebnis den Beginn einer starken visuellen Sprache gegeben, um in die Anpassung und darüber hinaus vorzudringen. Tatsächlich eine visuelle Sprache zu haben, die WordPress in den nächsten 10 Jahren voranbringt. Ja, so weit müssen wir denken.

An dieser Stelle möchte ich auch vor Frankendesigns warnen. Jeder einzelne Designer auf der Welt hat irgendwann einmal jemanden vorgeschlagen, "einfach x hier oder y dort zu setzen". Dies erlaubt dem Designer nicht, zu entwerfen. Als Projekt befinden wir uns in einer Abwärtsspirale, wenn wir Designer nicht designen lassen. Dies ist die Art von Prozess, der das Feuer in Designern tötet, wenn er unverblümt ist. Lass uns das Feuer am Laufen halten.

Dies ist eine persönliche Anmerkung, die über Gutenberg hinausgeht. Ich bin leidenschaftlich daran interessiert, einen Raum zu schaffen, in dem Designer gedeihen und wachsen können – nicht immer als Projekt. Zeigen wir mit Gutenberg, dass wir das tun. Leidenschaft ist groß, aber respektiere die Designvision genauso wie wir in WordPress die technische Vision. Hören wir den Designern genauso zu wie denen, die über das neueste JS-Framework sprechen.

Bis zu dem Punkt von @jasmussen ,

Ich möchte es klarstellen, ich sage nicht, dass Gutenberg als Design "fertig" oder perfekt ist. Wir müssen iterieren und wir müssen testen. Was wir nicht brauchen, ist ein Rückschritt, weg von der etablierten starken Designsprache. Wir brauchen kein Frankendesign. Was wir brauchen, ist zu testen, Feedback zu erhalten und Designern die Möglichkeit zu geben, zu iterieren.

Eines der großen Probleme mit WordPress in der Vergangenheit aus Designperspektive war eine Spirale kleiner Iterationen über kleine Iterationen. Während es für die ersten paar funktioniert, summiert es sich im Laufe der Zeit zu einer Erfahrung, die mit Patches von Verbesserungen zusammengehalten wird.

Der Versuch, Aussagen wie diese mit öffentlichen Aussagen wie dieser http://matiasventura.com/post/gutenberg-or-the-ship-of-theseus/ in Einklang zu bringen, macht es den Benutzern sehr schwer, das Gefühl zu haben, ehrliche Kommunikation über die Arbeit zu erhalten Fertig sein. WordPress wird von Millionen von Menschen auf millionenfache Weise verwendet, und es wurde überdeutlich gemacht, dass in Bezug auf technische Aspekte wie die Metabox-Unterstützung oder das Post-Storage-Format ein inkrementeller Ansatz mit so wenig Bruch wie möglich erforderlich ist. Diese Entscheidung hat mehrere Teile der Implementierung erschwert und Entscheidungen erzwungen, die nicht optimal sind, aber in vielerlei Hinsicht besser unterstützt werden.

Es ist nicht sinnvoll, die Entwicklung an einem Standard und das Design an einem anderen festzuhalten. Manchmal muss das „mutige Design“ für eine vernünftige Produktion verkleinert werden. Das ist im Automobilbau bekannt und deshalb lässt sich Gutenberg leicht mit einem Concept Car vergleichen.

Sicher, Sie möchten ein ganzheitliches Design, das Javascript für den gesamten Administrator verwendet, aber das kann nicht die Version v5 sein, ohne die Erfahrung für Millionen von Benutzern zu beeinträchtigen. Wenn Sie sich stattdessen auf den Editor konzentrieren, anstatt auf die Bearbeitungsseite, können Sie ein viel besseres Erlebnis bieten (das viele Ihrer sekundären Ziele mit umsichtigem Einsatz von CSS erreichen kann), ohne dass es zu Bruch geht.

Durch die Bereitstellung einer gut dokumentierten Fields-API können Sie dann Plugins und Themes im nächsten Jahr in die Gutenberg-Blöcke-Mentalität umwandeln, indem Sie es einfacher und logischer machen, dieselbe Schnittstelle zu erstellen. Sehr schnell werden Metaboxen zur alten Vorgehensweise und alle hochwertigen Plugins werden zu Blöcken ... wieder einmal muss dies organisch geschehen. Es ist unhaltbar, die Hände der Leute zu zwingen, indem man Funktionen veraltet oder eine geteilte Schnittstelle erstellt, bei der Plugin-Autoren sowohl für Gutenberg als auch für Metaboxen programmieren müssen.

Es ist gut, dass Sie die Überholung von Medien als einen Bereich erwähnen, der überarbeitet werden muss. Es war der erste Abschnitt von WordPress, der ein JS-Framework vollständig umfasste, und es war weitgehend ein großer Rückschritt für Entwickler. Die fehlende Anpassungsfähigkeit der Mediathek ist kein Zeichen dafür, dass sie perfekt ist, sondern dass es an durchdachtem Design mangelt, das zukünftige und aktuelle Anwendungsfälle berücksichtigt. Ich habe viele Male versucht, die Medienschnittstelle zu ändern, nur um festzustellen, dass irgendwann jemand entschieden hat, dass wichtige Komponenten in die Backbone-Vorlagen hartcodiert werden sollten. Ich bin gestern buchstäblich in einen dieser Fälle gestoßen! (wie Sie im siebten Absatz hier sehen können: https://gschoppe.com/wordpress/disable-attachment-pages/)

Wenn Sie Gutenberg zurück zum Editor skalieren, anstatt zur Bearbeitungsseite, erhalten Sie einen Weg nach vorne, der nicht alles zerstört. Sobald Gutenberg als Basis für benutzerdefinierte Post-Schnittstellen gut etabliert ist, kann die reine JavaScript-Vision den Rest der Bearbeitungsseite übernehmen. Diese Art von Iteration ist bei großen Softwarepaketen absolut entscheidend, es sei denn (wie Matt inakzeptabel behauptet hat), Sie bieten LTS-Releases an und machen jede Hauptversion zu einer kompletten Breaking Change.

Es gibt zwei Gruben, in die Sie zu fallen riskieren, und Sie haben eine identifiziert. Ja, ohne den Übergang zu einer einheitlichen Benutzeroberfläche mit modernen Technologien wird WordPress wahrscheinlich in den nächsten halben zehn Jahren sterben. Aber auch, wenn WordPress während dieses Übergangs keine angemessene Unterstützung für seine riesige Community von Entwicklern und professionellen Benutzern bietet, wird es viel früher sterben.

Machen Sie einen Beat, skalieren Sie zurück und liefern Sie etwas, das den Benutzern die Toolbox öffnet, ohne den bestehenden Workflow zu unterbrechen. Dann können Sie Version für Version vorwärts skalieren. Sie haben ein schönes Konzeptauto, aber was wir brauchen, ist ein Serienauto, das für alle Grenzfälle des realen Fahrens funktioniert. Aber wenn Sie das Konzept bereitstellen, können Sie diese Idee auf einen begrenzteren Umfang anwenden, und in einem Jahr werden diese Prinzipien allgegenwärtig sein

@gschoppe , danke, dass du dir die Zeit genommen hast zu antworten.

Zuerst etwas Klarheit. Ich bin nicht damit einverstanden, dass mein Kommentar dem Beitrag von Matias widerspricht. Ich stehe voll und ganz zu seinem Posten, es ist auch meine Vision und wir als die Leiter dieses Projekts sind uns in der Richtung einig. Ihre persönliche Meinung ist Ihre, also fahren wir von diesem Punkt aus fort.

Es ist nicht sinnvoll, die Entwicklung an einem Standard und das Design an einem anderen festzuhalten.

Ich stimme zu und mein Kommentar zielt nicht darauf ab, dass Design mehr gehört wird oder andere Standards hat, es geht darum, alle Stimmen zu hören und denselben Standard für alle anzuwenden.

Es ist gut, dass Sie die Überholung von Medien als einen Bereich erwähnen, der überarbeitet werden muss.

Ich würde gerne ein Medium sehen, das sich von Grund auf auf Designer und Entwickler konzentriert, das war nicht der Fall.

Aber auch, wenn WordPress während dieses Übergangs keine angemessene Unterstützung für seine riesige Community von Entwicklern und professionellen Benutzern bietet, wird es viel früher sterben.

Es ist interessant, dass Sie dies sagen, da niemand irgendwelche Funktionen wegnimmt. Das hat kein Designvorschlag von Gutenberg getan. Auf die eine oder andere Weise können alle vorhandenen Funktionen ausgeführt werden, auch wenn dies mit dem klassischen Editor-Plugin erfolgt.

Ich kann mir nichts besseres vorstellen, als sich auf iframes zu verlassen, um eine Benutzeroberfläche zusammenzustellen. Ich verstehe zwar, dass Metaboxen den Designprozess stark beeinträchtigen, aber ein Teil des Designs hat mit Einschränkungen zu tun. Sich vorwärts zu bewegen, als ob diese Einschränkungen nicht existierten, oder den Übergangsplan bis zum Ende zu verschieben, wird einer bereits besorgten und skeptischen Gemeinschaft weitere Sorgen bereiten.

Wenn der langfristige Plan für Gutenberg Plugin-Territorium wäre, dann würde ich sagen, experimentiere ohne Grenzen. Aber wenn es nicht dazu bestimmt ist, ein Plugin zu sein, für das die Leute sich entscheiden müssen, anstatt sich abzumelden, dann muss es realistisch mit dem Kern und dem ganzen Gepäck umgehen, das es mit sich bringt.

Mein Kommentar zielt nicht darauf ab, dass Design mehr gehört wird

Jeder einzelne Designer auf der Welt hat irgendwann einmal jemanden vorgeschlagen, "einfach x hier oder y dort zu setzen". Dies erlaubt dem Designer nicht, zu entwerfen. Als Projekt befinden wir uns in einer Abwärtsspirale, wenn wir Designer nicht designen lassen. Dies ist die Art von Prozess, der das Feuer in Designern tötet, wenn er unverblümt ist. Lass uns das Feuer am Laufen halten.

In jedem Unternehmen der Welt werden Designs an die Zwänge der Implementierung angepasst. Wenn die Abwärtskompatibilität für Metaboxen eine Einschränkung darstellt, muss das Design dies akzeptieren und innerhalb der Einschränkungen arbeiten.

Um es direkt zu sagen ,

Das hat kein Designvorschlag von Gutenberg getan. Auf die eine oder andere Weise können alle vorhandenen Funktionen ausgeführt werden, auch wenn dies mit dem klassischen Editor-Plugin erfolgt.

Derzeit legt Gutenberg alle Metafelder in einen iframe. Das unterbricht die Funktionalität auf einer sehr tiefen Ebene. Wir befinden uns im Zeitalter der Barrierefreiheit, und wenn wir die primäre erwartete Methode zum Erstellen benutzerdefinierter Benutzererfahrungen und das Einsperren in einen iframe verwenden, wird die Barrierefreiheit von diesen Tools grundsätzlich entfernt. Es verdreifacht auch die Anzahl der Anforderungen, die zum Laden des Editors erforderlich sind, und bietet Benutzern eine schreckliche Benutzeroberfläche, die modale Vollbilderfahrungen in einem winzigen Bereich einsperrt.

Derzeit wird in diesem Thread diskutiert, ob Gutenberg sich für benutzerdefinierte Beitragstypen anmelden oder abmelden sollte. Wenn Sie sich anmelden, werden zuvor konsistente UI-Entscheidungen von Entwicklern, die alle Beitragstypen unterstützen möchten, zwischen der Gutenberg-Erfahrung und der klassischen Erfahrung aufgeteilt, was die doppelte Entwicklungsarbeit erfordert, um eine angemessene Benutzererfahrung für beide bereitzustellen, und keine Konsistenz gewährleistet der Benutzererfahrung.

Derzeit bietet die Funktion wp_editor() (die derzeit bewährte Methode zum Implementieren einer vollständigen Kopie der Bearbeitungserfahrung auf nicht bearbeiteten Seiten) keine Gutenberg-Schnittstelle, was bedeutet, dass ich dies nicht tun kann Erstellen Sie benutzerdefinierte Bearbeitungserlebnisse auf Nicht-Post-Seiten ... was ist mein Weg dorthin, abgesehen davon, dass Sie Benutzern eine geteilte UX bieten?

Das Plugin zum Entfernen von Gutenberg kann zwar einige Probleme lösen, Sie können es jedoch nicht als Lösung für Plugin-Entwickler versenden. Sie haben nicht die Freiheit zu sagen: "Wenn Sie eine konsistente und zugängliche Benutzeroberfläche für alle Beitragstypen wünschen, müssen Sie den neuen Editor deaktivieren".

Das Entfernen von Funktionen ist für den Standardworkflow NICHT abwärtskompatibel. Das Entfernen von Funktionen ist der letzte Ausweg für die 1 % der Nutzer, die nicht als erstklassige Erfahrungen untergebracht werden können. In diesem Fall handelt es sich bei keinem der von mir angegebenen Beispiele um 1 %-Probleme.

Um ein bisschen Öl in die Flammen hinzuzufügen: Erst letzte Woche hatte ich ein massives Problem mit der Verwendung von iFrames, dh. Sie können auf Desktop-Systemen gut spielen, aber in 90% der getesteten Fälle versagen sie massiv auf Mobile / Responsive. Nachdem ich zahlreiche Message-Board-Threads, Artikel im Netz und Fragen zu Stack Overflow durchwühlt hatte, entschied ich mich, den iframe-Ansatz vollständig aufzugeben, weil die Reaktionsfähigkeit mit em.. ugh so schrecklich kompliziert wird. Einige Konvertierungsaufgaben waren ziemlich einfach zu bewerkstelligen, wie zum Beispiel "verwende eine Weiterleitung auf die eigentliche Subdomain, in der sich das Projekt befindet", anstatt sich auf einen iframe zu verlassen, um eine schöne Dekoration anzubringen, die nur die vermeintliche Hauptdomain zeigt, aber andere waren viel erbärmlicher.

Nichtsdestotrotz war die Wende im Vergleich zu dem enormen Arbeitsaufwand, den ich leisten müsste, um RWD richtig und vor allem zuverlässig UND wartbar zu machen, um mit iframes zu arbeiten, viel weniger Aufwand und somit der bessere Ausweg.

Zusammenfassend lässt sich sagen, dass iframes, obwohl sie auf den ersten Blick wie ein einfacher Ausweg aussehen, eine SEHR SCHLECHTE Designwahl sind, nicht nur wegen (vieler) Zugänglichkeitsprobleme.

Nur meine 0,02 Cent,
cu, w0lf.

Danke @mtias für das Zeigen dieses Problems.
Unten poste ich meine Gedanken darüber, wie Gutenberg Türen für die WordPress-Plugin-Entwickler öffnen kann.

gh-gtnbrg-1

Anpassbare CSS-Klasse für jeden vorhandenen Block

Erforderlich: CSS-Klasse für jeden Block-Wrapper und voller Zugriff, um ihn anzupassen. Es wäre großartig, wenn Gutenberg die CSS-Klasse für das oberste Element selbst von Drittentwicklern fordert.

Zweck: Auf diese Weise können wir den Blöcken benutzerdefinierte Klassen für erweitertes Styling hinzufügen. Wir können auch Klassen verwenden, um Animationen oder andere erweiterte Blockeigenschaften hinzuzufügen.

Anwendungsbeispiel: Wir erstellen für einen großen Kunden eine Website mit einer streng definierten Designsprache. Der Seiteneditor sollte in der Lage sein, Blöcke mit einer vordefinierten Anzahl von Stilen zu erstellen, die von unserem Designer speziell für diesen Kunden erstellt wurden.

gh-gtnbrg-2

Anpassbare Datenattribute für jeden vorhandenen Block

Erforderlich: Möglichkeit, benutzerdefinierte Datenattribute für jeden Block-Wrapper hinzuzufügen.

Zweck: Sauberere und flexiblere Alternative zu den oben beschriebenen benutzerdefinierten CSS-Klassen. Mit Datenattributen können wir jedes Element auf der Seite formatieren. Neben dem Styling können benutzerdefinierte Datenattribute verwendet werden, um zusätzliche Metadaten für JS zu speichern.

Anwendungsbeispiel:

  • Responsive Blöcke : Markieren Sie einen Block, der nur auf Mobilgeräten/Desktops angezeigt werden soll
  • Bedingte Blöcke : Markiere einen Block, der angezeigt/ausgeblendet werden soll mit JS <div data-condition="if-adblock"... , <div data-condition="if-from-facebook"...
  • Blockanimation : einen zu animierenden <div data-animation="on-load animation-style-3"...
  • Blockdesign : <div data-skin="dark"...

gh-gtnbrg-3

Anpassbare Blockeinstellungen/Styling-Steuerelemente

Erforderlich: Option zum Hinzufügen benutzerdefinierter Steuerelemente und eine Möglichkeit, vorhandene Steuerelemente im Block zu ändern.

Zweck: Um jeden aktuellen und zukünftigen Block mit neuen erweiterten Einstellungen zu erweitern oder von unerwünschten/nicht benötigten Einstellungen zu befreien.

Anwendungsbeispiel:

  • Ich möchte nicht, dass meine Kunden "ihre eigenen" Button-Styles entwerfen (meistens haben sie einen sehr schlechten Geschmack), sondern bei vorgefertigten Corporate-Styles bleiben. Dazu muss ich in der Lage sein, Text- und Hintergrundfarbenoptionen für eine Schaltfläche auszublenden und ein weiteres zusätzliches Style-Dropdown-Steuerelement hinzuzufügen.

Siehe auch: #2474

gh-gtnbrg-4

Option zum Filtern jeder Blockausgabe direkt vor dem Rendern (PHP).

Dies gibt Entwicklern eine letzte Chance, das Block-Rendering anzupassen. Kann in vielen Szenarien verwendet werden, hier einige Beispiele:
- Eingeschränkter Inhalt: Block ausblenden für Nichtmitglieder

  • Bedingtes Rendering: Block basierend auf einer fortgeschrittenen Bedingung ausblenden
  • Blockcode filtern/bereinigen: Ich hasse die Idee, Inline-Stile von Gutenberg hinzuzufügen. Mit diesem Filter kann ich den Code vor dem Rendern bereinigen.
  • Inhaltsübersetzung: Block in eine andere Sprache übersetzen

Zugriff auf den Gutenberg-Staat und UI-Ereignisse.

Wir können Gutenberg mit erweiterten Funktionen erweitern, wenn wir Zugriff auf die Ereignisse auf der Seite und den Status des Redakteurs haben.

Benötigen Sie Zugriff auf Ereignisse wie (Abonnement für Statusänderungen?):

  • Block ausgewählt (+ Block Meta)
  • Block hinzugefügt
  • Block gelöscht
  • Blockeinstellung geändert
  • Block verschoben
  • Überarbeitung erstellt
  • Einstellungsfenster öffnen/schließen
  • Vorschau angeklickt

Zugang zum Staat von außen.

Es öffnet eine Tür für erweiterte Gutenberg-Plugins, ohne dass Sie nach einer neuen API gefragt werden müssen.

Möglichkeit, programmgesteuert neue Blöcke auf der Seite hinzuzufügen.

Anwendungsbeispiel:

Ich kann eine Bibliothek der Blockdesigns mit der benutzerdefinierten Seitenleiste in Gutenberg hinzufügen. Benutzer klicken auf das Blockdesign, das ihnen gefällt, und JS von meinem Plugin fügt den Block programmgesteuert auf der Seite mit voreingestellten Einstellungen hinzu.

Siehe auch: #2473

Eine Möglichkeit, die Standardblöcke in den benutzerdefinierten Blöcken (als Teil des größeren Blocks) wiederzuverwenden.

Siehe #2995

@lumberman Dass alle Pro-Argumente und Bemühungen scheitern, wenn die Dokumentation so prominent erwähnt wurde, dass ein großer Teil des Themes fehlt starten, d. h. die Changeset API / Funktion).

cu, w0lf.

@ginsterbusch Gutenberg ist gut dokumentiert, wenn es um die bereits codierten Komponenten und Bedienelemente geht.

@mtias bezüglich der

@hedgefield Als Teil der Mockups habe ich auch eine "größer als eine Dropdown-Version" untersucht. Nennen wir dies die "Popover"-Version. Ich habe es nicht gezeigt, weil es hauptsächlich ein Experiment/Konzept ist. Aber es lohnt sich, es zu teilen, da es eine Idee ist, die wir testen können, je nachdem, wie die Dropdown-Liste w. Toggle-Off-Version funktioniert:

popover

@lumberman danke für deine Gedanken und Ideen!

Anpassbare CSS-Klasse für jeden vorhandenen Block

Wir geben Blöcken eine Standardklasse von wp-block-{name} . Es gibt einige laufende Arbeiten, um die Erweiterung zu vereinfachen, abgesehen von benutzerkonfigurierbaren benutzerdefinierten Klassen. Wie stellen Sie sich dies aus der Entwicklerperspektive vor?

Anpassbare Blockeinstellungen/Styling-Steuerelemente

Bestimmt. Dies ist der Hauptzweck des Hinzufügens von "Inspektorelementen zu vorhandenen Blöcken". Einiges davon ist bereits möglich. In einigen Fällen können Sie einen Block auch vollständig durch Ihre eigene Version ersetzen. Das Deaktivieren bestimmter Funktionen eines Blocks muss möglicherweise etwas sein, was wir in add_theme_support tun.

Option zum Filtern jeder Blockausgabe direkt vor dem Rendern (PHP)

Dies sollte größtenteils schon möglich sein.

@mtias re: Benutzerdefinierte

Es wird auch nicht geladen, wenn show_in_rest nicht eingestellt ist.

Beim Testen habe ich auch festgestellt, dass es nicht geladen wird, wenn ein benutzerdefinierter Beitragstyp eine benutzerdefinierte REST-Controllerklasse verwendet. In Pressbooks registrieren wir einen benutzerdefinierten Controller für unsere CPTs in unserem eigenen Namensraum ( /wp-json/pressbooks/v2/<posttype> ) und dieser ist derzeit nicht mit Gutenberg kompatibel. Siehe #3462.

Hier sind einige Modelle, die zeigen, wie das Anheften von Erweiterungen an die Symbolleiste funktionieren könnte. Dies ist inspiriert von Chrome und Firefox.

  1. Sie öffnen es über die Auslassungspunkte, wo sich alle Editor-Erweiterungen selbst registrieren

wolframalpha open from ellipsis

  1. Dadurch wird sofort eine Sidebar geöffnet, da dies eine "Editor-Sidebar-Erweiterung" ist:

wolframalpha sidebar open

  1. Alle Sidebar-Erweiterungen haben ein "Stern"-Symbol in ihrer Überschrift.

wolframalpha pin to toolbar

  1. Klicken Sie darauf, um das Symbol an die Symbolleiste anzuheften:

wolframalpha extension pinned

  1. Auch wenn Sie die Seitenleiste schließen, bleibt das Erweiterungssymbol für den schnellen Zugriff dort:

pinned

Wiederholen Sie diese Schritte in umgekehrter Reihenfolge, um sie zu lösen.

@jasmussen Wäre es nicht sinnvoller, ein Stecknadelsymbol anstelle eines Sterns zum Anheften / Lösen einer Seitenleistenerweiterung zu haben, wenn die verwendete Terminologie Anheften und Anheften lautet?

Wäre es nicht sinnvoller, ein Stecknadelsymbol anstelle eines Sterns zum Anheften/Entfernen einer Seitenleistenerweiterung zu verwenden, wenn die verwendete Terminologie „Anheften und Anheften“ lautet?

Aus dem gleichen Grund habe ich tatsächlich mehrere Varianten eines Pin-Symbols ausprobiert. Aber keiner von ihnen liest sich sehr gut. Der Stern hingegen scheint ein Muster für "Favorit" oder "Lesezeichen" zu werden. Obwohl Sie einen guten Punkt in Bezug auf den Wortschatz machen. Könnte "Lesezeichen zur Symbolleiste" als Label funktionieren?

Aus dem gleichen Grund habe ich tatsächlich mehrere Varianten eines Pin-Symbols ausprobiert. Aber keiner von ihnen liest sich sehr gut. Der Stern hingegen scheint ein Muster für "Favorit" oder "Lesezeichen" zu werden. Obwohl Sie einen guten Punkt in Bezug auf den Wortschatz machen. Könnte "Lesezeichen zur Symbolleiste" als Label funktionieren?

Ich denke, dass das Wort "Pin" das richtige ist. Normalerweise würden Sie ein Element aus Nutzengründen an eine Benutzeroberfläche anheften. Was nicht unbedingt dasselbe ist, als etwas zu favorisieren oder mit einem Lesezeichen zu versehen. Es gibt sicherlich Nuancen.

"Stern"-Symbol in ihrer Überschrift

Sowohl Chrome als auch Firefox verwenden Textbezeichnungen ( Pin Tab und Unpin Tab ), die für jeden klar sind. Wenn Sie ein Symbol verwenden, würde ich vorschlagen, auch an ein "Unpin"-Symbol zu denken.

Hinweis zur Barrierefreiheit: Das "angeheftete Symbol" in der Symbolleiste leidet unter dem gleichen Problem wie das "Zahnrad"-Symbol in der Seitenleiste. Bei Verwendung einer Tastatur:

  • Aktiviere das Symbol (es sind Schaltflächen, also drücke die Eingabetaste oder die Leertaste)
  • die Seitenleiste öffnet sich
  • jetzt müssen Benutzer oft die Tabulatortaste drücken, um zur Seitenleiste zu gelangen

Im Idealfall sollten Steuerelemente, die erweiterbare Panels öffnen, in der Quelle unmittelbar vor dem Panel platziert werden. Alternativ sollte der Fokus programmgesteuert verwaltet werden. Siehe auch #469 (gepostet am 20. April).

Ich frage mich, ob ein Pin für die meisten Benutzer etwas bedeutet, ich bin wirklich nicht davon überzeugt. Stern bedeutet für viele Leute Liebling oder "Markierung", damit sich das logischer anfühlt.

Verwenden Sie einfach Text 🙂

Ich frage mich, ob ein Pin für die meisten Benutzer etwas bedeutet, ich bin wirklich nicht davon überzeugt. Stern bedeutet für viele Leute Liebling oder "Markierung", damit sich das logischer anfühlt.

screen shot 2018-04-11 at 12 51 39

Keep in Dock wird in macOS für eine ähnliche Funktion verwendet.

Beachten Sie, dass ich dieses Ticket mit neueren "Screen Takeover"-Modellen aktualisiert habe. Sie sind jetzt modal, wo sie vorher ein separater Bildschirm waren. Ein separater Bildschirm kann bei Bedarf in Zukunft erneut aufgerufen werden.

Ups, sorry, wollte das hier nicht schließen. Wieder geöffnet und als nicht erledigt abgelegt :)

Schließen Sie dies, da jetzt alles eine Implementierung hat. Verbesserungen sollten in einzelnen Aufgaben erfolgen. Danke an alle!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

Bild kann so klein verkleinert werden, dass es nicht mehr ausgewählt werden kann
hedgefield picture hedgefield  ·  3Kommentare

Spaltenbreiten
mhenrylucero picture mhenrylucero  ·  3Kommentare

Fehlfunktionen des Inserters auf Mobilgeräten
moorscode picture moorscode  ·  3Kommentare

Verbesserungen der Inline-Grenzen
spocke picture spocke  ·  3Kommentare

Vergleichen Sie die verschiedenen technischen Ansätze
youknowriad picture youknowriad  ·  3Kommentare