Ping Problem?

Since version 2.7 of WordPress, there have been several issues that Pingbacks in WordPress don't work. WordPress works with it in the request-function (wp-includes/cron.php), not to be confused with the wp-cron.php. There is a time limit of 0:01 seconds set, which is not sufficient under all conditions. It is known and the developers of WordPress have not changed the entry intentionally, with the reference that it runs smoothly under many configurations, see Trac ticket 8923.

This problem in 2.8 continues to be an issue in various installations. Who wants to change the value should set it to 1, and should no longer have problems. All other users can only hope that it will be changed in 2.8.1.

Original code in WordPress 2.8

$cron_url = get_option( 'siteurl' ) . '/wp-cron.php?doing_wp_cron';
wp_remote_post( $cron_url, array('timeout' => 0.01, 'blocking' => false, 'sslverify' => apply_filters('https_local_ssl_verify', true)) );

after change the value

$cron_url = get_option( 'siteurl' ) . '/wp-cron.php?doing_wp_cron';
wp_remote_post( $cron_url, array('timeout' => 1, 'blocking' => false, 'sslverify' => apply_filters('https_local_ssl_verify', true)) );

Caution When Updating To WordPress 2.8

Thanks to Heiko of WordPress Deutschland and Code Styling Project who brought up the problem on WordPress Deutschland:

Users reporting me, that they are missing files, after they automatically updated to WordPress version 2.8 and there were a problem while updating. I checked out the WordPress Trac and found a brand new record, which confirms this: Trac ticket # 10140

What happened and what are the conditions?

On one hand, the upgrade process has to be so far that the files were downloaded and unpacked. If anything goes wrong after these steps (wrong write permissions, etc.), the upgrade process makes a rollback and usually clears the downloaded files without any problems.

So much for theory. The practice shows, however, in exactly this case, because of a bug, previous existing installation files accidentally get deleted too, so the blog will no longer work!

What to do if already happened?

The best thing to do is to upload the old version completely via FTP. If the files are no longer available, you may download the old version from the archives of
You should also verify if the wp-config.php needs to be adjusted, because this may also be deleted.

What lesson did we learn?

It’s not just a phrase, when we repeatedly emphasize, before you upgrade:

1. Create a current backup of the database
2. Create a current backup of all files on your web server.

As convenient as an automatic update can be, there is always a risk. If the web server is configured properly and is maintained well, there shouldn’t a problem arise. But the most users do not know or want to know if that’s the case. Therefore, the safest way is still to upload the new version via FTP.
Anyone who knows how everything has to be configured, I mean the pros among you, will surely continue to use the automatic upgrade.

What’s next?

This problem will be fixed, according to WordPress Trac entry, with version 2.8.1, and automatic upgrade will work again without any problems. But we think it is very important that the WordPress-Team let the users know about the problem and not just fix it in version 2.8.1 and be quiet about it. It will avoid a lot frustration!

But please don’t forget about your backup again, when you use 2.8.1 or future versions. It’s better “I have” than “if I would have”.

We still hope that you all continue to enjoy WordPress as we do, and we will continue to do our best to contribute you as quickly as possible with new information.

Define Your Own WordPress Action Hooks

WordPress is based on the so-called Hook-System. This serves WordPress, and all extensions to involve functions in a certain place. The Hooks are not only to hook, but can also be used in custom extensions and thus create a better overview and offer additional interfaces for more possibilities to develop. Especially the second option is interesting when you create a theme, which aims to offer a variety of interfaces, or create a Plugin which can be expand by other authors or serve as a framework.
Continue reading …

Set Meta Links For WordPress Plugins

In the past I explained in the article „How To Improve WordPress Plugins“ , how you can expand Plugins with useful functions and therefore optimize their usage. One of the suggestions was a simple link to the options page of your Plugin.
With WordPress 2.8 the Plugin page will be a little bit different and now there will be a hook, which you can use to enter a link, which is even more convenient.
Continue reading …

Joomla to WordPress – Content Converter!

More and more people using WordPress as CMS nowadays and replacing systems like Joomla on their website. Marco from provides a handy script to convert your Joomla content to your WordPress installation.


One Click Solution?

No, for sure not. This process is not just click and done. Users, who don't have any experience with PHP shouldn't try it out and rather ask someone who has some knowledge of PHP.

How to use the converter?

First adjust the config.php and upload all files to your webserver.

* Configuration for your Database and stuff

$SQL['HOST'] = "sql.lan";   // Normaly localhost
$SQL['USR'] = "DBUser";
$SQL['PWD'] = "12345678";

// Joomla realted ->
$SQL['JOOMLA_DB'] = "solariz_de"; // Database name of Joomla
$SQL['JOOMLA_PRE'] = "jos_";    // Table Prefix of Joomla Tables

// WordPress realted ->
$SQL['WP_DB'] = "solariz_wp"; // Database name of WordPress
$SQL['WP_PRE'] = "wp_";       // Table Prefix of WordPress Tables

$DEFAULTS['POST_AUTHOR']   = 1; // User ID of target Author (1 usualy admin)
$DEFAULTS['POST_CATEGORY'] = 5; // I suggest to create a category named e.g. Import

The possibilities for adaptation are indicated by the comments. It is important that POST_AUTHOR and POST_CATEGORY ID`s in WordPress exist. So first create a blank WordPress installation. Ideally, without any content so there won't be any conflict. Now create a category and a user and put in their ID`s in the config.php of the converter. For example user ID 1 (usually admin) and a category called "Import" with the ID 5.

The converter finds all the Joomla Article belonging to this category. If you have many categories in Joomla you can limit the using query in index.php to select just certain articles of a specific category, and then you can run the script once for each category.

In index.php at line #46, you can find the responsible query to read the articles:

// WHERE `sectionid`='1'
$query = "SELECT * FROM `".$SQL['JOOMLA_PRE']."content` ORDER BY `created`";

Here you can, as mentioned above, add a WHERE statement to limit the selecting articles.

WordPress uses multiple tables in order to save the entries. In order to avoid a conflict, you should ensure that all articles in the target WP installation are previously deleted.

The Conversion

After you adjust the script to your settings, you can run index.php . If you have any suggestions for a better solution or better code, please leave a comment and Marco will try to implement the improvements.

You can download the Script at the bottom of his German article. Alternativ, but not under maintenance: very simple converter Script helping to migrate Joomla to WordPress

WordPress Plugin Compatibility Checker

Right before the upcoming WordPress 2.8 you also should check out if all your Plugins are compatible with Version 2.8 before you upgrade. There is a great website which includes over 5000 Plugins, where you can see if the Plugin will work with WordPress 2.8.

Also very interesting for all Plugin developer, you can see in detail, why your Plugin is not working with the newest version or what can be done better. Really informational! Check it out!

The only thing what would make this even better, if all the Plugins would have a number and this list would have an additional column, where you see the number of a Plugin, which is not compatible with the according Plugin. But I guess, that would be too much work.

But I have to say, respect to the guys of BraveNewCode, that they keep this list up to date! Chapeau!