Übersetzungen dieser Seite:

Blog-Migration (Serendipity nach Wordpress)

Dieser Artikel fasst zusammen, was für die Migration von nodomain.cc auf Wordpress zu tun ist

  • Installation Wordpress: http://www.wordpress.org/
    • engl. Version mit dt. Sprachdatei (davon erwarte ich mir, dass die Software aktueller ist)
  • Einfügen von Dummy-Einträgen in die serendipity_entries, damit die IDs im neuen Blog wieder stimmen (ansonsten gehen die alten Permalinks kaputt), für alle fehlenden IDs wiederholen. Excel ist beim Herausfinden der fehlenden IDs eine gute Hilfe :-)
    insert into `serendipity_entries` (id, title, timestamp, body, comments, trackbacks, extended, exflag, author, authorid, isdraft, allow_comments, last_modified, moderate_comments) values ('228', 'dummy', '1106685485' , 'dummy', 0, 0, '', 0, 'Fabian', 1, 'true', 'false', '1106685485', 'false');
  • Beispiel-Einträge von Wordpress löschen und den AUTO_INCREMENT der Tabelle zurücksetzen
    ALTER TABLE `wordpress`.`wp_posts` AUTO_INCREMENT = 1;
  • Code des Importers anpassen: beim Select-String für die Originalposts habe ich noch ein ORDER BY id hinzugefügt, da nur so meine Permalinks konsistent bleiben
  • Einträge etc. importieren
  • Altes "uploads"-Verzeichnis kopieren
  • RSS-Feeds-Redirects eintragen
  • Archives-Redirects eintragen
  • Permalink-Struktur anpassen:
    /%year%/%monthnum%/%day%/%post_id%-%postname%.html
  • Plugins installieren: SEO-Pack, Google Sitemaps, …
  • die Dummy-Einträge wieder löschen bzw. den Draftstatus anpassen
  • Config für lighttpd:
    ...
    # nodomain.cc
    ...
    
    	var.wpdir = "/"
    	# wenn != FeedBurner
    	$HTTP["useragent"] !~ "FeedBurner" {
    	    url.redirect = (
    		"archives/(.*)" => "/$1",
     		"feeds/index.rss2$" => "/feed",
    		"feeds/index.rss1$" => "/feed",
    		"feeds/index.rss$" => "/feed",
    		"feeds/atom10.xml$" => "/feed",
    		"feeds/atom.xml$" => "/feed",		
    		"feeds/comments.rss2$" => "/comments/feed",
    		"feed$" => "http://feeds.feedburner.com/nodomain"
    	    )
    	}
    	
    	# wenn = FeedBurner
    	url.redirect = ( "feeds/index.rss2" => "/feed",
    			 "feeds/index.rss1" => "/feed",
    			 "feeds/index.rss" => "/feed"
    		        )
    
    	url.rewrite-once = (
        	    "^" + wpdir + "(wp-.+).*/?" => "$0",
        	    "^" + wpdir + "(sitemap.xml)" => "$0",
        	    "^" + wpdir + "(sitemap.xml.gz)" => "$0",	    
    	    "^" + wpdir + "xmlrpc\.php\?(.*)$" => "$0",
        	    "^" + wpdir + "(xmlrpc.php)" => "$0",  
    	    "^" + wpdir + "uploads/(.*)" => "$0",
    	    "^" + wpdir + "keyword/([A-Za-z_0-9-])/?$" => wpdir + "index.php?keyword=$1",
    	    "^" + wpdir + "(.+)/?$" => wpdir + "index.php/$1"
    	)
    
    #	magnet.attract-physical-path-to = ( server.document-root + "rewrite.lua" )
    
    #	url.access-deny = ( ".tpl", ".inc.php", ".sql", ".db" )
    	server.error-handler-404 = "/index.php?error=404"
     ...