Archiv der Kategorie: Sonstiges

Artikel von Beta-Blogger nach WordPress umziehen

So, ich habe es geschafft, alle Artikel des alten Blog-Systems Beta-Blogger zu exportieren und diese in WordPress wieder zu importieren. Da ich keine direkte Übertragungsmöglichkeit gefunden habe, habe ich den Weg über CSV gewählt. Es gibt ein halbwegs brauchbares CSV-Import-Plugin und die Artikel aus dem alten Blog ließen sich mit dem folgenden PHP-Script als CSV exportieren:

<?php
require 'bb_core.php';

/* see http://de.php.net/manual/de/function.htmlentities.php#90111 */
function htmlButTags($str) {
  // Take all the html entities
  $caracteres = get_html_translation_table(HTML_ENTITIES);
  // Find out the "tags" entities
  $remover = get_html_translation_table(HTML_SPECIALCHARS);
  // Spit out the tags entities from the original table
  $caracteres = array_diff($caracteres, $remover);
  // Translate the string....
  $str = strtr($str, $caracteres);
  // And that's it!
  // oo now amps
  $str = preg_replace("/&(?![A-Za-z]{0,4}w{2,3};|#[0-9]{2,3};)/","&amp;" , $str);
  return $str;
}

$entries = $blog->get_items('entry', NULL, 1000) or print $lang->no_entries;

print("wp_title|wp_post_date|wp_category|wp_content|field1|field2|field3
");
foreach ($entries as $entry) {
  // Tags: Leerzeichen in "" ersetzen und " entfernen
  $tags =  preg_replace('/"(w+) (w+)"/', '$1=$2', $entry->tags);
  // Tags durch Kommata trennen
  $tags = str_replace(" ", ", ", $tags);
  // oben ersetzte Leerzeichen zurück wandeln
  $tags = str_replace("=", " ", $tags);
  $title = htmlButTags($entry->title);
  $date = strftime("%Y-%m-%d %T", $entry->date);
  $body = preg_replace('/
/', '&#x000A', htmlButTags($entry->body));
  $body = preg_replace('/src=["']media2/', 'src="/wp/wp-content/uploads/2009/09', $body);
  // Pipes müssen escaped werden
  $body = preg_replace('/|/', '|', $body);
  $body2 = preg_replace('/
/', '
', htmlspecialchars($entry->body));
  $teaser = htmlButTags($entry->topic);
  $category = htmlspecialchars($entry->category);

  print("$title|$date|$category|$body|$tags|$teaser|
");

}

?>

Damit die Leerzeichen, die beim Export mit ‚&#x000A‘ escaped wurden, beim Import entsprechend wieder hergestellt werden, musste ich das CSV-Import-Plugin noch geringfügig anpassen und eine Zeile einfügen:

$post_content = str_replace('&#x000A', "
", $post_content);

(Das komplette, angepasste Plugin gibt es hier.)

Leider kann das Import-Plugin keine Tags importieren. Ich habe diese daher im ersten Benutzerfeld abgelegt, so dass sie dann beim Editieren des Artikels per Cut & Paste in das Tag-Feld übertragen werden können. Das ist sicherlich nicht der Hit und bedeutet, dass man jeden Artikel anfassen muss. Aber bei 34 Artikeln ist das noch machbar.

Firefox 3.0 – alles anders?

Firefox-Logo

Seit einiger Zeit ist der Firefox in der Version 3.0 veröffentlich. Nun habe ich es auch gewagt, von der 2.0 auf die neuste Version umzusteigen – und schon geht der Ärger los!

Man könnte fast behaupten, dass dies die unausgereifteste Release ist, seit ich Mozilla oder Firefox benutze – und das ist schon verdammt lange. Unter Windows und aktuellen Linux-Distros lässt er sich noch problemlos installieren, aber bei älteren Linux-Versionen muss man wohl bei der 2.0er bleiben, da dort diverse Bibliotheken fehlen und es bislang keinen Build mit statisch gelinkten Bibliotheken gibt.

Ein recht einfach zu behebendes Problem ist die Tatsache, dass auch in der deutschen Version des freien Browsers die Google-Suche auf google.com eingestellt ist und man somit keine deutschen Ergebnisse bekommt. Zum Glück gibt es unter http://mycroft.mozdev.org/google-search-plugins.html jede Menge Search-Engine-Plugins, darunter auch &#8222;Google DE – Das Web&#8220;, &#8222;Google DE – Seiten auf Deutsch de-DE&#8220; usw. (Hinweis zuerst gefunden im Blog von Felix Wunderwald)

Ein Aufreger ist auch, dass es wohl Probleme mit dem DOM-Inspector beim Update unter Windows gibt. Will man ihn benutzen, bekommt man die Meldung, er sei nicht installiert oder deaktiviert. Ich hatte ihn jedoch installiert – zumindest hatte ich &#8222;Benutzerdefiniert&#8220; gewählt. Allerdings wurde ich nicht nach weiteren Einstellungen gefragt… Folgt man dem Link in der Fehlermeldung, so bekommt man den Hinweis, man müsse als Abhilfe den Browser wieder deinstallieren, das übrig gebliebene Verzeichnis löschen und dann die Installation erneut durchführen. Das klappt, auch wenn man wiederum nicht nach den benutzerdefinierten Einstellungen gefragt wird – und man danach wieder sämtliche Plugins wie den Flashplayer usw. neu installieren darf!

Ein weiters Ärgernis, für dass ich noch eine Lösung oder die Ursache finden muss: Unter Windows fragt der FF beim Schließen jetzt, ob die zzt. geöffneten Tabs beim nächsten Mal wieder hergestellt werden sollen. Unter Linux gibt es diese Frage nicht, hier sieht man leider noch das alte Verhalten.

Dies ist sicher nicht das Ende der Fahnenstange. Wenn ich den 3.0er weiter benutze, werden mir sicher noch weiter Unannehmlichkeiten auffallen. Eines steht jetzt jedoch schon fest: Mit dem anscheinend etwas übereilten Release hat sich die Firefox-Gemeinde keinen Gefallen getan.