{"id":29215178,"url":"https://github.com/pronamic/wp-documentor","last_synced_at":"2025-07-03T00:08:20.331Z","repository":{"id":43601954,"uuid":"356268212","full_name":"pronamic/wp-documentor","owner":"pronamic","description":"Documentation Generator for WordPress.","archived":false,"fork":false,"pushed_at":"2024-05-06T08:26:13.000Z","size":1474,"stargazers_count":60,"open_issues_count":4,"forks_count":16,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-26T01:41:05.107Z","etag":null,"topics":["actions","docblock","docblocks","documentation","filters","hooks","php","phpdoc","phpdocumentor","wordpress"],"latest_commit_sha":null,"homepage":"https://pronamic.github.io/wp-documentor/","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pronamic.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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}},"created_at":"2021-04-09T12:46:19.000Z","updated_at":"2025-05-24T13:56:40.000Z","dependencies_parsed_at":"2024-06-21T02:12:46.477Z","dependency_job_id":"f0a242c7-c631-4d59-ab8a-ba98dc9384a0","html_url":"https://github.com/pronamic/wp-documentor","commit_stats":{"total_commits":108,"total_committers":3,"mean_commits":36.0,"dds":0.01851851851851849,"last_synced_commit":"3fbe5703626936e2541451ca8dd5ed71db44539e"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/pronamic/wp-documentor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pronamic%2Fwp-documentor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pronamic%2Fwp-documentor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pronamic%2Fwp-documentor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pronamic%2Fwp-documentor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pronamic","download_url":"https://codeload.github.com/pronamic/wp-documentor/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pronamic%2Fwp-documentor/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263234961,"owners_count":23434921,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["actions","docblock","docblocks","documentation","filters","hooks","php","phpdoc","phpdocumentor","wordpress"],"created_at":"2025-07-03T00:08:19.694Z","updated_at":"2025-07-03T00:08:20.281Z","avatar_url":"https://github.com/pronamic.png","language":"PHP","readme":"\u003cp align=\"center\"\u003e\n\t\u003ca href=\"https://github.com/pronamic/wp-documentor\"\u003e\n\t\t\u003cimg src=\"logos/pronamic-wp-documentor.svgo-min.svg\" alt=\"Pronamic WordPress Documentor\" width=\"128\" height=\"128\"\u003e\n\t\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003ePronamic WordPress Documentor\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n\tPronamic WordPress Documentor is a tool to automatically extract data about the \u003cstrong\u003eactions\u003c/strong\u003e and \u003cstrong\u003efilters\u003c/strong\u003e of your WordPress theme or plugin.\t\n\u003c/p\u003e\n\n[![Latest Stable Version](https://poser.pugx.org/pronamic/wp-documentor/v)](//packagist.org/packages/pronamic/wp-documentor)\n[![Total Downloads](https://poser.pugx.org/pronamic/wp-documentor/downloads)](//packagist.org/packages/pronamic/wp-documentor)\n[![Latest Unstable Version](https://poser.pugx.org/pronamic/wp-documentor/v/unstable)](//packagist.org/packages/pronamic/wp-documentor)\n[![License](https://poser.pugx.org/pronamic/wp-documentor/license)](//packagist.org/packages/pronamic/wp-documentor)\n\n## Table of contents\n\n- [Getting Started](#getting-started)\n- [Command Line Usage](#command-line-usage)\n  - [Examples](#examples)\n- [Output Examples](#output-examples)\n- [Alternatives](#alternatives)\n- [Links](#links)\n\n## Getting Started\n\n### Installation\n\nTo start documenting your WordPress filters and actions, require Pronamic WordPress Documentor in Composer:\n\n```\ncomposer require pronamic/wp-documentor --dev\n```\n\n### First Run\n\nTo let Pronamic WordPress Documentor analyse your codebase, you have to use the `parse` command and point it to the right directory:\n\n```\nvendor/bin/wp-documentor parse src\n```\n\n## Command Line Usage\n\n### `--format=FORMAT`\n\nThe format in which you want to export the hooks.\n\n| Format              | Description                         |\n| ------------------- | ----------------------------------- |\n| `default`           | Symfony console table.              |\n| `hookster`          | Hookster JSON.                      |\n| `markdown`          | Markdown.                           |\n| `phpdocumentor-rst` | RestructuredText for phpDocumentor. |\n\nExample: `--format=markdown`\n\n### `--template=FILE`\n\nCustom PHP template, see for examples the [`templates`](templates) folder.\n\nExample: `--template=templates/markdown.php`\n\n### `--type=TYPE`\n\nSpecify whether you want to export `actions` or `filters`.\n\nExample: `--type=actions` or `--type=filters`\n\n### `--output=FILE`\n\nWrite output to file.\n\nExample: `--output=docs/hooks.md`\n\n### `--memory-limit=VALUE`\n\nSpecifies the memory limit in the same format `php.ini` accepts.\n\nExample: `--memory-limit=-1`\n\n### `--exclude=GLOB`\n\nExclude the specified folders/files.\n\nExample: `--exclude=vendor --exclude=wordpress`\n\n### `--ignore-vcs-ignored`\n\nIf the search directory contains a `.gitignore` file, you can reuse those rules to exclude files and directories from the results with this option.\n\nExample: `--ignore-vcs-ignored`\n\n### `--prefix=PREFIX`\n\nOnly parse hooks starting with the specified prefixes.\n\nExample: `--prefix=my_theme --prefix=my_plugin`\n\n### Examples\n\n```\nvendor/bin/wp-documentor parse ./tests/source\n```\n\n```\nvendor/bin/wp-documentor parse ./tests/source --format=hookster --type=actions --output=tests/docs/hookster-actions.json\nvendor/bin/wp-documentor parse ./tests/source --format=hookster --type=filters --output=tests/docs/hookster-filters.json\n```\n\n```\nvendor/bin/wp-documentor parse ./tests/source --format=markdown --output=tests/docs/hooks.md\n```\n\n```\nvendor/bin/wp-documentor parse ./tests/source --format=phpdocumentor-rst --type=actions --output=tests/docs/phpdocumentor-actions.rst\nvendor/bin/wp-documentor parse ./tests/source --format=phpdocumentor-rst --type=filters --output=tests/docs/phpdocumentor-filters.rst\n```\n\n## Ouput Examples\n\n- [tests/docs/hooks.md](tests/docs/hooks.md)\n- [tests/docs/hookster-actions.json](tests/docs/hookster-actions.json)\n- [tests/docs/hookster-filters.json](tests/docs/hookster-filters.json)\n- https://github.com/wp-pay-gateways/omnikassa-2/blob/2.3.2/docs/hooks.md\n- https://github.com/wp-pay-gateways/adyen/blob/1.3.1/docs/hooks.md\n- https://github.com/wp-pay-gateways/mollie/blob/2.2.3/docs/hooks.md\n- https://github.com/wp-pay-extensions/gravityforms/blob/2.6.0/docs/hooks.md\n- https://github.com/wp-pay/core/blob/2.7.0/docs/hooks.md\n\n\n## Alternatives\n\nHere is a list of alternatives that we found. However, none of these satisfied our requirements.\n\n*If you know other similar projects, feel free to edit this section!*\n\n- [WP Parser](https://github.com/WordPress/phpdoc-parser) by [WordPress](https://github.com/WordPress)\n- [Hookster](https://github.com/themeblvd/hookster) by [Theme Blvd](https://github.com/themeblvd)\n- [WordPress HookDoc](https://github.com/matzeeable/wp-hookdoc) by [Matthias Günter](https://github.com/matzeeable)\n- [GitHub Actions for WordPress](https://github.com/10up/actions-wordpress/blob/stable/hookdocs-workflow.md) by [10up](https://github.com/10up)\n- [Yoast Parser](https://github.com/Yoast/code-documentation-extractor) by [Yoast](https://github.com/Yoast)\n- [WooCommerce Code Reference Generator](https://github.com/woocommerce/code-reference) by [WooCommerce](https://github.com/woocommerce)\n- [WordPress Hooks Reference](https://github.com/johnbillion/wp-hooks) by [John Blackbourn](https://github.com/johnbillion) / [Human Made](https://github.com/humanmade)\n- [wp-hooks-generator](https://github.com/johnbillion/wp-hooks-generator) by [John Blackbourn](https://github.com/johnbillion) / [Human Made](https://github.com/humanmade)\n\n*Inspiration from https://github.com/TypistTech/imposter-plugin#alternatives*\n\n## Links\n\n- https://developer.wordpress.org/plugins/hooks/\n- https://developer.wordpress.org/plugins/hooks/actions/\n- https://developer.wordpress.org/reference/functions/do_action/\n- https://developer.wordpress.org/reference/functions/add_action/\n- https://developer.wordpress.org/plugins/hooks/filters/\n- https://developer.wordpress.org/reference/functions/apply_filters/\n- https://developer.wordpress.org/reference/functions/add_filter/\n- https://developer.wordpress.org/reference/hooks/\n- https://www.phpdoc.org/\n- https://github.com/phpdocumentor/phpdocumentor\n- https://symfony.com/doc/current/console.html\n- https://symfony.com/doc/current/components/finder.html\n- https://developer.wordpress.org/cli/commands/i18n/make-pot/\n- https://developer.wordpress.org/cli/commands/i18n/make-json/\n- https://github.com/pronamic/deployer/blob/master/bin/pronamic-deployer\n- https://gitlab.com/pronamic/wp-updates/-/blob/master/index.php\n- https://github.com/wp-pay/core/issues/45\n- https://github.com/phpDocumentor/phpDocumentor/issues/2865\n- https://github.com/themeblvd/hookster\n\n[![Pronamic - Work with us](https://github.com/pronamic/brand-resources/blob/main/banners/pronamic-work-with-us-leaderboard-728x90%404x.png)](https://www.pronamic.eu/contact/)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpronamic%2Fwp-documentor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpronamic%2Fwp-documentor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpronamic%2Fwp-documentor/lists"}