Wordpress

aus www.kruedewagen.de, Homepage von Ralf und Judith Krüdewagen (Kruedewagen)
Wechseln zu: Navigation, Suche

Diese Seite beschreibt den Einsatz von Wordpress als Blogging-System. Wordpress ist Grundlage für das KRÜDEWAGEN BLOG.


Allgemeines

  • Neuerungen in Wordpress 3.0 (Theme, Multisites): siehe iX 09/10 S.52
  • Wordpress erweitern und optimieren: siehe c't 18/14 S.170
  • Wordpress für Suchmaschinen optimieren (SEO): siehe c't 11/15 S.164

Themes

Themes erstellen

Themes-Sammlungen

MistyLook 2

Mistylook Homepage, Forum

Deutsche Übersetzung von mir

Hinweis: Umlaute wurden direkt mit ö,ä,ü etc. in den Quelltext geschrieben. Das sollte jeder vernünftige Browser darstellen können, zumal die Seiten UTF-8 kodiert ausgeliefert werden.

Deutsche Übersetzung (v1) siehe auch Blog http://www.eisregen1986.fs4y.be/blog/wordpress/wordpress-themes/mistylook-de/

Meine speziellen Anpassungen des MistyLook 2 Themes

  • Sidebar
In sidebar.php habe ich die Reihenfolge der Einträge verändert und den Standard-Kalender eingefügt mittels
<?php get_calendar(); ?>
Startseite hinzugefügt
<li <?php if(is_home()){echo 'class="current_page_item"';}?>><a href="<?php bloginfo('siteurl'); ?>/" title="Home">Startseite</a></li>
<?php wp_list_pages('title_li=' ); ?>
  • Bild misty.jpg
Größe: 569x200 px (780px ist die Gesamtbreite der Seite)
  • Bild profile.jpg
Größe: 100x74 px
  • style.css
Änderung "height" an tatsächliche Höhe des eigenen Bildes
#headerimage {
        clear: both;
        background: #fff url(img/misty.jpg) no-repeat center 0px;
        margin: 10px;
        color: #fff;
        /*height: 270px;*/
        height: 200px;
}
Änderung der margin für Unterseiten in der Navigationbar
#sidebar ul ul
{
	list-style:none;
	margin:0em 0 0 1em;
	padding:0;
}
Hinzufügen von diversen wp-calendar Styles
Änderung der Schriftgröße im Body auf 85%.
  • favicon hinzugefügt header.php:
<link rel="shortcut icon" href="/favicon.ico" />
  • Fix in index.php
<?php the_content('Den ganzen Beitrag lesen »'); ?>
<?php wp_link_pages(); // Fix: See http://forums.wpthemes.info/comments.php?DiscussionID=2 ?>

MistyLook 3

Weblinks

Deutsche Übersetzung

Seit MistyLook 3.6 kann man Sprachpakete benutzen, so dass eine Übersetzung der Sourcen nicht mehr nötig ist. Siehe deutsches Sprachpaket.

Beispiel-Website mit diesem Theme in deutscher Sprache: KRÜEDEWAGEN BLOG

Anmerkungen für ältere MistyLook Versionen:

Meine speziellen Anpassungen des MistyLook 3 Themes

Gütig für Version 3.6.x und 3.7.x, siehe hier für zusätzliche Anpassungen älterer Versionen.

Folgende Anpassungen habe ich noch zusätzlich vorgenommen, welche in der o.g. Übersetzung nicht enthalten sind.

  • comments.php
Wenn man nicht eingeloggt ist, rutscht die Sidebar sehr oft vom Rand rechts unten den Artikel (zumindest seit Wordpress 3.x). Das liegt wohl an einem Bug in MistyLook, siehe auch [1] und Prüfung per validator.w3.org. Das </div>-Tag in Zeile 86 muss zwischen die beiden endif verschoben werden:
<?php do_action('comment_form', $post->ID); ?>

</form>

<?php endif; // If registration required and not logged in ?>
</div>
<?php endif; // if you delete this the sky will fall on your head ?>
  • sidebar.php
In sidebar.php habe ich die Reihenfolge der Einträge verändert und den Standard-Kalender bzw. EventCalendar eingefügt mittels
<?php get_calendar(); ?>

bzw.

<li class="sidebox">
	<?php ec3_get_calendar(); ?>
</li>

<li class="sidebox"><h2>Termine</h2>
	<?php ec3_get_events(5); ?>
</li>
Home hinzugefügt in "Pages"
	<ul>
	 <li <?php if(is_home()){echo 'class="current_page_item"';}?>><a href="<?php bloginfo('siteurl'); ?>/" title="<?php _e('Home','ml');?>"><?php _e('Home','ml');?></a></li>
	 <?php wp_list_pages('title_li=' ); ?>
	</ul>

Für Countdown-Plugin unterhalb des Calendars:

<?php if(is_home()) { ?>
<li class='sidebox'>
<?php cc_countdown('05/08/2010 15:00','Kartenabend Countdown','FALSE'); ?>
</li>
<?php } ?>
  • Bild misty.jpg
