Conventions and workflow for this WP_Snippets repo: canonical/archive organization, filename naming, version numbering, required snippet headers (including CLM-CREATED-AT), and Code Snippets WordPress import/export sync workflow. Use when editing, renaming, deduplicating, versioning, or preparing imports for this project.
Use this skill when working on the local snippet corpus and WordPress Code Snippets sync for this repository.
WP_Snippets_FINAL_CLEAN/
canonical/ = current snippets to keep/use/importarchive/ = older versions / variants / inactive historyCODE_SNIPPETS_SYNC/
imports/IMPORT-WORDPRESS.json = current import file for WordPressscripts/ = import/export/compare scriptsexports/ = raw JSON exports from WordPressreports/ = compare reports_ROOT_LEGACY/ folders = historical files/scripts/reports; do not treat as source of truthWP_Snippets_FINAL_CLEAN/canonical/.archive/ keeps version history and variants.canonical must contain the latest version for each family.Canonical files use a visual prefix:
EMOJI + SPACE + UPPERCASE PREFIX - Human Name - vN.phpExamples:
🧭 ADMIN MENUBAR - Futur Menubar - v3.php📅 SCHEDULER - Scheduled Posts Popup - v14.php📊 TRACKING - Umami PHP - v2.phpNotes:
-) is uppercased for readability.Archive files keep human-readable versioned names, usually without emoji:
Family Name - vN.phpFamily Name - vN - Variant.phpFamily Name - vN - alt2.php (collision/exact duplicate variant)v1/v2 in the same family after family merges.canonical should be the highest vN for that family.Do not rely only on names. Compare features:
Fonctions clefs)Cluster principal)Names can drift (Futursite vs Futur Menubar) while functionality remains same lineage.
Canonical files should keep these blocks (in this order):
/* CLM-CREATED-AT: YYYY-MM-DD */ (first line)/* FINAL-CANONICAL-META ... *//* CLM-FEATURES-DESCRIPTION:START ... END *//* CLM-FEATURE-CLASSIFICATION:START ... END */canonical file./* CLM-CREATED-AT: 2026-02-25 */When editing an existing file:
CLM-CREATED-AT.When creating a new canonical file:
CLM-CREATED-AT at top immediately.These blocks are used for:
admin, front-end, global)Preserve these fields when possible:
Display nameScopeHooks WPFonctions clefsCluster principalFeatures detecteesVersionRun from repo root:
php CODE_SNIPPETS_SYNC/scripts/build_code_snippets_import.php \
--snippets-dir=WP_Snippets_FINAL_CLEAN/canonical \
--out=CODE_SNIPPETS_SYNC/imports/IMPORT-WORDPRESS.json
The generator currently:
.php filesCLM-FEATURES-DESCRIPTIONwp-admin -> Code Snippets -> ImportCODE_SNIPPETS_SYNC/imports/IMPORT-WORDPRESS.jsonphp CODE_SNIPPETS_SYNC/scripts/compare_code_snippets_export.php \
--export=CODE_SNIPPETS_SYNC/exports/your-export.json \
--snippets-dir=WP_Snippets_FINAL_CLEAN/canonical \
--report=CODE_SNIPPETS_SYNC/reports/compare-report.json
php CODE_SNIPPETS_SYNC/scripts/extract_code_snippets_export_to_files.php \
--export=CODE_SNIPPETS_SYNC/exports/your-export.json \
--out-dir=CODE_SNIPPETS_SYNC/exports/extracted-online-current
canonical blindly from WordPress export.export -> compare -> inspect -> merge -> regenerate import.archive as version history, not trash.canonical has no duplicate family entriescanonical is latest version in each familyUpdate this skill first when changing: