Schlagwort-Archive: tipps

The_Excerpt in Twenty Twelve mit Child-Theme

Dieser Artikel beschreibt die Anpassung des Standartthemes “Twenty Twelve”. Es wird ein sogenanntes “Child Theme” erzeugt und so angepasst, dass auf der Startseite und den Kategorieseiten nur Auszüge der Artikel angezeigt werden und nicht der komplette Artikel.

Child Theme

Ein WordPress Child Theme ist ein Theme, welches die Funktionalität eines anderen Themes, des sogenannten Parent Themes übernimmt und um eigene Anpassungen ergänzt. Die Verwendung eines Child Themes bietet sich an wenn man ein Theme anpassen/verändern möchte. Diese Anpassungen sollten nicht, im Standardtheme vorgenommen werden, da sie bei einem Update des Themes überschrieben werden und verloren gehen. Lagert man die Änderungen in ein Child Theme aus bleiben sie bei einem Update des Parent Themes erhalten.

Die Themes liegen im Pfad /wp-content/themes eurer WordPress Installation. In diesem Verzeichnis kann man nun ein neues Unterverzeichnis für das Child Theme anlegen. Ein Child Theme benötigt mindestens eine style.css.  In der style.css des Child werden die Einstellungen des Parent Theme importiert und um die eigenen Änderungen ergänzt. Wird das Child Theme aktiviert ersetzt die style.css des Child die style.css des Parent.

Hier ist ein Beispiel für eine entsprechende style.css:

/*
Theme Name: Twentytwelve Child
Description: Child theme for the twentytwelve theme 
Author: Your name here
Template: twentytwelve
*/

@import url("../twentytwelve/style.css");

Hier folgt die Erklärung was der obige Code macht:

  1. /* öffnet den Header des Child Theme.
  2. Theme Name: definiert den Namen des Child Theme.
  3. Description: Eine Beschreibung des Themes. Diese ist optional und kann entfallen.
  4. Author: Name des Autors. Angabe ist optional und kann entfallen.
  5. Template: Definiert das Parent Theme.
  6. */ schließt den Header des Child Theme.
  7. Die Regel @import importiert die Einstellungen aus der style.css des Parent Theme

Damit haben wir alles was wir für das Child Theme brauchen und können dieses im WordPress Backend unter Design -> Themes aktivieren. Noch sehen wir keine Veränderung, da wir ja bisher nur die Einstellungen des Parent Themes importiert haben. Nun passen wir das Theme weiter an.

The_Excerpt

Auf der Startseite des Blogs, den Kategorie Seiten und den Suchergebnisseiten sollen nicht die vollständigen Artikel angezeigt werden, sondern nur Auszüge.

Dazu kopieren wir die Datei content.php aus dem Parent Verzeichnis in das Child Verzeichnis. Diese öffnet man mit einem Editor und geht zur Zeile 33, welche wie folgt aussehen sollte.

<?php if ( is_search() ) : // Display Excerpts only for Search ?>

Diese Anweisung bewirkt, dass die Artikelauszüge nur auf den Suchergebnisseiten angezeigt werden. Um sie auf den Kategorieseiten und der Startseite ebenfalls anzuzeigen ändern wir die Zeile wie folgt ab.

<?php if ( is_search() || is_home() || is_category() ) : // Display Excerpts for Search, Category and Home ?>

Nachdem die Datei gespeichert wurde aktualisiert man die Browseransicht und die Artikel werden nicht mehr komplett sondern nur noch auszugsweise dargestellt. Aber wir können noch mehr tun.

Normalerweise endet ein Auszug mit […]. Wir können statt dessen jedoch auch einen Link mit
einem Benutzerdefinierten Text anzeigen lassen.

“Weiterlesen…” Link hinzufügen

Um die benötigten Änderungen vornehmen zu können erstellen wir im Verzeichnis des Child eine leere functions.php und fügen folgenden Code ein.

 <?php
/**
 * Twenty Twelve functions and definitions.
 *
 * Sets up the theme and provides some helper functions, which are used
 * in the theme as custom template tags. Others are attached to action and
 * filter hooks in WordPress to change core functionality.
 *
 * When using a child theme (see http://codex.wordpress.org/Theme_Development and
 * http://codex.wordpress.org/Child_Themes), you can override certain functions
 * (those wrapped in a function_exists() call) by defining them first in your child theme's
 * functions.php file. The child theme's functions.php file is included before the parent
 * theme's file, so the child theme functions would be used.
 *
 * Functions that are not pluggable (not wrapped in function_exists()) are instead attached
 * to a filter or action hook.
 *
 * For more information on hooks, actions, and filters, see http://codex.wordpress.org/Plugin_API.
 *
 * @package WordPress
 * @subpackage Twenty_Twelve
 * @since Twenty Twelve 1.0
 */

