If you see yourself confronted with the following task, here is a quick receipe: Setup a wordpress instance for us and import all our content from system x. In this case we focus on the import part. ‘System x’ was a somewhat customized typo3 setup. I got myself an ordinatry editors login to identify the articles which had to be migrated. After some fulltext searching and access to phpMyAdmin I identified the area, where I hat to extract the content from. It boiled down to the table tt_content. At this point you can forget about typo3. All articles could be extracted with this SQL query:
SELECT uid, pid, header, bodytext FROM tt_content WHERE header<>'' AND CType='editorialcontent';
Export the content using phpMyAdmin’s export to PHP array functionality. You end up with a file like shown in the screenshot. If you have HTML-content and doubt, if this could be valid php, save the file under export.php and do ‘$ php -l export.php’ – it says ‘No syntax errors.’ – Good.
OK, next you need to get familiar with wp_insert_post(). You need to loop your exported content over it. And that is it. This is how I did it:
- Create a directory in your wordpress setup ‘wp-import’.
- Copy/move your export.php array into this directory.
- And execute the following self-explanatory file located also in your wp-import directory: import.php
I just had the case with mySQL where I needed to aggregate via GROUP BY but at the same time concatenate the content in the body-field.
The test result (see image) came using:
SELECT m.template_id, m.site, m.path, m.name, tf.body FROM menu AS m
LEFT JOIN template_fields AS tf
WHERE m.type='template' AND m.inactive=0
The solution to get the concatenated content:
SELECT m.template_id, m.site, m.path, m.name, GROUP_CONCAT(tf.body SEPARATOR ' ') AS body FROM menu AS m
LEFT JOIN template_fields AS tf
WHERE m.type='template' AND m.inactive=0 GROUP BY m.template_id
It seems, that being upset is a good motivator wrinting blogposts… Sorry for being lazy for such a long time.
Currently I am selling lots of ‘old stuff’ that has not being used for 2 years, among other things also my iPhone 3GS advertising it to local boards such as www.quoka.de. In short it goes like this:
- Viallain askes if the IPhone is still available. I answer ‘yes, come bring cash and pick it up’.
- Villain: Can you send it, I pay for the shipping. Me: OK that’s x bucks extra. Fine.
- Villain: Please send me your interantional bank-account number, which I did, because it is as safe as giving out your local bank account number and any debit actions can be objected to for 6 weeks at your bank.
- And now it gets weird: I receive a fake bank email (see below) saying, the money is in transit. By the way it had a BIC from another account – copy&paste error. Villain is also lazy and probably a bit disorganized and stupid too. I can get the money as soon as I send the package to an address in Italy (see map and Streetviev of the house below – probably the villain’s house, not sure but likely) and provide tracing number of the package. At this point it would be fun to return a fake one or a ticking package or some of the other 100 jokes jumping to my mind at this moment ;), but I have currently no time to do that.
- If you disagree with this procedure, villain gets angry. Maybe this works in some % of the cases.
- End of communication.
Here are some screens of emails. Have fun:
First contact email
Not from the bank
Note from the bank 2
This is the address in Streetview.
Email addreses I got spammed so far:
- surely more to come…
Update: There is a webinterface, see http://abuse.yahoo.com or forward phishing-email to firstname.lastname@example.org.
Next steps: Informed local commissario di San Martino, Yahoo abuse dept. and Nordea Bank – have fun getting busted, loser!
Update: Received a cheque for my pinball table (Dirty Harry, abvertised for 1500EURs). Rest was meant to send container with ‘some other things’ to Urkraine, I should pay for the shipping with the cheque. This is it. Find the faults:
Cheque sent via mail
Awesomely entertaining shit!