Last active
March 9, 2016 17:49
-
-
Save aydos/c8d26f6d3117992fa825 to your computer and use it in GitHub Desktop.
A straightforward php script to convert drupal 7 nodes to hugo markdown files.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// This script is site specific | |
// You need refactor almost every line :) | |
$conn = mysqli_connect("localhost", "user", "pass", "aydosnet"); | |
if (!$conn) { | |
die("Connection failed..."); | |
} | |
mysqli_set_charset($conn, 'utf8mb4'); | |
function rmdir_recursive($dir) { | |
foreach(scandir($dir) as $file) { | |
if ('.' === $file || '..' === $file) continue; | |
if (is_dir("$dir/$file")) rmdir_recursive("$dir/$file"); | |
else unlink("$dir/$file"); | |
} | |
rmdir($dir); | |
} | |
// empty the content folder | |
if (is_dir('content')) { | |
rmdir_recursive('content'); | |
} | |
if (is_dir('data')) { | |
rmdir_recursive('data'); | |
} | |
mkdir('content'); | |
mkdir('content/siir'); | |
mkdir('content/kitap'); | |
mkdir('content/dil'); | |
mkdir('content/ceviri'); | |
mkdir('content/cevirmen'); | |
mkdir('content/sayfa'); | |
mkdir('content/gunluk'); | |
mkdir('data'); | |
mkdir('data/resim'); | |
date_default_timezone_set("Europe/Istanbul"); | |
// all node without revision check | |
$sql1 = "SELECT n.nid, n.type, n.title, n.created, n.status, fb.body_value body, a.alias FROM node n LEFT JOIN field_data_body fb ON n.nid = fb.entity_id LEFT JOIN url_alias a ON a.source = CONCAT('node/', nid) ORDER BY nid"; | |
$qry1 = mysqli_query($conn, $sql1); | |
if (mysqli_num_rows($qry1) > 0) { | |
while($row = mysqli_fetch_assoc($qry1)) { | |
$nid = $row["nid"]; | |
$type = $row["type"]; | |
$title = $row["title"]; | |
$body = $row["body"]; | |
$date = date("Y-m-d", $row["created"]); | |
$status = $row["status"]; | |
$pos = strrpos($row["alias"], "/"); | |
if ($pos === false) { | |
$url = $row["alias"]; | |
} else { | |
$url = substr($row["alias"], $pos+1); | |
} | |
//echo $type . "," . $nid . "," . $title . "," . $url . PHP_EOL; | |
//echo $body . PHP_EOL; | |
//============================================================================================================== | |
if ($type == "siir") { | |
$tarih = ""; | |
$durum = ""; | |
$aciklama = ""; | |
$kitap = ""; | |
$sql2 = "SELECT field_tarih_value FROM field_data_field_tarih WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$tarih = substr($row["field_tarih_value"], 0, 10); | |
} | |
$sql2 = "SELECT field_durum_value FROM field_data_field_durum WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$durum = $row["field_durum_value"]; | |
} | |
$sql2 = "SELECT field_aciklama_value FROM field_data_field_aciklama WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$aciklama = $row["field_aciklama_value"]; | |
} | |
$sql2 = "SELECT k.field_kitap_nid, n.title FROM node n, field_data_field_kitap k WHERE entity_id = $nid AND k.field_kitap_nid = n.nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$kitap = $row["title"]; | |
} | |
// md file for siir | |
$file = fopen("content/siir/" . $url . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "siir"' . PHP_EOL); | |
fwrite($file, 'tarih: ' . $tarih . PHP_EOL); | |
fwrite($file, 'durum: ' . $durum . PHP_EOL); | |
if (!(($durum == 1)||($durum == 2))) { | |
fwrite($file, 'draft: true' . PHP_EOL); | |
} | |
fwrite($file, 'kitap: "' . $kitap . '"' . PHP_EOL); | |
if ($aciklama != "") { | |
fwrite($file, 'aciklama: "' . $aciklama . '"' . PHP_EOL); | |
} | |
$sql2 = "SELECT field_basimlar_value FROM field_data_field_basimlar WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
while($row = mysqli_fetch_assoc($qry2)) { | |
$bid = $row["field_basimlar_value"]; | |
$kitap = ""; | |
$isim = ""; | |
$sayfa = ""; | |
$kitapurl = $bid; // will be changed | |
$sql3 = "SELECT b.field_basim_nid, n.title FROM field_data_field_basim b, node n WHERE entity_id = $bid AND b.field_basim_nid = n.nid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$kitap = $row["title"]; | |
$kid = $row["field_basim_nid"]; | |
$sql4 = "SELECT a.alias FROM node n, url_alias a WHERE n.nid = $kid AND a.source = CONCAT('node/', n.nid)"; | |
//echo $sql4; | |
$qry4 = mysqli_query($conn, $sql4); | |
if (mysqli_num_rows($qry4) > 0) { | |
$row = mysqli_fetch_assoc($qry4); | |
$pos = strrpos($row["alias"], "/"); | |
if ($pos === false) { | |
$kitapurl = $row["alias"]; | |
} else { | |
$kitapurl = substr($row["alias"], 0, $pos); | |
} | |
} | |
} | |
$sql3 = "SELECT field_basimisim_value FROM field_data_field_basimisim WHERE entity_id = $bid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$isim = $row["field_basimisim_value"]; | |
} | |
$sql3 = "SELECT field_basimmetin_value FROM field_data_field_basimmetin WHERE entity_id = $bid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$metin = $row["field_basimmetin_value"]; | |
} | |
$sql3 = "SELECT field_basimsayfa_value FROM field_data_field_basimsayfa WHERE entity_id = $bid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$sayfa = $row["field_basimsayfa_value"]; | |
} | |
// file for basim | |
if (!is_dir("content/" . $kitapurl)) { | |
mkdir("content/" . $kitapurl); | |
} | |
if (!is_dir("content/" . $kitapurl . "/basim-1")) { | |
mkdir("content/" . $kitapurl . "/basim-1"); | |
} | |
$fileb = fopen("content/" . $kitapurl . "/basim-1/" . $url . ".md", "w"); | |
fwrite($fileb, '---' . PHP_EOL); | |
fwrite($fileb, 'kitap: "' . $kitap . '"' . PHP_EOL); | |
fwrite($fileb, 'isim: "' . $isim . '"' . PHP_EOL); | |
fwrite($fileb, 'siir: "' . $title . '"' . PHP_EOL); | |
fwrite($fileb, 'sayfa: ' . $sayfa . PHP_EOL); | |
fwrite($fileb, 'draft: true' . PHP_EOL); | |
fwrite($fileb, '---' . PHP_EOL); | |
fwrite($fileb, $metin . PHP_EOL); | |
fclose($fileb); | |
} | |
} | |
$sql2 = "SELECT field_resimler_value FROM field_data_field_resimler WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
fwrite($file, 'resim: true' . PHP_EOL); | |
$row = mysqli_fetch_assoc($qry2); | |
$rid = $row["field_resimler_value"]; | |
$sanatci = ""; | |
$copy = ""; | |
$link = ""; | |
$sql3 = "SELECT field_sanatci_value FROM field_data_field_sanatci WHERE entity_id = $rid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$sanatci = $row["field_sanatci_value"]; | |
} | |
$sql3 = "SELECT field_copyright_value FROM field_data_field_copyright WHERE entity_id = $rid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$copy = $row["field_copyright_value"]; | |
} | |
$sql3 = "SELECT field_link_value FROM field_data_field_link WHERE entity_id = $rid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$link = $row["field_link_value"]; | |
} | |
// file for resim | |
$filer = fopen("data/resim/" . $url . ".yaml", "w"); | |
fwrite($filer, 'copyright: "' . $copy . '"' . PHP_EOL); | |
fwrite($filer, 'sanatci: "' . $sanatci . '"' . PHP_EOL); | |
fwrite($filer, 'link: "' . $link . '"' . PHP_EOL); | |
fclose($filer); | |
} | |
// file for siir continue | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "kitap") { | |
if ($status == 0) | |
continue; | |
$file = fopen("content/kitap/" . $url . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "kitap"' . PHP_EOL); | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "basim") { | |
$kitap = ""; | |
$kitapurl = ""; | |
$basimno = ""; | |
$isbn = ""; | |
$basimyeri = ""; | |
$tarih = ""; | |
$basimadet = ""; | |
$sql2 = "SELECT k.field_kitap_nid kid, n.title, a.alias FROM field_data_field_kitap k, node n, url_alias a WHERE k.entity_id = $nid AND k.field_kitap_nid = n.nid AND a.source = CONCAT('node/', n.nid)"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$kitap = $row["title"]; | |
$pos = strrpos($row["alias"], "/"); | |
if ($pos === false) { | |
$kitapurl = $row["alias"]; | |
} else { | |
$kitapurl = substr($row["alias"], $pos+1); | |
} | |
} | |
$sql2 = "SELECT field_basimno_value FROM field_data_field_basimno WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$basimno = $row["field_basimno_value"]; | |
} | |
$sql2 = "SELECT field_isbn_value FROM field_data_field_isbn WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$isbn = $row["field_isbn_value"]; | |
} | |
$sql2 = "SELECT field_basimyeri_value FROM field_data_field_basimyeri WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$basimyeri = $row["field_basimyeri_value"]; | |
} | |
$sql2 = "SELECT field_tarih_value FROM field_data_field_tarih WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$tarih = substr($row["field_tarih_value"], 0, 10); | |
} | |
$sql2 = "SELECT field_basimadet_value FROM field_data_field_basimadet WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$basimadet = $row["field_basimadet_value"]; | |
} | |
if (!is_dir("content/kitap/" . $kitapurl)) { | |
mkdir("content/kitap/" . $kitapurl); | |
} | |
$file = fopen("content/kitap/" . $kitapurl . "/basim-" . $basimno . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "basim"' . PHP_EOL); | |
fwrite($file, 'isbn: "' . $isbn . '"' . PHP_EOL); | |
fwrite($file, 'basimno: ' . $basimno . PHP_EOL); | |
fwrite($file, 'basimyeri: "' . $basimyeri . '"' . PHP_EOL); | |
fwrite($file, 'tarih: ' . $tarih . PHP_EOL); | |
fwrite($file, 'adet: ' . $basimadet . PHP_EOL); | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "dil") { | |
$ori = ""; | |
$short = ""; | |
$sql2 = "SELECT field_lang_ori_value FROM field_data_field_lang_ori WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$ori = $row["field_lang_ori_value"]; | |
} | |
$sql2 = "SELECT field_lang_short_value FROM field_data_field_lang_short WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$short = $row["field_lang_short_value"]; | |
} | |
$file = fopen("content/dil/" . $url . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "dil"' . PHP_EOL); | |
fwrite($file, 'ori: "' . $ori . '"' . PHP_EOL); | |
fwrite($file, 'short: "' . $short . '"' . PHP_EOL); | |
fwrite($file, 'url: "' . $url . '"' . PHP_EOL); | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "cevirmen") { | |
$file = fopen("content/cevirmen/" . $url . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "cevirmen"' . PHP_EOL); | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "ceviri") { | |
$siir = ""; | |
$dil = ""; | |
$dilurl = ""; | |
$cevirmen = ""; | |
$tarih = ""; | |
$sql2 = "SELECT s.field_siir_nid sid, n.title FROM field_data_field_siir s, node n WHERE entity_id = $nid AND s.field_siir_nid = n.nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$siir = $row["title"]; | |
} | |
$sql2 = "SELECT d.field_dil_nid did, n.title, a.alias FROM field_data_field_dil d, node n, url_alias a WHERE entity_id = $nid AND d.field_dil_nid = n.nid AND a.source = CONCAT('node/', n.nid)"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$dil = $row["title"]; | |
$pos = strrpos($row["alias"], "/"); | |
if ($pos === false) { | |
$dilurl = $row["alias"]; | |
} else { | |
$dilurl = substr($row["alias"], $pos+1); | |
} | |
} | |
$sql2 = "SELECT c.field_cevirmen_nid cid, n.title FROM field_data_field_cevirmen c, node n WHERE entity_id = $nid AND c.field_cevirmen_nid = n.nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$cevirmen = $row["title"]; | |
} | |
$sql2 = "SELECT field_tarih_value FROM field_data_field_tarih WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$tarih = substr($row["field_tarih_value"], 0 , 10); | |
} | |
// md file for ceviri | |
if (!is_dir("content/ceviri/" . $dilurl)) { | |
mkdir("content/ceviri/" . $dilurl); | |
} | |
$file = fopen("content/ceviri/" . $dilurl. "/" . $url . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "ceviri"' . PHP_EOL); | |
fwrite($file, 'siir: "' . $siir . '"' . PHP_EOL); | |
fwrite($file, 'dil: "' . $dil . '"' . PHP_EOL); | |
fwrite($file, 'cevirmen: "' . $cevirmen . '"' . PHP_EOL); | |
$sql2 = "SELECT field_resimler_value FROM field_data_field_resimler WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
fwrite($file, 'resim: true' . PHP_EOL); | |
// do nothing | |
/*$row = mysqli_fetch_assoc($qry2); | |
$rid = $row["field_resimler_value"]; | |
$sql3 = "SELECT field_sanatci_value FROM field_data_field_sanatci WHERE entity_id = $rid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$sanatci = $row["field_sanatci_value"]; | |
} | |
$sql3 = "SELECT field_copyright_value FROM field_data_field_copyright WHERE entity_id = $rid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$copy = $row["field_copyright_value"]; | |
} | |
$sql3 = "SELECT field_link_value FROM field_data_field_link WHERE entity_id = $rid"; | |
$qry3 = mysqli_query($conn, $sql3); | |
if (mysqli_num_rows($qry3) > 0) { | |
$row = mysqli_fetch_assoc($qry3); | |
$link = $row["field_link_value"]; | |
}*/ | |
} | |
fwrite($file, 'url: "' . $dilurl . '/' . $url . '"' . PHP_EOL); | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "page") { | |
$file = fopen("content/sayfa/" . $url . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "sayfa"' . PHP_EOL); | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, 'draft: true' . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "gunluk") { | |
$file = fopen("content/gunluk/" . $url . ".md", "w"); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, 'title: "' . $title . '"' . PHP_EOL); | |
fwrite($file, 'type: "gunluk"' . PHP_EOL); | |
fwrite($file, 'date: ' . $date . PHP_EOL); | |
fwrite($file, 'draft: true' . PHP_EOL); | |
fwrite($file, '---' . PHP_EOL); | |
fwrite($file, $body); | |
fclose($file); | |
} | |
//============================================================================================================== | |
if ($type == "hikmet") { | |
// do nothing! | |
/*$kaynak = ""; | |
$sql2 = "SELECT field_kaynak_value FROM field_data_field_kaynak WHERE entity_id = $nid"; | |
$qry2 = mysqli_query($conn, $sql2); | |
if (mysqli_num_rows($qry2) > 0) { | |
$row = mysqli_fetch_assoc($qry2); | |
$kaynak = $row["field_kaynak_value"]; | |
}*/ | |
} | |
} | |
} | |
mysqli_close($conn); | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment