====== Wordpress-Anpassungen für bytespeicher.org ====== Unsere Seite auf [[https://bytespeicher.org|bytespeicher.org]] wird derzeit mit [[https://wordpress.org|Wordpress]] verwaltet. Abhängig von den gefundenen Bugs, neuen Releases und unserer Aktualisieren sollte immer eine einigermaßen aktuelle Version laufen. ;) Als Template kommt //Twenty Fourteen// zum Einsatz, wobei wir einige Änderungen gemacht haben, die nachfolgend dokumentiert sind. Für eine Diskussion/Ideensammlung gibt es natürlich auch ein [[http://pad.technikkultur-erfurt.de/p/wordpress|Pad]] ===== Raumstatus in der Seitenleiste ===== Der Raumstatus wird in der Seitenleiste mittels [[https://de.wordpress.org/plugins/enhanced-text-widget/|Enhanced Text Widget]] eingebunden. Dies muss über die Plugin-Installation nachinstalliert werden und beherrscht gegenüber dem normalen Text-Widget die Möglichkeit, auch PHP auszuführen. Die Einbindung des Status erfolgt dann einfach mittels HTML- und PHP-Code... array( 'timeout' => 1 ) ) ); $obj = json_decode(file_get_contents('http://status.bytespeicher.org/status.json', false, $ctx)); if (isset($obj->state->open) && $obj->state->open === true) { $f = $obj->state->icon->open; $text = "Der Raum ist offen!"; } else { $f = $obj->state->icon->closed; $text = "Der Raum ist geschlossen!"; } $f = str_replace('http://status.bytespeicher.org/', 'https://bytespeicher.org/status/', $f); echo "Raumstatus"; echo '

'."$text

"; ?>
===== Anpassungen an Funktionen ===== ==== Hinweis zu Beitragsbild ==== Da unsere Autoren gerne mal das Beitragsbild beim Veröffentlichen von Artikel vergessen, haben wir das Plugin [[https://wordpress.org/plugins/featured-image-reminder/|Featured Image Reminder]] eingebaut. Hat man kein Bild gesetzt und will den Beitrag veröffentlichen, erscheint ein Warnhinweis, den man nochmals bestätigen muss. ==== Subscribe To Category ==== Für Testzwecke (und ggf. später mehr) haben wir das Plugin [[https://wordpress.org/plugins/subscribe-to-category/|Subscribe to Category]] eingerichtet. Anpassungen dazu können in der Datei ***functions.php*** des Designs gemacht werden. /* * Mit den nachfolgenden Filtern wird die E-Mail des Plugins Subscribe To Category angepasst. */ // Beitragsbild in die E-Mail einfügen function my_stc_after_message_title( $post_id ){ echo get_the_post_thumbnail( $post_id, 'medium' ); } add_action( 'stc_after_message_title', 'my_stc_after_message_title', 10, 2 ); // Beiträge als full-post schicken function my_stc_message_length_sum_of_words( $length ) { $length = -1; return $length; } add_filter( 'stc_message_length_sum_of_words', 'my_stc_message_length_sum_of_words', 10, 1 ); // unsubscribe-Link entfernen function my_stc_message_unsubscribe_html( $message ) { $message = ''; return $message; } add_filter( 'stc_message_unsubscribe_html', 'my_stc_message_unsubscribe_html', 10, 3 ); ===== Anpassungen am Design ===== ==== großes Header-Bild ==== In den Template-Optionen wurde das große Header-Bild deaktiviert, um die Übersichtsseite zu entschlacken und mehr Inhalt auf die Seite zu bringen. Diese Modifikation **ist update-sicher** und muss daher nicht jedes mal gemacht werden. ==== keine Artikelbilder auf Übersichtsseite ==== Um die Startseite etwas übersichtlicher zu halten, werden keine Artikelbilder angezeigt. Dazu muss man in der Datei **content.php** die Zeile //twentyfourteen_post_thumbnail();// anpassen if ( is_single() ) : twentyfourteen_post_thumbnail(); endif; Diese Änderung ist **nicht update-sicher** und muss nach einer Aktualisierung erneut eingetragen werden. ==== Beitragsüberschriften nicht UPPERCASE ==== Überschriften der Beiträge werden nicht mehr in UPPERCASE ausgewiesen. Dazu muss man in der Datei **style.css** in Abschnitt 6.2 bei Klasse //.entry-title// das uppercase aaskommentiert werden (ca. Zeile 1110). /* text-transform: uppercase; */ ==== Beitragsarchiv ohne Aufzählungszeichen ==== Wir verwenden für die Archivseite des Weblogs das Plugin "Simple Yearly Archive". Dieses erzeugt allerdings in der Standardeinstellung eine Aufzählung der Beiträge, wodurch die Darstellung unschön wird. In der Template-Datei **style.css** muss am Ende daher noch der folgende Code eingefügt werden. .sya_container li { list-style-type:none; } ===== statischen Content erzeugen ===== **Der nachfolgende Teil ist "work in progress" und noch nicht die letztgültige Variante, wie die Seite zu archivieren ist.** Damit im statischen Archiv bei jedem Artikel ein Hinweistext dabei ist, muss in der Datei functions.php des Themes am Ende folgender Inhalt ergänzt werden: add_filter( 'the_content', 'filter_the_content_in_the_main_loop' ); function filter_the_content_in_the_main_loop( $content ) { // Prüfen ob wir in dem Loop eines Beitrags oder einer Seite sind if (( is_single() OR is_page()) && in_the_loop() && is_main_query() ) { // Den HTML Teil für die Schrift könnt ihr beliebig ändern oder erweitern return '

Du befindest dich im Archiv dieses Weblogs. Für aktuelle Informationen besuche uns bitte auf technikkultur-erfurt.de

' . $content; } return $content; } Um die Seite als Archiv zu verwenden, soll sie als statischer HTML-Code erhalten bleiben. Dies hat den Vorteil, dass im Hintergrund kein Wordpress mehr läuft und somit auch keine Plugins, Sicherheitsupdates etc. benötigt werden. Zu Testzwecken wurde das Programm [[https://www.httrack.com|httrack]] verwendet. Es ist für die gängigen Betriebssysteme verfügbar, am Mac nutzt man am einfachsten die Version aus brew. Das Archiv legt man mit folgendem Befehl an httrack https://bytespeicher.org -W -O "/Users/bernd/static/bytespeicher" -*.php -%v -%k -s0 -W mirror web sites, semi-automatic (asks questions) (--mirror-wizard) -O path for mirror/logfiles+cache -%v display on screen filenames downloaded (in realtime) - * %v1 short version - %v2 full animation (--display) -%k use keep-alive if possible, greately reducing latency for small files and test requests -s0 ignore robots.txt Für ein Update des Mirrors muss man im Ordner den folgenden Befehl verwenden: httrack --update Die verwendeten Parameter werden in ./ht-cache/doit.log gespeichert. To update a mirror, just launch httrack without any parameters The existing cache will be used (and modified) To have other options, retype all parameters and launch HTTrack To continue an interrupted mirror, just launch httrack without any parameters