PHPackages                             pronamic/wp-documentor - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. pronamic/wp-documentor

ActiveLibrary[API Development](/categories/api)

pronamic/wp-documentor
======================

Documentation Generator for WordPress.

v1.4.0(2y ago)6529.8k—2.6%18[4 issues](https://github.com/pronamic/wp-documentor/issues)[2 PRs](https://github.com/pronamic/wp-documentor/pulls)4GPL-2.0-or-laterPHPPHP &gt;=8.0

Since Apr 14Pushed 2y ago2 watchersCompare

[ Source](https://github.com/pronamic/wp-documentor)[ Packagist](https://packagist.org/packages/pronamic/wp-documentor)[ RSS](/packages/pronamic-wp-documentor/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (8)Dependencies (13)Versions (9)Used By (4)

 [ ![Pronamic WordPress Documentor](logos/pronamic-wp-documentor.svgo-min.svg) ](https://github.com/pronamic/wp-documentor)

Pronamic WordPress Documentor
=============================

[](#pronamic-wordpress-documentor)

 Pronamic WordPress Documentor is a tool to automatically extract data about the **actions** and **filters** of your WordPress theme or plugin.

[![Latest Stable Version](https://camo.githubusercontent.com/a1935ced728cd13066faf6bf9c81f731f67ab01b284e8fd0c9205d3d2fc9b454/68747470733a2f2f706f7365722e707567782e6f72672f70726f6e616d69632f77702d646f63756d656e746f722f76)](//packagist.org/packages/pronamic/wp-documentor)[![Total Downloads](https://camo.githubusercontent.com/1e055662df063ed668e8549a6c0c08ef9507715bf9121a94154061326cb961b6/68747470733a2f2f706f7365722e707567782e6f72672f70726f6e616d69632f77702d646f63756d656e746f722f646f776e6c6f616473)](//packagist.org/packages/pronamic/wp-documentor)[![Latest Unstable Version](https://camo.githubusercontent.com/65829dafc0dc6cd32309a628e0a9e8d5e5eda8742503a6ad9caea72bb63e9bd7/68747470733a2f2f706f7365722e707567782e6f72672f70726f6e616d69632f77702d646f63756d656e746f722f762f756e737461626c65)](//packagist.org/packages/pronamic/wp-documentor)[![License](https://camo.githubusercontent.com/18202297e40a46de5bdc78236734ce20a8ed99fb4f470f408584aab49e709836/68747470733a2f2f706f7365722e707567782e6f72672f70726f6e616d69632f77702d646f63756d656e746f722f6c6963656e7365)](//packagist.org/packages/pronamic/wp-documentor)

Table of contents
-----------------

[](#table-of-contents)

- [Getting Started](#getting-started)
- [Command Line Usage](#command-line-usage)
    - [Examples](#examples)
- [Output Examples](#output-examples)
- [Alternatives](#alternatives)
- [Links](#links)

Getting Started
---------------

[](#getting-started)

### Installation

[](#installation)

To start documenting your WordPress filters and actions, require Pronamic WordPress Documentor in Composer:

```
composer require pronamic/wp-documentor --dev

```

### First Run

[](#first-run)

To let Pronamic WordPress Documentor analyse your codebase, you have to use the `parse` command and point it to the right directory:

```
vendor/bin/wp-documentor parse src

```

Command Line Usage
------------------

[](#command-line-usage)

### `--format=FORMAT`

[](#--formatformat)

The format in which you want to export the hooks.

FormatDescription`default`Symfony console table.`hookster`Hookster JSON.`markdown`Markdown.`phpdocumentor-rst`RestructuredText for phpDocumentor.Example: `--format=markdown`

### `--template=FILE`

[](#--templatefile)

Custom PHP template, see for examples the [`templates`](templates) folder.

Example: `--template=templates/markdown.php`

### `--type=TYPE`

[](#--typetype)

Specify whether you want to export `actions` or `filters`.

Example: `--type=actions` or `--type=filters`

### `--output=FILE`

[](#--outputfile)

Write output to file.

Example: `--output=docs/hooks.md`

### `--memory-limit=VALUE`

[](#--memory-limitvalue)

Specifies the memory limit in the same format `php.ini` accepts.

Example: `--memory-limit=-1`

### `--exclude=GLOB`

[](#--excludeglob)

Exclude the specified folders/files.

Example: `--exclude=vendor --exclude=wordpress`

### `--ignore-vcs-ignored`

[](#--ignore-vcs-ignored)

If the search directory contains a `.gitignore` file, you can reuse those rules to exclude files and directories from the results with this option.

Example: `--ignore-vcs-ignored`

### `--prefix=PREFIX`

[](#--prefixprefix)

Only parse hooks starting with the specified prefixes.

Example: `--prefix=my_theme --prefix=my_plugin`

### Examples

[](#examples)

```
vendor/bin/wp-documentor parse ./tests/source

```

```
vendor/bin/wp-documentor parse ./tests/source --format=hookster --type=actions --output=tests/docs/hookster-actions.json
vendor/bin/wp-documentor parse ./tests/source --format=hookster --type=filters --output=tests/docs/hookster-filters.json

```

```
vendor/bin/wp-documentor parse ./tests/source --format=markdown --output=tests/docs/hooks.md

```

```
vendor/bin/wp-documentor parse ./tests/source --format=phpdocumentor-rst --type=actions --output=tests/docs/phpdocumentor-actions.rst
vendor/bin/wp-documentor parse ./tests/source --format=phpdocumentor-rst --type=filters --output=tests/docs/phpdocumentor-filters.rst

```

Ouput Examples
--------------

[](#ouput-examples)

- [tests/docs/hooks.md](tests/docs/hooks.md)
- [tests/docs/hookster-actions.json](tests/docs/hookster-actions.json)
- [tests/docs/hookster-filters.json](tests/docs/hookster-filters.json)
-
-
-
-
-

Alternatives
------------

[](#alternatives)

Here is a list of alternatives that we found. However, none of these satisfied our requirements.

*If you know other similar projects, feel free to edit this section!*

- [WP Parser](https://github.com/WordPress/phpdoc-parser) by [WordPress](https://github.com/WordPress)
- [Hookster](https://github.com/themeblvd/hookster) by [Theme Blvd](https://github.com/themeblvd)
- [WordPress HookDoc](https://github.com/matzeeable/wp-hookdoc) by [Matthias Günter](https://github.com/matzeeable)
- [GitHub Actions for WordPress](https://github.com/10up/actions-wordpress/blob/stable/hookdocs-workflow.md) by [10up](https://github.com/10up)
- [Yoast Parser](https://github.com/Yoast/code-documentation-extractor) by [Yoast](https://github.com/Yoast)
- [WooCommerce Code Reference Generator](https://github.com/woocommerce/code-reference) by [WooCommerce](https://github.com/woocommerce)
- [WordPress Hooks Reference](https://github.com/johnbillion/wp-hooks) by [John Blackbourn](https://github.com/johnbillion) / [Human Made](https://github.com/humanmade)
- [wp-hooks-generator](https://github.com/johnbillion/wp-hooks-generator) by [John Blackbourn](https://github.com/johnbillion) / [Human Made](https://github.com/humanmade)

*Inspiration from *

Links
-----

[](#links)

-
-
- [https://developer.wordpress.org/reference/functions/do\_action/](https://developer.wordpress.org/reference/functions/do_action/)
- [https://developer.wordpress.org/reference/functions/add\_action/](https://developer.wordpress.org/reference/functions/add_action/)
-
- [https://developer.wordpress.org/reference/functions/apply\_filters/](https://developer.wordpress.org/reference/functions/apply_filters/)
- [https://developer.wordpress.org/reference/functions/add\_filter/](https://developer.wordpress.org/reference/functions/add_filter/)
-
-
-
-
-
-
-
-
-
- [pronamic/wp-pay-core#45](https://github.com/pronamic/wp-pay-core/issues/45)
- [phpDocumentor/phpDocumentor#2865](https://github.com/phpDocumentor/phpDocumentor/issues/2865)
-

[![Pronamic - Work with us](https://github.com/pronamic/brand-resources/raw/main/banners/pronamic-work-with-us-leaderboard-728x90%404x.png)](https://www.pronamic.eu/contact/)

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance19

Infrequent updates — may be unmaintained

Popularity43

Moderate usage in the ecosystem

Community22

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 98.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~159 days

Recently: every ~207 days

Total

8

Last Release

743d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/869674?v=4)[Remco Tolsma](/maintainers/remcotolsma)[@remcotolsma](https://github.com/remcotolsma)

---

Top Contributors

[![remcotolsma](https://avatars.githubusercontent.com/u/869674?v=4)](https://github.com/remcotolsma "remcotolsma (153 commits)")[![jmslbam](https://avatars.githubusercontent.com/u/145887?v=4)](https://github.com/jmslbam "jmslbam (1 commits)")[![LuigiPulcini](https://avatars.githubusercontent.com/u/7178054?v=4)](https://github.com/LuigiPulcini "LuigiPulcini (1 commits)")

---

Tags

actionsdocblockdocblocksdocumentationfiltershooksphpphpdocphpdocumentorwordpressapiphpdocwordpressdocumentationapplicationdga

###  Code Quality

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/pronamic-wp-documentor/health.svg)

```
[![Health](https://phpackages.com/badges/pronamic-wp-documentor/health.svg)](https://phpackages.com/packages/pronamic-wp-documentor)
```

###  Alternatives

[phpdocumentor/phpdocumentor

Documentation Generator for PHP

4.4k3.1M878](/packages/phpdocumentor-phpdocumentor)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[apigen/apigen

PHP source code API generator.

2.2k627.9k225](/packages/apigen-apigen)[code-lts/doctum

Doctum, a PHP API documentation generator. Fork of Sami

35077.9k31](/packages/code-lts-doctum)[rekalogika/mapper

An object mapper for PHP and Symfony. Maps an object to another object. Primarily used for transforming an entity to a DTO and vice versa.

3847.7k1](/packages/rekalogika-mapper)[worksome/graphlint

A static analysis tool for GraphQL

13189.4k](/packages/worksome-graphlint)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
