Zum Inhalt springen

Alle

Meine WordPress Plugins 2016

Meine WordPress Plugins 2016
Es gibt in diesem Eintrag inzwischen eine neue Auflistung meiner Plugins!

Es gibt aktuell 42.827 WordPress Plugins von denen ich auf meiner Webseite 12 Stück verwende. Hier zeige ich euch welche dies sind und wofür ich sie einsetze.

Akismet

Akismet bietet einen sehr zuverlässiges Weg um Spam erkennen. Sobald ein Kommentar als Spam eingestuft wurde, wird dieser nicht auf der Webseite angezeigt. Der Schutz funktioniert äußerst zuverlässig. In den vielen Jahren in denen ich das Plugin bereits verwende, hatte ich bisher nur einen einzigen Kommentar der falsch erkannt wurde. Falls dies mal passieren sollte, kann man den Kommentar manuell freigeben und Akismet wird hierüber automatisch informiert.

Akismet Privacy Policies

Um dem deutschen Datenschutz beim Einsatz von Akismet gerecht zu werden, verwende ich Akismet Privacy Policies. Mithilfe dieses Plugins muss man beim Kommentieren auf meiner Webseite der Verarbeitung der eingegebenen Daten zustimmen. Weitere Informationen zu diesem Thema findet Ihr auf der Webseite von WordPress Deutschland.

Akismet Privacy Policies einverstanden checkbox

Broken Link Checker

In meinen Beiträgen verlinke ich relativ viele Webseiten. Dadurch kann man bei Unklarheiten gleich nachschauen was gemeint ist beziehungsweise wovon ich schreibe. Alleine in diesem Beitrag gibt es 30 Links. Da mit der Zeit einige Webseiten wieder aus dem Internet verschwinden oder Inhalte entfernt werden, verwende ich dieses Plugin um Benachrichtigt zu werden falls etwas mit einem Link auf meiner Webseite nicht stimmt. Auf der einen Seite wäre das sehr unschön für jemanden der einen Beitrag von mir liest und etwas nachschauen möchte. Auf der anderen Seite ist das aus der Sicht von SEO (Search Engine Optimization englisch für Suchmaschinenoptimierung) eine Katastrophe. Denn zu viele ungültige Links führen zu einer Abwertung beim SERP (Search Engine Result Pages englisch für: Seiten, auf denen die Suchergebnisse dargestellt werden).

Contact Form 7

Kurz und knapp: In meinem Impressum gibt ich ein Kontaktformular. Das Plugin Contact Form 7 verwende ich um dieses zu erstellen.

Contact Form 7 Kontaktformular

Cookie Law Info

Um der Cookie-Richtlinie der EU gerecht zu werden (oder doch Google?) gibt es auf meiner Webseite einen Hinweistext über die Verwendung von Cookies. Wenn Ihr meine Webseite nutzt, stimmt Ihr der Verwendung zu. Um diesen Hinweis zu platzieren und zu steuern verwende ich das Plugin Cookie Law Info. Die Rechtsanwaltskanzlei Schwenke hat auf Ihrer Webseite einen umfangreichen Beitrag über das Thema geschrieben.

Cookie Law Info Hinweis ausblenden

Crayon Syntax Highlighter

Es gibt immer wieder mal Beiträge von mir, in denen ich euch Teile von Code zeige. Zum Beispiel Ein WordPress Plugin Multisite Kompatibel machen. Damit der Code auch schön aussieht und gut strukturiert ist, verwende ich den Crayon Syntax Highlighter.

Crayon Syntax Highlighter Code Beispiel PHP

Easy Code Placement

Hierbei handelt es sich um ein von mir geschriebenes WordPress Plugin. Ich verwende Easy Code Placement um Werbung von Google AdSense dort zu platzieren wo ich es möchte – ohne den Code meiner Webseite anpassen zu müssen. Man kann hierfür das WordPress Text Widget verwenden oder einfach einen Shortcode auf einer Seite oder in einem Beitrag einfügen um den Code einzufügen. Das Plugin ist sehr flexibel und man kann unendlich viele Codes verwalten. Weitere Informationen findet Ihr hier.

Google XML Sitemaps

Um es Google und anderen Suchmaschinen zu erleichtern meine Webseite zu erfassen, verwende ich das Plugin Google XML Sitemaps. Dieses legt eine virtuelle Sitemap Datei an um den Suchmaschinen mitzuteilen wie die Inhalte meiner Webseite strukturiert sind. Außerdem werden durch diese Datei wertvolle Metadaten über meine Inhalte mitgeteilt. Dieses Plugin ist wie “Broken Link Checker” aus SEO-Gründen im Einsatz.

MailPoet Newsletters

Das Plugin MailPoet Newsletters, früher hieß es Wysija Newsletters, sendet beim Veröffentlichen eines neuen Beitrages automatisch eine E-Mail an die Abonnenten meiner Webseite. Es ist einfach zu konfigurieren aber hat dennoch alle wichtigen Optionen die man braucht. Auch bietet es die in Deutschland benötigte Funktion des Double-Opt-In an (eine Anmeldung muss nochmals bestätigt werden).

MailPoet Newsletters email Beispiel

Optimize Database after Deleting Revisions

Das Plugin Optimize Database after Deleting Revisions hatte ich vor ein paar Jahren bereits an dieser Stelle einmal vorgestellt. Seitdem hat sich nur ein wenig an den Einstellungen geändert. Es funktioniert aber zuverlässig wie eh und je. Das Plugin verwende ich um regelmäßig meine WordPress MySQL Datenbank zu entmüllen und zu optimieren. Seit dem ersten Lauf habe ich bereits über 10Mb Datenmüll aus der Datenbank entfernt.

Subscribe to Comments Reloaded

Damit keiner eine Antwort auf seinen Kommentar verpasst, habe ich das Plugin Subscribe to Comments Reloaded im Einsatz. Wie bereits das Plugin “MailPoet Newsletters”, bietet auch dieses Plugin die in Deutschland benötigte Funktion des Double-Opt-In an. Man kann entweder vor dem Absenden eines neuen Kommentares die Option aktivieren oder aber auch ohne einen Kommentar die E-Mail-Benachrichtigungen abonnieren.

Subscribe to Comments Reloaded checkbox

TinyMCE Advanced

TinyMCE Advanced habe ich euch an dieser Stelle bereits einmal vorgestellt. Mit diesem Plugin kann man für den WYSIWYG (What You See Is What You Get englisch für: Was du siehst, ist das, was du bekommst) Editor von WordPress praktische Funktionen aktivieren.

WYSIWYG Editor WordPress

Welche Plugins verwendet Ihr denn so? Kennt Ihr Plugins die man noch unbedingt haben muss?

Ein Salat

Salat Hähnchenfleisch Kräuter Gewürze Eisbergsalat Dressing Paprika in einer kleinen Schale

Die Kategorie Küche hatte bisher genau einen Beitrag. Mit diesem kommt nach langer Zeit ein zweiter dazu. Warum? Ich möchte euch einen Salat zeigen den ich mir sehr gerne mache. Die Zutaten (inklusive der Verarbeitung) sind:

  • Ein ganzer Eisbergsalat (mundgerechte Stücke)
  • Zwei große Tomaten (kleine Würfel)
  • Eine Gurke (geschält, der länge nach halbiert und dünne Scheiben)
  • Etwas Salz und ordentlich Pfeffer
  • Großzügig Petersilie
  • 200ml Joghurt Dressing
  • 500g Hähnchenbrustfilet (angebraten und mundgerechte Stücke)

Das ganze ergibt eine große Schüssel. Je nachdem wie lange der Salat reichen soll beziehungsweise für wie viele Personen er ist, kann man die Mengen natürlich anpassen.

Ein WordPress Plugin Multisite kompatibel machen

Ein WordPress Plugin Multisite kompatibel machen

