Geeklog Importer

While migrating my website from geeklog to wordpress i stumbled upon the geeklog2wp importer from justindave (thanks’ to justindave). This is a very nice and handy piece of code, but unfortunately, some parts are not importet (links, static pages, and images). Beeing a programmer, i rather spend some weeks implementing an importer, than doing any copy paste between my old and my new website …

imported features are:

  • categories
  • users
  • posts
  • static pages
  • comments
  • links
  • article images

further a list of posts which should be checked for geeklog related elements is provided.

The extended version of the original importer can be downloaded from this blog: geeklog.php.

i have tested it with geeklog 1.4.1 vs wordpress 2.6.3. if you have used it for different versions, please leave a comment.



13 Responses to “Geeklog Importer”

  1. Dave Miller Says:

    You should probably add this as an attachment to the bug report on WordPress’ Trac system. (Or at least add a comment there pointing them at the copy here).

  2. Don Winner Says:

    I’m trying to use your importer to convert my website from Geeklog to WordPress. It doesn’t seem to be working. My GL site is running on version 1.4.1 and I have WordPress version 2.7 running. Is there something I’m doing wrong?

  3. tobiasstrixat Says:

    hi don,

    could you please give me a more detailed error description.

    best regards,

  4. Don Winner Says:

    Sure – and thanks for getting back to me;

    For starters, I figured out where I needed to put the file.

    The database for my existing site is very large with 441.2 MiB total in the tables. I have almost 8,000 articles that I want to import and migrate to WordPress.

    I copied the geeklog.php file into the “{wordpress}/wp-admin/import/” directory, but when I then went there to try to use the script I had this error waiting for me:

    Parse error: syntax error, unexpected T_STATIC, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or ‘}’ in /home/panamax/public_html/wordpress/wp-admin/import/geeklog.php on line 56

    In the geeklog.php file at line 56 there’s this:

    static private function read_url($url) {

    Any comments or ideas?
    Has anyone else successfully converted a GL 1.4.1 site to WP 2.7?
    Any help would be greatly appreciated. Thanks.


  5. tobiasstrixat Says:

    parse errors like this are independent from wp or gl – they are usually pointing towards php coding errors/problems. could you please give me your php version.

    what do you mean by “when I then went there to try to use the script”? the regular way to call an importer in wordpress is in the admin view to go to manage->import->geeklog importer. (just checking)

    you have quite a large number of articles – just in case please change the following two lines at the top of the script:

    ini_set(‘memory_limit’, ‘128M’);

    to numbers large enough to deal with your dataflood. especially memory limit should be at least doubled or tribbled …


    ps.: i have double checked the current geeklog.php file on my system – i couldn’t reproduce your error. my system is running php 5.2.6-2.

  6. Don Winner Says:

    General server information:
    Operating system Linux
    Kernel version 2.6.9-78.0.1.ELsmp
    Machine Type i686
    Apache version 1.3.37 (Unix)
    PERL version 5.8.8
    PHP version 4.4.6
    MySQL version 4.1.22-standard
    cPanel Build 11.24.4-RELEASE 32603
    Theme cPanel X v2.6.0
    cPanel Pro 1.0 (RC1)

  7. tobiasstrixat Says:

    ok – its not about gl or wordpress versions – its about your php version. while php 4.4.6 is sufficient as minimum requirement for wordpress, i have programmed the importer using php version 5. php5 provides a much richer support for object oriented programming (compare with

    i would strongly suggest that you upgrade your system to php 5.x. development for php 4 is not continued and by now, no new security fixes will appear any more (see

    sorry that i couldn’t be of further help,

  8. Don Winner Says:

    No, you’ve been a great help. I’m calling my host admin right now to get them to upgrade php. Thanks. I’m sure I’ll be back once that’s done, and if the importer works I’ll let you know. Thanks again.

  9. tobiasstrixat Says:

    that would be great – especially the performance with your large number of articles would be interesting.

    good luck!

  10. Don Winner Says:

    What do you think I should set the time and memory limits to?

    The primary reason for doing this is the poor performance of Geeklog for SEO. I’ve tried everything I can think of, but with almost 8,000 articles I “should” be ranked #1 in Google for keyword search “Panama” and I’m not – rather, I’m on page 7 which is totally unacceptable.

    Yeah, I’m concerned about the 8,000 article import as well.

    I just asked the hosting company admins to upgrade to PHP 5 or better. I’ll let you know what happens once that’s done. Thanks again.


  11. winnerdk Says:

    OK, the sys admins just updated my php to version 5.2.8 and as soon as I went to the import page, there it was. I selected Geeklog and the script ran, but when it runs it’s not seeing any of the data. “there are no links, there are no stories…” etc. I checked and double checked the database information, ran the script twice more, still nothing. Any ideas? Ah, and I set the time and memory limits to incredibly high numbers (but that has not mattered yet.)

  12. tobiasstrixat Says:

    i have been away for a few days. i will have a look at the problem in the next days – sorry for the delay.

    best reagards,

  13. Kirk McElhearn Says:

    The script is not found when I go to the link you provided…

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: