function parseContent($content, $fileName, $code) { //save("./tmp.html", $content); echo "parseContent : {$fileName} >> "; /* 文章名字,作者,学位授予单位,来源数据库,学位授予年度,下载次数,预览地址 */ $articleName = parseArticleName($content); $authors = parseAuthor($content); $schools = parseSchool($content); $origin = parseOrigin($content); $years = parseYear($content); //var_dump($origin);exit; //$downCount = parseDownCount($content); $previewPage = parsePreviewURL($content); $abstractUrl = parseAbstractUrl($content); //echo count($articleName) . " >> " . count($authors) . " >> " .count($schools) . " >> " .count($origin) . " >> " .count($years) . " \n"; $saveContent = ""; $len = count($articleName); for ($i = 0; $i < $len; $i++) { $articleNm = win_dir_format($articleName[$i]); $item = "{$articleNm}\t{$authors[$i]}\t{$schools[$i]}\t{$origin[$i]}\t{$years[$i]}\t{$previewPage[$i]}\t{$abstractUrl[$i]}\t{$code}"; $saveContent .= "{$item}\n"; } if ($len == 0) { echo "Done... but get nothing form {$fileName}\n"; return; } save($fileName, $saveContent, "a+"); echo "Done!\n"; }
function importBlogPost($file) { $content = file_get_contents($file); $lines = explode("\n", $content); $bodyArray = []; $isBody = false; $metaStarted = false; // parse each line for meta and then body for ($i = 0; $i <= sizeof($lines); $i++) { $thisLine = $lines[$i]; if ($isBody === false) { // if line starts with --, meta has begun or ended if (substr($thisLine, 0, 2) === '--') { if ($metaStarted) { $isBody = true; } else { $metaStarted = true; } } else { $meta = explode(':', $thisLine); switch ($meta[0]) { case 'author': $author = parseAuthor(trim(strtolower($meta[1]))); break; case 'date': $date = parseDate($thisLine); break; case 'slug': $slug = $meta[1]; break; case 'title': $title = parseTitle($thisLine); break; case 'status': $status = $meta[1]; break; case 'category': $category = parseTaxonomy($lines, $i); break; default: break; } } } else { array_push($bodyArray, $thisLine); } } $body_md = implode("\n", $bodyArray); $body_html = Markdown($body_md); $postToImport = array('post_content' => $body_html, 'post_name' => $slug, 'post_title' => $title, 'post_status' => $status, 'post_author' => $author, 'post_content_filtered' => $body_md, 'post_date' => $date, 'tags_input' => $category); // insert the post into the database! $imported = wp_insert_post($postToImport); if ($imported === 0) { echo '<b style="color:red;">IMPORT FAILED: ' . $postToImport[post_title] . '</b><br />'; } else { echo 'Successful Import: ' . $postToImport[post_title] . '<br />'; } }