In letzter Zeit wurde ich mehrfach gefragt ob mein WordPress Plugin (Easy Code Placement) Multisite / Netzwerk fähig ist. Da dies bisher nicht der Fall war, hatte ich mich schlau gemacht was hierfür nötig ist. Eigentlich ist dies relativ einfach umzusetzen. Jedoch sind die Informationen die ich gefunden habe sehr undurchsichtig, nicht vollständig und meistens auf Englisch. Letzteres ist für mich kein Problem. Aber um anderen das ganze einfacher zu gestalten, folgt nun meine Anleitung hierzu.

Wie funktioniert ein WordPress Multisite Netzwerk?

Multisite wurde mit der WordPress Version 3.0 eingeführt. Diese Funktion gibt einem die Möglichkeit, verschiedene WordPress Webseiten mit einer einzigen WordPress Installation zu erstellen. Wenn ein Multisite Netzwerk erstellt wird, werden verschiedene Tabellen in der Datenbank angelegt die von allen Webseiten genutzt werden. Zusätzlich bekommt jede Webseite ein paar eigene Tabellen in der Datenbank in denen zum Beispiel die Beiträge und Kommentare gespeichert werden. Diese Tabellen werden unter einer nur einmal vorkommenden blog_id gespeichert die aus Zahlen besteht. Die Standard WordPress Installation nutzt “wp_”. Eine zweite Multisite Installation zum Beispiel “wp2_”. Mehr Informationen zur WordPress Datenbank gibt es unter https://codex.wordpress.org/Database_Description (Englisch).

datenbankstruktur mysql tabellen

Was muss beachtet beziehungsweise am Plugin angepasst werden?

  • Bei der Installation des Plugins braucht jede Webseite die neuen Tabellen des Plugins
  • Bei dem hinzufügen einer Webseite müssen die Tabellen für das Plugin angelegt werden
  • Bei dem löschen einer Webseite müssen die Tabellen des Plugins gelöscht werden
  • Bei der Deinstallation des Plugins müssen von allen Webseite die Tabellen gelöscht werden werden

Die Installation des Plugins

Normalerweise sieht es wie folgt aus, wenn wir der Datenbank während der Installation des Plugins Tabellen hinzufügen möchten. Bitte beachten: Die database() Funktion wird bei den weiteren Funktionen verwendet und nicht verändert!

function database() {
    global $wpdb;
    //Tabelle die in die Datenbank eingefügt wird
    $table = "CREATE TABLE IF NOT EXISTS ".$wpdb->prefix."options (
        `id` int NOT NULL AUTO_INCREMENT PRIMARY KEY,
        `option_name` varchar(10) COLLATE utf8_unicode_ci NOT NULL UNIQUE,
        `option_value` varchar(10) COLLATE utf8_unicode_ci NOT NULL
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1";
    $wpdb->query($table);
}

// Hook der WordPress mitteilt das etwas bei der Installation des Plugins zu tun ist
register_activation_hook ( __FILE__, 'database' );

Damit alles auch bei einer Multisite / Netzwerk Installation korrekt funktioniert, müssen wir dies nun anpassen. Den “register_activation_hook” ändern wir etwas und wir fügen eine neue Funktion hinzu.

function plugin_install($networkwide) {
    global $wpdb;  
    // Prüfen ob es sich um eine Multisite / Netzwerk Installation handelt
    if (is_multisite() && $networkwide) {
        // Multisite / Netzwerk Plugin Installation
        $blog = $wpdb->blogid;
        $blogids = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs");
        // Jeder Webseite die Tabellen in der Datenbank einfügen
        foreach ($blogids as $blogid) {
            switch_to_blog($blogid);
            database();
        }
	switch_to_blog($blog);
    // Normale Plugin Installation
    } else {
    database();
    }
}

// Hook der WordPress mitteilt das etwas bei der Installation des Plugins zu tun ist
register_activation_hook ( __FILE__, 'plugin_install' );

Wenn eine Webseite hinzugefügt wird