// Remove ... from excerpt and change the text
function change_excerpt_more()
{
  function new_excerpt_more($more)
    {
    // Use .read-more to style the link
     return '<span> <a href="' . get_permalink($post->ID) . '">[Weiterlesen...]</a></span>';
    }
  add_filter('excerpt_more', 'new_excerpt_more');

}
add_action('after_setup_theme', 'change_excerpt_more');

Damit werden die […] hinter dem Auszug entfernt und durch unseren eigenen
Text ersetzt. Das Ergebnis kann man hier auf meinem Blog betrachten.

Easy Servermigration mit RSYNC

Soll ein Linux-Server auf eine neue Hardware umziehen, stehen uns hier mehrere Wege offen. Ich selbst habe die letzte Migration dieser Art mit RSYNC durchgeführt. Dies hat so gut geklappt, dass ich euch hier beschreiben möchte, wie dabei vorzugehen ist.

Ich habe mich für die folgende Vorgehensweise entschieden.

  1. Installation der Linuxdistribution des Quellsystems auf der neuen Hardware. Z.B. Quelle = Ubuntu Server 11.10 und Ziel = Ubuntu Server 11.10.
  2. Das Netzwerkinterface wird auf eine freie IP Adresse aus dem Netz konfiguriert, in dem sich auch das Quellsystem befindet.
  3. Für die Migration aktivieren wir auf dem Zielsystem den root-Account, in dem wir ihm ein Passwort geben -> sudo passwd root
  4. Um vom Quellsystem auf den neuen Server zugreifen  zu können installieren wir einen SSH-Server und richten uns den Zugriff über Public-Keys ein. Wie dies funktioniert wird sehr gut im Artikel SSH im Ubuntuusers Wiki erklärt.
  5. Auf dem neuen Server sollen nach der Migration die gleichen Pakete installiert sein wie auf dem Quellsystem. Dazu erstellt man auf dem Quellsystem mit dpkg –get-selections | awk ‚!/deinstall|purge|hold/ {print $1}‘ > ~/packages.listeine Liste aller installierten Pakete. Damit bei der Installation dieser Pakete die gleichen Paketquellen wie auf dem Quellsystem verwendet werden sichern wir diese ebenfalls mit find
    find /etc/apt/sources.list* -type f -name '*.list' -exec bash -c 'echo -e "\n## $1 ";grep "^[[:space:]]*[^#[:space:]]" ${1}' _ {} \; > sources.list.save

    in eine Datei. Diese beiden Dateien übertragen wir nun via SCP auf das Zielsystem.

  6. Nun kopiert man die sources.list.sav nach /etc/apt/sources.list und führt anschließend mit apt-get updateein Update der Quellen durch. Mit dem folgenden Befehl werden die Pakete aus der zuvor erstellten Liste installiert. ->
    xargs -a „packages.list“ sudo apt-get install
  7. Jetzt ist die Migration schon fast geschafft. Als nächsten kopieren wir uns die /etc/fstab und /etc/network/interfaces um später noch auf Infos aus diesen Dateien arbeiten zu können. Im letzten Schritt kopieren wir mit rsync -avz Quelle root@Zielhost:/ die benötigten Verzeichnisse und Dateien auf unser Zielsystem. Wird RSYNC als root ausgeführt werden dabei automatisch alle Zugriffsrechte beibehalten.
  8. Nachdem RSYNC durchgelaufen ist müssen nur noch die Dateien /etc/fstab und /etc/network/interfaces kontrolliert werden, damit der Server nach einem Reboot seine Festplatten findet und mit der IP-Konfiguration des Quellsystem startet. Das Quellsystem sollte nun vom Netzwerk getrennt werden.

Jetzt fehlt nur noch ein Neustart des neuen Servers und schon ist die Migration abgeschlossen. Das es so einfach geht hätte ich vorher selbst nicht gedacht. Aber nach der ersten Erfahrung werde ich bei der nächsten Migration wieder zu diesem Mittel greifen.

Vorstellung freiesMagazin

In diesem Artikel möchte ich auf das kostenlose und online erscheinende Magazin „freiesMagazin“ hinweisen. Was ist freiesMagazin?

freiesMagazin berichtet monatlich über Wissenswertes und Neues aus den Welten Freier Software, Open Source und Linux. Was 2005 als loser Newsletter begann, reifte mit der Zeit durch Akzeptanz und Teilnahme der Linux-Community zum regelmäßig erscheinenden Magazin. Getreu dem Motto „der Community etwas an Wissen, Spaß und Freude zurückzugeben“ laden wir auch weiterhin Autoren zum Wissensaustausch ein.

