Formatierung in Ulysses ändert sich nach Aktualisierung

Ulysses ist eine großartige App zum Schreiben größerer Dokumente bis hin zu Büchern. Innerhalb der Applikation wird mit Markdown gearbeitet, welches dann entsprechend dargestellt wird. Dafür sind unter Ulysses sogenannte Themes zuständig. Über diese wird festgelegt wie das Markdown innerhalb der App dargestellt wird.

Die Einstellungen von Ulysses

In neueren Versionen werden Überschriften in unterschiedlichen Größen dargestellt, was ich gelinde gesagt als schrecklich empfinde. Allerdings ist dies kein Problem, da dass entsprechende Theme einfach angepasst werden kann und die Überschriften damit in der gleichen Größe angezeigt werden. Allerdings gibt es bei dieser Möglichkeit ein Problem. Wurde das Standardtheme (aktuell D22) angefasst, so wird dieses bei einer Aktualisierung der Anwendung wieder überschrieben.

‎Ulysses · Schreibprogramm
Preis: Kostenlos+
‎Ulysses | Schreibprogramm
Preis: Kostenlos+

Die Idee dahinter ist, dass das Standardtheme immer entsprechend aktuell gehalten wird, damit der Nutzer Neuerungen gleich sieht. Gelöst werden kann das Problem dadurch, das eine Kopie vom Standardtheme angelegt wird. Dieses kann dann nach den Wünschen des Nutzers angepasst werden. Die Änderungen werden bei einer Aktualisierung der Applikationen auch nicht mehr überschrieben.

w.org im Seitenquelltext unter WordPress

Auf einer Webseite, welche ich betreibe, fand sich folgende Abhängigkeit im Quelltext der Seite:

<link rel='dns-prefetch' href='//s.w.org' />

Hier wurde ein DNS Prefetch durchgeführt, das bedeutet der Browser angewiesen wird, besagte Domain bereits per DNS aufzulösen, bevor sich eigentlich benötigt wird. Grundsätzlich achte ich darauf das meine Webseiten ohne externe Abhängigkeiten auskommen. Eine Ausnahme ist z.B. der Zählschnipsel der VG Wort, welcher für die Abrechnung entsprechender Texte benötigt wird.

Bei der Ursachenforschung stellte ich fest das WordPress hier Emojis nachlädt, obwohl dies in den Einstellungen in der Sektion Schreiben deaktiviert wurde.

In den Einstellungen kann die automatische Umwandlung von Emojis abgeschaltet werden

Ursächlich für das Problem war ein Unicode-Zeichen, welches in einem Widget der Seite genutzt wurde und dazu führte, dass das entsprechende Zeichen extern als SVG-Datei geladen wird. Die einfachste Lösung ist es das entsprechende Zeichen zu entfernen, allerdings kann dieses Verhalten auch generell abgeschaltet werden. Dazu sind in der Datei functions.php des benutzen Themes folgende Zeilen hinzuzufügen:

add_filter( 'emoji_svg_url', '__return_false' );
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );

Damit ist die automatische Umwandlung von Emojis abgeschaltet und auch der entsprechende DNS Prefetch sollte nicht mehr im Quelltext auftauchen.

Powered by WordPress Footer entfernen

Wer das WordPress-Standardtheme Twenty Twenty-One nutzt, wird im Footer sicherlich schon die Zeile Powered by WordPress bemerkt haben. Wer diese Zeile im Footer störend findet, kann sie auf einfache Weise mit den WordPress-Bordmitteln beseitigen.

Der Footer im Theme Twenty Twenty-One

Dafür wird ein kleiner CSS-Schnipsel benötigt:

.site-info { display: none; }

Im WordPress-Backend findet sich im Menü unter Design -> Customizer die Möglichkeit einige Einstellungen des Themes vorzunehmen. Hier findet sich unter anderem der Punkt Zusätzliches CSS. Dort wird der CSS-Schnipsel eingefügt und das ganze abgespeichert. Damit ist die Powered by WordPress-Zeile im Footer Geschichte.

Beschriftung der Galerie unter WordPress ausblenden

Unter WordPress ist es möglich aus mehreren Bildern eine Galerie zu erstellen. Zusätzlich werden die hinterlegten Beschriftungen der Bilder ebenfalls angezeigt. Dies kann unter Umständen das Erscheinungsbild der Galerie stören.

Werden die Beschriftungen angezeigt, so leidet unter Umständen das Erscheinungsbild der Galerie

