{"id":46695431,"url":"https://github.com/bph/wp-block-markup-skill","last_synced_at":"2026-03-09T05:04:02.107Z","repository":{"id":338606527,"uuid":"1158440276","full_name":"bph/wp-block-markup-skill","owner":"bph","description":null,"archived":false,"fork":false,"pushed_at":"2026-02-15T11:33:15.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-15T17:18:22.222Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bph.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-15T11:29:07.000Z","updated_at":"2026-02-15T11:33:18.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/bph/wp-block-markup-skill","commit_stats":null,"previous_names":["bph/wp-block-markup-skill"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/bph/wp-block-markup-skill","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bph%2Fwp-block-markup-skill","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bph%2Fwp-block-markup-skill/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bph%2Fwp-block-markup-skill/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bph%2Fwp-block-markup-skill/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bph","download_url":"https://codeload.github.com/bph/wp-block-markup-skill/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bph%2Fwp-block-markup-skill/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30283703,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T02:57:19.223Z","status":"ssl_error","status_checked_at":"2026-03-09T02:56:26.373Z","response_time":61,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-03-09T05:04:00.834Z","updated_at":"2026-03-09T05:04:02.086Z","avatar_url":"https://github.com/bph.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Convert markdown to block markup — Claude Skill\n\nA [Claude skill](https://support.anthropic.com/en/articles/11147075-what-are-skills) that converts Markdown files to WordPress block markup (Gutenberg serialized HTML) — and serves as a block grammar reference for Claude to consult when working with WordPress content.\n\n## What it does\n\n- Converts `.md` files to block-delimited HTML that can be pasted directly into the WordPress **Code Editor** (Ctrl+Shift+Alt+M) or used in block theme template files.\n- Gives Claude a quick-reference for the block comment syntax so it produces correct markup without searching the web each time.\n- Handles: headings, paragraphs, fenced code blocks (with language attributes), ordered/unordered lists, blockquotes, tables, horizontal rules, and inline formatting (bold, italic, code, links).\n\n## Install as a Claude skill\n\n1. In [claude.ai](https://claude.ai), open **Settings → Profile → Custom Skills** (or drop files into a Project's knowledge).\n2. Upload both:\n   - `SKILL.md`\n   - `scripts/md_to_blocks.py`\n3. That's it — Claude will use the skill whenever you ask it to convert Markdown to WordPress block markup.\n\nThe directory layout Claude expects:\n\n```\n/mnt/skills/user/wp-block-markup/\n├── SKILL.md\n└── scripts/\n    └── md_to_blocks.py\n```\n\n## Use standalone (no Claude needed)\n\nThe converter is a plain Python 3 script with no dependencies:\n\n```bash\npython3 scripts/md_to_blocks.py input.md output.html\n```\n\nIt prints a summary of block counts when finished:\n\n```\nConverted to 231 blocks:\n  wp:list-item: 83\n  wp:paragraph: 71\n  wp:list: 27\n  wp:heading: 20\n  wp:separator: 17\n  wp:code: 11\n  wp:quote: 1\n  wp:table: 1\n```\n\n## Example\n\n**Input** (`example.md`):\n\n```markdown\n# Hello World\n\nA paragraph with **bold** and `inline code`.\n\n## Section One\n\n- First item\n- Second item with a [link](https://example.com)\n```\n\n**Output** (`example.html`):\n\n```html\n\u003c!-- wp:heading {\"level\":1} --\u003e\n\u003ch1 class=\"wp-block-heading\"\u003eHello World\u003c/h1\u003e\n\u003c!-- /wp:heading --\u003e\n\n\u003c!-- wp:paragraph --\u003e\n\u003cp\u003eA paragraph with \u003cstrong\u003ebold\u003c/strong\u003e and \u003ccode\u003einline code\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- /wp:paragraph --\u003e\n\n\u003c!-- wp:heading --\u003e\n\u003ch2 class=\"wp-block-heading\"\u003eSection One\u003c/h2\u003e\n\u003c!-- /wp:heading --\u003e\n\n\u003c!-- wp:list --\u003e\n\u003cul class=\"wp-block-list\"\u003e\n\u003c!-- wp:list-item --\u003e\n\u003cli\u003eFirst item\u003c/li\u003e\n\u003c!-- /wp:list-item --\u003e\n\u003c!-- wp:list-item --\u003e\n\u003cli\u003eSecond item with a \u003ca href=\"https://example.com\"\u003elink\u003c/a\u003e\u003c/li\u003e\n\u003c!-- /wp:list-item --\u003e\n\u003c/ul\u003e\n\u003c!-- /wp:list --\u003e\n```\n\n## Block grammar quick reference\n\nSee [`SKILL.md`](SKILL.md) for the full reference. The essentials:\n\n| Block | Opening comment | Needs attributes? |\n|-------|----------------|-------------------|\n| Paragraph | `\u003c!-- wp:paragraph --\u003e` | No |\n| Heading (h2) | `\u003c!-- wp:heading --\u003e` | No (h2 is default) |\n| Heading (other) | `\u003c!-- wp:heading {\"level\":3} --\u003e` | Yes |\n| Code | `\u003c!-- wp:code --\u003e` | No |\n| List (unordered) | `\u003c!-- wp:list --\u003e` | No |\n| List (ordered) | `\u003c!-- wp:list {\"ordered\":true} --\u003e` | Yes |\n| List item | `\u003c!-- wp:list-item --\u003e` | No |\n| Quote | `\u003c!-- wp:quote --\u003e` | No |\n| Table | `\u003c!-- wp:table --\u003e` | No |\n| Separator | `\u003c!-- wp:separator --\u003e` | No |\n| Image | `\u003c!-- wp:image {\"sizeSlug\":\"large\"} --\u003e` | Typically yes |\n\n## Related resources\n\n- [Markup representation of a block](https://developer.wordpress.org/block-editor/getting-started/fundamentals/markup-representation-block/) — official WordPress docs\n- [Block grammar basics](https://fullsiteediting.com/lessons/block-grammar-basics/) — Full Site Editing course\n- [dmsnell/html-to-md](https://github.com/dmsnell/html-to-md/) — the reverse direction (HTML→Markdown) using WordPress' HTML API\n- [wpblockdocs.com](https://wpblockdocs.com) — searchable block HTML reference\n- [Block markup cheat sheet](https://github.com/jeffreyducharme/wp-gutenberg-block-markup-cheat-sheet) — regex patterns for batch conversion\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbph%2Fwp-block-markup-skill","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbph%2Fwp-block-markup-skill","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbph%2Fwp-block-markup-skill/lists"}