document.addEventListener("DOMContentLoaded", function() { const articles = document.querySelectorAll("li[data-tags]"); const subsections = {}; articles.forEach(article => { const tags = article.getAttribute("data-tags").split(","); const subsectionTag = tags.find(tag => tag.startsWith("subsection-")); if (subsectionTag) { const subsectionName = subsectionTag.replace("subsection-", ""); if (!subsections[subsectionName]) { subsections[subsectionName] = []; } subsections[subsectionName].push(article); } }); const container = document.querySelector("ul").parentElement; container.innerHTML = ""; for (const [subsection, articles] of Object.entries(subsections)) { const header = document.createElement("h2"); header.textContent = subsection; container.appendChild(header); const list = document.createElement("ul"); articles.forEach(article => list.appendChild(article)); container.appendChild(list); } });