Um einer neuen Webseite die benötigten Tabellen hinzuzufügen, brauchen wir folgendes. Bitte beachten: Der Teil “plugin-ordner-name/plugin-haupt-datei.php” muss mit euren Plugin Daten angepasst werden!

function new_blog($blog_id) {
    if ( is_plugin_active_for_network( 'plugin-ordner-name/plugin-haupt-datei.php' ) ) {
        switch_to_blog($blog_id);
        // Neuer Webseite die Tabelle in der Datenbank einfügen
        database();
        restore_current_blog();
    }
}

// Hook der WordPress mitteilt das etwas beim hinzufügen einer neuen Webseite zu tun ist
add_action ( 'wpmu_new_blog', 'new_blog', 99 );

Wenn eine Webseite gelöscht wird

Um beim löschen einer Webseite die Tabellen von uns aus der Datenbank zu entfernen, müssen wir folgendes hinzufügen.

function deleted_blog($tables) {
    global $wpdb;
    // Tabellen die gelöscht werden sollen
    $tables[] = $wpdb->prefix.'options';
    return $tables;
}

// Hook der WordPress mitteilt das Tabellen beim löschen einer Webseite zu entfernen sind
add_filter ( 'wpmu_drop_tables', 'deleted_blog', 99 );

Die Deinstallation des Plugins

Normalerweise sieht es wie folgt aus, wenn wir während der Deinstallation des Plugins Tabellen löschen möchten. Bitte beachten: Die uninstall() Funktion wird bei der nächsten Funktion verwendet und nicht verändert!

function uninstall() {
    global $wpdb;
    //Tabelle aus der Datenbank löschen
    $wpdb->query("DROP TABLE ".$wpdb->prefix."options");
}

// Hook der WordPress mitteilt das etwas bei der Deinstallation des Plugins zu tun ist
register_uninstall_hook ( __FILE__, 'uninstall' );

Damit alles auch bei einer Multisite / Netzwerk Deinstallation korrekt funktioniert, müssen wir dies nun anpassen. Den “register_uninstall_hook” ändern wir etwas und wir fügen eine neue Funktion hinzu.

function plugin_uninstall($networkwide) {
    global $wpdb;  
    // Prüfen ob es sich um eine Multisite / Netzwerk Deinstallation handelt
    if (is_multisite() && $networkwide) {
        // Multisite / Netzwerk Plugin deinstallation
        $blog = $wpdb->blogid;
        $blogids = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs");
        // Von jeder Webseite die Tabellen in der Datenbank löschen
        foreach ($blogids as $blogid) {
            switch_to_blog($blogid);
            uninstall();
        }
	switch_to_blog($blog);
        
    // Normale Plugin deinstallation
    } else {
    uninstall();
    }
}

// Hook der WordPress mitteilt das etwas bei der Deinstallation des Plugins zu tun ist
register_uninstall_hook ( __FILE__, 'plugin_uninstall' );

Zitat von Helen Adams Keller

Wenn eine Tür des Glücks sich schließt, öffnet sich eine andere, aber oft starren wir solange auf die geschlossene Türe, dass wir die, die sich uns geöffnet hat, nicht sehen.

Helen Adams Keller

Helen Adams Keller (* 27. Juni 1880 in Tuscumbia, Alabama; † 1. Juni 1968 in Easton, Connecticut) war eine taubblinde, amerikanische Schriftstellerin.

Senderliste auf Smart-TV bearbeiten

Senderliste auf Smart TV bearbeiten

Das ändern der Senderreihenfolge oder das sortieren der TV-Sender kann auf so manchem Modernen Smart-TV ziemlich nervig und Zeitaufwändig sein. Aus diesem Grund hat jemand ein kleines Programm geschrieben mit dem man das ganz einfach und komfortabel am PC erledigen kann. Hierfür exportiert man seine Senderliste auf einen USB-Stick, bearbeitet sie anschließend auf dem PC und importiert sie zum Schluss wieder auf den Fernseher.

Deshalb mein heutiger Link-Tipp  “ChanSort – Channel List Editor for Samsung, LG, Toshiba and Panasonic TVs” auf “github.com”