Um einem solchen Fall vorzubeugen, kann die Beschriftung in der Galerie ausgeblendet werden. Dafür muss die Datei style.css, welche zum aktiven Theme gehört, angepasst werden und folgender Block hinzugefügt werden:

.gallery-caption {
	display:none;
}

Nach der Anpassung werden Beschriftungen in der Galerie nicht mehr angezeigt.

WordPress-Themes und die GPL

Das Content Management System WordPress ist unter der GPL lizenziert und damit stellt sich die Frage, ob Themes unter WordPress ebenfalls unter der GPL lizenziert sind? Die kurze Antwort: Themes müssen unter der GPL lizenziert werden. Im Detail können bei der Frage allerdings Abstufungen vorgenommen werden. Die GPL definiert eine Reihe von Freiheiten:

Die Freiheit, das Programm auszuführen wie man möchte, für jeden Zweck (Freiheit 0).

Die Freiheit, die Funktionsweise des Programms zu untersuchen und eigenen Datenverarbeitungbedürfnissen anzupassen (Freiheit 1). Der Zugang zum Quellcode ist dafür Voraussetzung.

Die Freiheit, das Programm zu redistribuieren und damit Mitmenschen zu helfen (Freiheit 2).

Die Freiheit, das Programm zu verbessern und diese Verbesserungen der Öffentlichkeit freizugeben, damit die gesamte Gesellschaft davon profitiert (Freiheit 3). Der Zugang zum Quellcode ist dafür Voraussetzung.

Da die PHP-Dateien eines Themes die unter der GPL lizenzierten Schnittstellen von WordPress nutzen, muss das Theme ebenfalls unter der GPL lizenziert werden. Das Theme läuft niemals für sich alleine, sondern benötigt zwingend die entsprechenden WordPress-Schnittstellen. Sobald ein Theme distribuiert wird, muss es unter der GPL lizenziert werden.

Mit Themes lässt sich das Aussehen der Webseite anpassen

Mark Jaquith, einer der Entwickler von WordPress drückte das Ganze wie folgt aus:

Theme code necessarily derives from WordPress and thus must be licensed under the GPL if it is distributed.

Der Einwand, welcher ab und an vorgebracht wird, das mit einem GPL-Theme kein Geld verdient ist dabei haltlos. Die GPL verbietet es nicht mit GPL-Software Geld zu verdienen. So kann ein Ersteller eines Themes die Themes verkaufen. Natürlich könnte nun ein Käufer das Theme anderweitig bereitstellen, allerdings kann der Nutzer bei vielen Erstellern Updates der Themes und Support dazu kaufen. Dies stellt einen Mehrwert gegenüber eine Theme da, welches eventuell schon veraltet ist.

Theoretisch können WordPress-Themes unter unterschiedlichen Lizenzen angeboten werden. Dies war beim Theme Thesis der Fall. Hier sind sämtliche PHP-Dateien unter der GPL lizenziert, während CSS- und JavaScript-Dateien proprietär sind. Interessant wird es bei Lizenzbedingungen, des Theme-Erstellers, welche gegen die GPL verstoßen. Technisch betrachtet dürften solche Themen nicht mit WordPress genutzt werden.

WordPress ist nicht das einzige System, bei welchem sie die Rechtslage so darstellt, so erklärt die FAQ des Content Management Systems Drupal:

Drupal modules and themes are a derivative work of Drupal. If you distribute them, you must do so under the terms of the GPL version 2 or later. You are not required to distribute them at all, however. (See question 8 below.)

Wie sieht, es in dem Fall aus das ein Theme erstellt wurde und dieses Theme auf der eigenen Webseite genutzt wird? Muss dieses Theme nun unter GPL bereitgestellt werden? Die Antwort darauf ist nein. Der Grund hierfür ist das, wenn ich ein unter GPL lizenziertes Produkt ausliefere, ich den Quelltext dazu veröffentlichen muss. Allerdings liefert WordPress keine Themes, sondern Webseiten aus. Deshalb muss der Quelltext des Themes nicht bereitgestellt werden. Wäre dies der Fall wären z.B. alle Dokumente welche mit LibreOffice erstellt werden auch unter der GPL lizenziert werden. Dazu noch einmal Mark Jaquith:

No. The GPL is triggered by distribution. Work-for-hire for a client is not distribution. In this case, they would have the copyright on the code. Distributing it would be up to them. As long as they didn’t distribute it, the GPL wouldn’t kick in. Your clients needn’t worry.