Neben interessanten Hintergrundartikeln und Neuvorstellungen gefallen mir auch die Artikelreihen, welche als Tutorial in Skript- und Programmiersprachen wie PHP, Perl, Java oder die Objektorientierte Programmierung allgemein einführen.

Die Ausgaben sind als PDF-, HTML- und EPUB-Version verfügbar. Bei dieser Aufwahl lässt sich das Magazin auf so gut wie jedem elektronischen Device gut lesen. Sei es der PC, das Notebook, Tablet oder eReader. Für mobile Geräte werden auch Versionen ohne Bilder bereitgestellt, um Speicherplatz zu sparen.

Somit ist es für mich ein leichtes alle Ausgaben der Jahre 2008 – 2011 auf meinem Kindle dabei zu haben. Damit man leichter die Übersicht behält gibt es für jedes Jahr einen Index, welcher alle erschienen Artikel aufführt und dem man entnehmen kann in welcher Ausgabe ein Artikel erschienen ist.

Die Jahressammlungen werden auch zum Download als *.tar.gz Archiv angeboten. Auf der Seite www.freiesmagazin.de/mobil gibt es die HTML-Versionen mit und ohne Bilder. Mit dem Programm wget und dem folgenden kurzen Bash-Skript könnt ihr euch alle Ausgaben automatisch auf euren Rechner laden.

#!/bin/bash
# Downloader für freiesMagazin HTML-Ausgaben
for i in {2008..2011}
do
for j in {01..12}
do
wget http://www.freiesmagazin.de/mobil/freiesMagazin-${i}-${j}.html
done
done

echo „Download abgeschlossen.“

Und nun wünsche ich euch viel Spaß beim Lesen. ;-)

The_Excerpt() – Auszug aus Artikel anzeigen

Wie bereits unzählige WP-Nutzer vor mir habe auch ich mich gefragt was ich anstellen muss um auf der WP-Startseite nicht die vollständigen Artikel, sondern nur Auszüge aus diesen, anzeigen zu lassen.

Um mir die Suche beim nächsten Mal zu ersparen und Leidensgenossen da draußen im Web zu unterstützen kommt hier ein kurzes Tutorial was man anstellen muss.

Ich verwende das Standard-Theme Twenty Eleven und habe das Tutorial auch nur mit diesem Theme getestet. Um die hier beschriebenen Änderungen vorzunehmen wird eine Konfigurationsdatei (content.php) mit einem Editor bearbeitet. Wir nicht sicher ist was er da tut sollte sich diese Datei unbedingt vorher sichern, bevor er irgendwelche Änderungen daran vornimmt. Nach diesem kurzen Warnhinweis legen wir mal los.

  1. Meldet euch im Backend eurer WP-Installation an und navgiert über das Menü auf der linken Seite zum Menüpunkt Design und wählt dort den Editor aus.
  2. Um die gewünschten Änderungen vorzunehmen ist die Datei content.php zu bearbeiten. Diese findet ihr wenn ihr auf der rechten Seite eures Fensters ein wenig nach unten scrollt.
  3. Im Editorfenster sucht ihr nun mittels STRG+F nach dem String the_content. Dabei solltet ihr folgende Zeile
    <?php the_content( __( 'Continue reading <span>&rarr;</span>', 'twentyeleven' ) ); ?>

    finden. Dies ersetzt ihr durch die Zeile

     <?php the_excerpt(); ?>
  4. Ich möchte das auch auf den Archivseiten nur ein Auszug der Artikel angezeigt wird. Dazu suche ich noch nach der Zeile
    <?php if ( is_search() ) : // Only display Excerpts for Search ?> 

    und ändere sie wie folgt

    <?php if ( is_archive || is_search() ) : // Only display Excerpts for Search ?>
  5. Mit einem Klick auf den Button „Datei aktualisieren“ werden die Änderungen in die aktive Konfiguration übernommen.

Zur Kontrolle hier noch ein Screenshot wie der entsprechende Abschnitt in der content.php aussehen sollte.

Der geänderte Code

Dateien auf mehreren Geräten synchron halten

Sie haben mehrere PCs oder Laptops? Arbeiten Sie daheim am PC und unterwegs am Notebook? Oder möchten sie im Team, mit Kollegen, an einem gemeinsamen Satz von Dokumenten arbeiten? Dann haben Sie sich bestimmt schon einmal Gedanken darüber gemacht, wie Sie diese Dateien auf den Geräten synchronisieren können ohne sie jedes Mal manuell kopieren zu müssen.