Größe: 569x200 px (780px ist die Gesamtbreite der Seite)
  • Bild profile.jpg
Größe: 100x74 px
  • style.css
Abstand der Listenpunkte in der Sidebar
#sidebar li 
{
	margin-bottom:1px;
}
Hinzufügen von diversen wp-calendar Styles
  • favicon hinzugefügt header.php:
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
<link rel="shortcut icon" href="/favicon_blog.ico" />
  • functions.php
Da mein Blog keine Description hat, habe ich den Punkt entfernt:
<?php bloginfo('description');?><br/>
  • archive.php und search.php
Da das Theme auf Archiv- und Search-Seiten nur einen kurzen Extrakt der Beiträge liefert, z.B. ohne Links und Bilder, habe ich diese Dateien verändert.

alt:

<?php the_excerpt(); ?>

neu:

<?php the_content(); ?>
auskommentiert
<?php _e('Read Full Post »','ml');?>
  • mögliche Farbanpassungen in style.css, am Beispiel blau statt grün:
    • color: #16459a statt #265e15
    • background-color (eventcalendar): #d9e4f6 statt #cae7c1

wp-andreas09

Siehe http://www.zyblog.de/2006/06/14/deutsche-sprachdatei-fuer-wordpress-theme-wp-andreas09/

Weitere interessante Themes

Plugins

Eine Liste von Plugin-Portalen gibt es hier.

http://wordpress.org/support/topic/72202
[video filename=/blog/wp-content/uploads/video.mp4 shadowbox=off autostart=off title=Priest image=video.jpg /]
Beispiel Audio:
[video filename=http://chaosradio.ccc.de/archive/chaosradio_express_129.mp3 height=180 width=320 shadowbox=off autostart=off title=CRE129 /]


Beispiel:
[audio:http://chaosradio.ccc.de/archive/chaosradio_express_129.mp3]


  • Backup
    • WP-Database Backup
    • BackupWordpress
  • Online-Shop
    • siehe iX 10/15 S.88

Allgemeine Konfiguration

Pingbacks und Trackbacks

Handling

Siehe

Genehmigen

Pingbacks und Trackbacks werden bei der Genehmigung fast wie normale Kommentare behandelt.

  • Mit der globalen Einstellung "muss er von einem Administrator genehmigt werden (unabhängig von allen folgenden Einstellungen)" schaltet man den Genehmigungsprozess für Pingbacks und Trackbacks ein.
  • Die beiden weiteren globale Parameter unter "Bevor ein Kommentar erscheint" scheinen jedoch keine Auswirkung zu haben.

Avatar

Für Kommentare und den Admin-Bereich:

Für Postings:

Spezielle Konfiguration und Anpassungen

Apache

Anpassung für Links der Art "/2006/10/31/sample-post/":

<Directory "<pfad zum blog>">
        Options FollowSymLinks
        AllowOverride AuthConfig
        Order allow,deny
        Allow from all
        RewriteEngine On
        RewriteBase /blog/
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /blog/index.php [L]
</Directory>

URL

Die URLs müssen in Wordpress so eingestellt sein, dass keine URL benutzt wird, von der aus bereits eine Frame-Weiterleitung gemacht wird. Die in Wordpress konfigurierten URLs müssen also eine direkte URL sein.

Dann können im Browser alle URL genutzt werden, von denen eine Frame-Weiterleitung gemacht wird. Dabei bleibt die URL erhalten.

Hinweis: HTTP redirect noch nicht getestet.

Vorschaubilder / Thumbnails

Änderung der Größe siehe [3].

Das habe ich geändert, um auch für Bilder bis 8 Megapixel ein Thumbnail zu erzeugen in Maximalgröße 400x300:

  • wp-admin/admin-functions.php
function wp_shrink_dimensions($width, $height, $wmax = 400, $hmax = 300) {
  • wp-admin/inline-uploading.php
        if ( $imagedata['width'] * $imagedata['height'] < 8 * 1024 * 1024 ) {
                if ( $imagedata['width'] > 400 && $imagedata['width'] >= $imagedata['height'] * 4 / 3 )
                        $thumb = wp_create_thumbnail($file, 400);
                elseif ( $imagedata['height'] > 300 )
                        $thumb = wp_create_thumbnail($file, 300)

Lokalisierungsfehler berichtigen

  • wp-includes/comment-functions.php
function comments_popup_link($zero='No Comments', $one='1 Comment', $more='% Comments',
$CSSclass='', $none='Kommentare deaktiviert')


Plugins

WYSI-Wordpress

  • Einstellungen in Wordpress gemäß Anleitung im Plugin (readme.txt)
    • WYSIWYG in Wordpress deaktivieren (Einstellungen->Schreiben (nur WP 2.0) und im Profil)
    • "Organisiere meine Uploads in monats- und jahresbasierten Ordnern" deaktivieren (Einstellungen->Verschiedenes)
  • Anpassungen an wp-admin/iimage-browser.php
    • Alle $HTTP_POST_FILES in $_FILES ändern (PHP5)
    • Berechtigungen
chmod($thumbpath, 0660);
    • Default-Wert für JPEG Qualität von 70 auf 85:
value=\"85\"
    • Default-Thumbnail Größe: 400
  • Deutsche Sprache
    • de aktivieren in wordpress.js
language : "de",
    • wp-content/plugins/Wysi-Wordpress/plugins/imagebrowser/editor_plugin.js
title="Bild hochladen/einfügen (erweitert)"
  • PHP
Für große Bilder (ab ca. 7 Megapixel) muss memory_limit in php.ini auf >32MB erhöht werden
  • Table-Plugin
    • Table-Plugin installieren (siehe Links)
    • wordpress.js
plugins : "table,emotions,imagebrowser,dictionary,wordpress"
theme_advanced_disable : "table entfernen"
theme_advanced_buttons2_add : "....,separator,table"

Sicherheit

SSL

Seit WP 2.6 kann das Login und der Admin-Bereich per SSL verschlüsselt werden, siehe:

Dazu müssen einige Konstanten in wp-config.php definiert werden. Die Keys kann man z.B. hier erzeugen.

define('AUTH_KEY', 'xxyyzz');
define('SECURE_AUTH_KEY', ''aabbcc);
define('LOGGED_IN_KEY', 'ffgghh');

define('FORCE_SSL_ADMIN',true);
define('FORCE_SSL_LOGIN',true);

Bekannte Probleme

  • Drag and Drop von Bildern im Standard-Editor mit Firefox
Falls das Blog nicht im Root-Verzeichnis liegt (also z.B. in /blog), wird das /blog nicht mitgenommen. Siehe [4],[5]
Abhilfe: "Rechte Maus -> Zum Editor senden" verwenden

Tipps & Tricks

Diverse Tipps und Tricks

Neues in WP 3.x

Erweiterte Editor-Optionen in WP 2

  • per Alt-Shift-v (Firefox) oder Alt-v (IE), siehe [6].
  • noch mehr Erweiterungen siehe [7]

MySQL Character Set (UTF-8)

Tutorials

Kommentare

Kommentare von älteren Posts schließen:

UPDATE posts SET comment_status = 'closed', ping_status = 'closed' WHERE post_status = 'publish' AND post_date < '2013-01-01';

UPDATE posts SET comment_status = 'registered_only', ping_status = 'closed' WHERE post_status = 'publish' AND post_date < '2013-01-01';

Farbprofile

  • siehe c't 23/15 S.176

Update

Was übernommen werden muss

Bei einem Update von Wordpress müssen folgende Dateien und Verzeichnisse aus dem alten Pfad kopiert werden, wenn das Update nicht durch einfaches Überkopieren gemacht wird:

wp-config.php
wp-content/uploads/
wp-content/themes/   (nur die zusätzlichen)
wp-content/plugins/  (nur die zusätzlichen)

Update einer Standard-Installation

Beispiel für Einzelschritte mit DIR gleich dem Installationsverzeichnis.

su -
DIR=wp2
cd /srv/www/htdocs
rm -rf $DIR.old
cp -rp $DIR $DIR.old
chmod 700 $DIR.old
unzip /opt/pkg/wordpress/wordpress_36-de.zip
chown -R wwwrun:root wordpress
cd wordpress
cp -p ../$DIR/wp-config.php .
cp -rp ../$DIR/wp-content/uploads wp-content/
cp -rp ../$DIR/wp-content/themes/mistylook* wp-content/themes/
mv wp-content/plugins wp-content/plugins.orig
cp -rp ../$DIR/wp-content/plugins wp-content/
cp -rp wp-content/plugins.orig/* wp-content/plugins/
rm -rf wp-content/plugins.orig

Optional alte Standard-Themes wiederherstellen, die nicht mehr mitgeliefert werden:

cp -rp ../$DIR/wp-content/themes/twentytwelve wp-content/themes/

Extras

Ggf. kommen noch folgende Dateien und Verzeichnisse hinzu (z.B. beim Kartenclub Blog):

.htaccess
favicon.ico
bilder/
webalizer/
robots.txt
eb-wp-pass.php

Die Einzelschritte dazu nach dem Verschieben der Plugins:

cp -p ../$DIR/.htaccess .
cp -p ../$DIR/favicon.ico .
cp -p ../$DIR/robots.txt .
cp -rp ../$DIR/bilder .
cp -rp ../$DIR/webalizer .
cp -rp ../$DIR/eb-wp-pass.php .

Aktivieren der neuen Software

cd ..
rm -rf $DIR && mv wordpress $DIR

Upgrade der Datenbank

Danach Aufruf der Upgrade-Seite http://meinsuperduperblog.de/wp2/wp-admin/upgrade.php.

Siehe auch Upgrade und Upgrading WordPress.

Sprachdateien

Ab WP 2.5 liegen die Sprachdateien in wp-content/languages. wp-includes/languages kann dann gelöscht werden.

Tools und Dienste

  • Mit Postbot.co kann man Fotos in einem Rutsch in ein WP-Blog übertragen: siehe c't 12/14 S.168

Alternativen

Weblinks