This session continued from a previous session that fixed sitewide FAQ rendering and began WPCode snippet cleanup. That earlier work was already exported to Notion ("Sitewide FAQ Rendering Fix + WPCode Snippet Cleanup, April 9, 2026"). This session picked up the remaining tasks and then expanded significantly into a full audit of all unpublished WordPress content.
Sam's goal evolved during the session. It started as "finish the snippet cleanup," then became "are there any unpublished posts or pages ready to deploy?" That question uncovered 40 unpublished items in WordPress. Sam triaged them into categories: trash (junk/test pages), publish candidates, consolidation targets, and archive-then-delete pages. The session became a comprehensive content operations workflow covering auditing, cannibalization detection, Notion archival, WordPress deletion, SEO consolidation analysis, and a QA/publishing handoff document.
Ran a SQL query via SSH (paramiko) against the WordPress database to pull all posts and pages with status draft, pending, future, or private. Found 40 items total. Categorized them for Sam's review.
Trashed 11 junk/test pages via WP-CLI. These were items like "Shivani" (test page), "Depo Provera" (off-topic), "contact demo," "landing page," "post test delete," and ID 41083.
Ran a cannibalization analysis comparing 16 draft page titles/slugs against the full published site inventory. Used SQL queries to pull all published content and cross-referenced for keyword overlap. Identified 7 pages with no conflicts (clear to publish) and 9 with potential overlap requiring decisions.
Sam directed 5 pages to be deleted, but 3 had substantial content worth preserving. Pulled the raw HTML via WP-CLI, stripped it to clean text using Python (html2text-style processing), and created Notion archive entries:
Two other pages (43532 Rideshare, 43530 Motorcycle) were empty shells (419 and 373 chars respectively). Not worth archiving.
All 5 were trashed via WP-CLI after archival.
WP 43547 ("Underrides") was an empty shell at 114 characters. Had RankMath title and meta set but no actual content. Trashed directly, no archival needed.