feat: add sitemap generator to Blog menu

Add a "Generate Sitemap" function to the Blog menu that generates a
standard XML sitemap in the project's html/ folder. The sitemap includes
entries for all published posts, archive pages (year, month, day),
category pages, and tag pages using the preview server URL structure.
Runs as a background task with progress tracking via the task manager.

https://claude.ai/code/session_01PdJyxeeNGf4Bkxvq86GVaZ
This commit is contained in:
Claude
2026-02-18 20:17:05 +00:00
parent 8f578e865e
commit a0a7f49135
6 changed files with 224 additions and 0 deletions

View File

@@ -277,6 +277,17 @@ const App: React.FC = () => {
}) || (() => {})
);
unsubscribers.push(
window.electronAPI?.on('menu:generateSitemap', async () => {
try {
await window.electronAPI?.blog.generateSitemap();
} catch (error) {
console.error('Sitemap generation failed:', error);
showToast.error('Sitemap generation failed');
}
}) || (() => {})
);
// Import completion event - refresh posts and media stores
unsubscribers.push(
window.electronAPI?.import.onComplete(async (data) => {