Smazání všech kategorií

Pozor — proměnná limit

Skript smaže až limit kategorií (výchozí: 1000). Před spuštěním upravte hodnotu dle počtu kategorií, které chcete smazat. Akce je nevratná.

JavaScript — vložte do konzole
async function deleteCategoriesSequentially() {
    const originalConfirm = window.confirm;
    window.confirm = function() { return true; };

    let deletedCount = 0;

    const limit = 1000; // ← Změňte dle potřeby

    console.log(`Starting sequential deletion. Script will attempt to delete ${limit} categories...`);

    while (deletedCount < limit) {
        const deleteButtons = document.querySelectorAll('.ajax-remove-item');

        if (deleteButtons.length === 0) {
            console.log("No more categories found on the page to delete.");
            break;
        }

        const currentButton = deleteButtons[0];

        const categoryNameElement = currentButton.closest('dl').querySelector('.tree-link');
        const categoryName = categoryNameElement ? categoryNameElement.textContent.trim() : `Unknown Category`;

        console.log(`[${deletedCount + 1}/${limit}] Deleting: ${categoryName}...`);

        currentButton.click();
        deletedCount++;

        await new Promise(resolve => setTimeout(resolve, 1000));
    }

    window.confirm = originalConfirm;

    console.log("Deletion script finished!");
}

deleteCategoriesSequentially();