Für dieses Problem gibt es eine Lösung, die so einfach wie sicher ist. Die Lösung heißt TeamDrive. Mit dieser, in der Grundausführung kostenlosen, Software können Sie ihre Dateien mit anderen teilen oder Ihre Daten einfach auf ihren eigenen Geräten synchron halten. Dabei ist TeamDrive einfach und intuitiv zu bedienen.

Auf der Herstellerseite sind die Vorteile des Programms in den FAQs so gut festgehalten, dass ich sie hier nicht alle wiederholen möchte, sondern sie lieber direkt auf die FAQ des Herstellers verweise.

Dieser Artikel soll daher nur als kleiner Hinweis auf eine großartige Software Made in Germany dienen.

Den Computer einfach Schützen

Wieviel Aufwand zum Schutz den privaten PCs betrieben werden muss hängt natürlich immer von den persönlichen Anforderungen ab. Es gibt jedoch Schutzmaßnahmen, die jeder treffen sollte.

Dieser Artikel nennt die 10 wichtigsten Tipps, die man für ungetrübtes Surfvergnügen beherzigen sollte.

  1. Installieren Sie ein Virenschutzprogramm und ein Anti-Spyware Programm und halten Sie diese Programme immer auf dem aktuellen Stand.
  2. InstallierenSie für ihr Betriebssystem verfügbare Updates. Halten Sie auch die installierte Software immer auf dem neusten Stand. Häufig gelangt Schadsoftware durch Sicherheitslücken im Betriebssystem und in Programmen auf den PC, die noch nicht gepatched wurden.
  3. Wenn möglich arbeiten Sie nicht als Administrator oder mit administrativen Rechten. Schadsoftware wird meist mit den Rechten des angemeldeten Benutzers ausgeführt und kann so noch mehr Schaden anrichten. Verwenden sie zwei Benutzerkonten oder lassen sie z.B. bei Windows Vista und Windows 7 die Benutzerkontensteuerung (UAC) aktiviert.
  4. Gehen Sie sorgfältig mit Ihren Zugangsdaten um. Bewahren Sie diese sicher auf und speichern Sie sie nicht unverschlüsselt auf der Festplatte ihres PCs. Zum verwalten von Kennwörtern und Zugangsdaten auf dem PC eignen sich sogenannte Passwort-Safes wie z.B. KeePass.
  5. Seien Sie vorsichtig beim Öffnen von E-Mail Anhängen. Öffnen Sie diese nur wenn Sie den Absender kennen. Fragen Sie im Zweifel beim Absender nach.
  6. Seien Sie vorsichtig bei Downloads von Dateien aus dem Internet. Vergewissern Sie sich vorher, dass ihr Virenschutzprogramm aktuell ist und die Dateien aus einer vertrauenswürdigen Quelle stammen.
  7. Seien Sie zurückhaltend mit der Weitergabe persönlicher Daten. Je weniger Daten sie weitergeben, desto weniger Daten können von Betrügern missbraucht werden.
  8. Fertigen Sie regelmäßig Sicherungskopien Ihrer wichtigen Daten an. Sollten ihre Daten einmal durch Schädlingsbefall oder Hardwaredefekt verloren gehen, können Sie diese aus einer Sicherung wiederherstellen.
  9. Wird Ihr PC von mehreren Personen benutzt, so richten Sie jedem Benutzer ein eigenen Benutzerkonto ein. Sperren Sie ihre Arbeitsoberfläche, wenn sie den PC verlassen. So verhindern Sie die missbräuchliche Verwendung ihrer Benutzerkennung.
  10. And last but not least. Lassen Sie bei allem Tun und Handeln den gesunden Menschenverstand walten. ;-)

Im Gegensatz zu vielen anderen Ratgebern und Tipp-Sammlungen empfehle ich nicht den Einsatz einer Personal Firewall. Der Grund dafür ist ganz einfach. Die meisten Anwender sind nicht in der Lage eine Firewall richtig zu konfigurieren. Und falsch konfiguriert stellt eine Software-Firewall unter Umständen ein Sicherheitsrisiko für ihren Computer dar.

Die meisten Privathaushalte verwenden heute einen Router für den Zugriff auf das Internet. Moderne DSL-Router sind mit einer NAT-Firewall ausgestattet und blocken Angriffsversuche von aussen sicher ab. In diesem Fall ist eine zusätzliche Personal Firewall obsolet.

Sollten Sie sich jedoch direkt per Modem, ISDN oder UMTS mit dem Internet verbinden, kann der Einsatz einer solchen Firewall durchaus sinnvoll sein. Doch scheuen Sie in diesem Fall nicht den Aufwand sich mit der Software vertraut zu machen. Denn nur sinnvoll konfiguriert, kann Sie die Firwall schützen ohne ihren Arbeitsablauf zu blockieren.