39 lines
1.2 KiB
JavaScript
39 lines
1.2 KiB
JavaScript
import fs from "node:fs";
|
|
import path from "node:path";
|
|
|
|
const repoRoot = process.cwd();
|
|
const legacyHtmlRoot = path.join(repoRoot, "archive-source");
|
|
|
|
function walkHtml(dir) {
|
|
return fs.readdirSync(dir, { withFileTypes: true }).flatMap((entry) => {
|
|
const fullPath = path.join(dir, entry.name);
|
|
if (entry.isDirectory()) {
|
|
return walkHtml(fullPath);
|
|
}
|
|
return entry.isFile() && entry.name.endsWith(".html") ? [fullPath] : [];
|
|
});
|
|
}
|
|
|
|
function removeWordPressResidue(html) {
|
|
return html
|
|
.replace(/\n?<!--\[if lt IE 9\]>\s*<script>[\s\S]*?<\/script>\s*<!\[endif\]-->\s*/g, "\n")
|
|
.replace(
|
|
/\n?\s*<script>\s*\/\* <!\[CDATA\[ \*\/var tribe_l10n_datatables = [\s\S]*?<\/script>/g,
|
|
""
|
|
)
|
|
.replace(/\n?<!-- Shortcodes Ultimate custom CSS - start -->\s*<!-- Shortcodes Ultimate custom CSS - end -->\s*/g, "\n");
|
|
}
|
|
|
|
let updated = 0;
|
|
|
|
for (const filePath of walkHtml(legacyHtmlRoot)) {
|
|
const original = fs.readFileSync(filePath, "utf8");
|
|
const cleaned = removeWordPressResidue(original);
|
|
|
|
if (cleaned !== original) {
|
|
fs.writeFileSync(filePath, cleaned);
|
|
updated += 1;
|
|
}
|
|
}
|
|
|
|
console.log(`Cleaned WordPress residue in ${updated} HTML files.`);
|