{"id":940,"date":"2010-06-12T16:38:44","date_gmt":"2010-06-12T14:38:44","guid":{"rendered":"http:\/\/tom.scholten.nu\/weblog\/?p=940"},"modified":"2010-06-12T16:38:44","modified_gmt":"2010-06-12T14:38:44","slug":"multilanguage-blogging-differently","status":"publish","type":"post","link":"https:\/\/tom.scholten.nu\/weblog\/2010\/06\/12\/multilanguage-blogging-differently","title":{"rendered":"Multilanguage blogging, differently"},"content":{"rendered":"<p><wpg2>3110<\/wpg2>Since last week I&#8217;ve changed something to the site, but not very visible \ud83d\ude42 I transferred my multilingual blogs from Polyglot to <a href=\"http:\/\/wpml.org\">WPML<\/a>. Some indicate it to be a possible disadvantage as every language gets its own posts, but this is more of a convenience, every time you don&#8217;t translate something you won&#8217;t bother someone with it. <b>How&#8217;s that?<\/b> Well if I were to post something on my Dutch blog but don&#8217;t translate you wouldn&#8217;t see it (as most likely you wouldn&#8217;t read it anyway). In addition you can see for yourself if something exists in your language, it&#8217;s clearly visible on the dashboard!.<\/p>\n<p>If you also want to try it out, be sure to check <a href=\"http:\/\/wpml.org\/documentation\/support\/compatibility-issues-with-other-plugins\/\">WPML compatibility<\/a>. Coming from Polyglot myself I&#8217;ve written a very Q&#038;D convertor which only creates output for a SQL loadfile, as always, use at your own risk.<br \/>\n<!--more--><br \/>\nPHP code for polyglot_convert.php<\/p>\n<ul>\n<p><code>$database=\"yourdb\";<br \/>\n$dbuser=\"youruser\";<br \/>\n$dbpassword=\"yourpw\";<br \/>\n# We need 2 functions from WordPress' wp-includes\/formatting<br \/>\ninclude(\"..\/wordpress\/wp-includes\/formatting.php\");<\/p>\n<p>        mysql_connect(\"localhost\",$dbuser,$dbpassword);        $query='select * from wp_posts where (post_title like \"%lang_nl%\" OR post_content like \"%lang_nl%\") AND post_status=\"publish\" AND post_type=\"post\" ';<br \/>\n        $result=mysql_query($query);<br \/>\n        $i=0;<br \/>\n        while ($i &lt; mysql_numrows($result)) {<br \/>\n                $title_nl=addslashes(preg_replace(\"\/\\[.?lang_nl\\]\/\",\"\",preg_replace(\"\/\\[lang_en\\].*\\[\\\/lang_en\\]\/\",\"\",mysql_result($result,$i,'post_title'))));<br \/>\n                $title_en=addslashes(preg_replace(\"\/\\[.?lang_en\\]\/\",\"\",preg_replace(\"\/\\[lang_nl\\].*\\[\\\/lang_nl\\]\/\",\"\",mysql_result($result,$i,'post_title'))));                $title_en_short=$title_en;<br \/>\n                if ($title_nl == $title_en ) { $title_en_short=$title_en_short.\"2\"; }<\/p>\n<p>                $content_nl=mysql_result($result,$i,'post_content');<br \/>\n                $content_nl=preg_replace(\"\/\\[.?lang_nl\\]\/\",\"\",$content_nl);<br \/>\n                $content_nl=preg_replace(\"\/\\[lang_en\\].*?\\[\\\/lang_en\\]\/sU\",\"\",$content_nl);<br \/>\n                $content_nl=addslashes($content_nl);<\/p>\n<p>                $content_en=mysql_result($result,$i,'post_content');<br \/>\n                $content_en=preg_replace(\"\/\\[.?lang_en\\]\/\",\"\",$content_en);<br \/>\n                $content_en=preg_replace(\"\/\\[lang_nl\\].*?\\[\\\/lang_nl\\]\/sU\",\"\",$content_en);<br \/>\n                $content_en=addslashes($content_en);<\/p>\n<p>                echo \"UPDATE wp_posts SET post_title = '\".$title_nl.\"', post_content = '\".$content_nl.\"' WHERE ID=\".mysql_result($result,$i,'ID').\"; \",\"\\n\";<br \/>\n                echo \"INSERT INTO wp_posts SET post_title = '\".$title_en.\"', post_content = '\".$content_en.\"', post_date = '\".mysql_result($result,$i,'post_date').\"', post_date_gmt = '\".mysql_result($result,$i,'post_date_gmt').\"', post_author = ''.mysql_result($result,$i,'po<br \/>\nst_author').\"', post_category = '\".mysql_result($result,$i,'post_category').\"', post_name = '\".sanitize_title_with_dashes($title_en_short).\"'; \",\"\\n\";<\/p>\n<p>                echo \"insert into wp_icl_translations set element_type='post_post', element_id=LAST_INSERT_ID(), trid=\".mysql_result($result,$i,'ID').\", language_code='en', source_language_code='nl';\",\"\\n\";<\/p>\n<p>                $i++;<\/p>\n<p>        }<br \/>\n<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>3110Since last week I&#8217;ve changed something to the site, but not very visible \ud83d\ude42 I transferred my multilingual blogs from Polyglot to WPML. Some indicate<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[9],"tags":[],"class_list":["post-940","post","type-post","status-publish","format-standard","hentry","category-algemeen-en"],"_links":{"self":[{"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/posts\/940","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/comments?post=940"}],"version-history":[{"count":1,"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/posts\/940\/revisions"}],"predecessor-version":[{"id":941,"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/posts\/940\/revisions\/941"}],"wp:attachment":[{"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/media?parent=940"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/categories?post=940"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tom.scholten.nu\/weblog\/wp-json\/wp\/v2\/tags?post=940"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}