PHPackages                             tjm/wp-to-markdown - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. tjm/wp-to-markdown

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

tjm/wp-to-markdown
==================

Convert WordPress posts to markdown files through database connection

v0.1.1(2mo ago)0320BSDPHPPHP &gt;=7.4

Since Jul 29Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/tobymackenzie/wp-to-markdown.php)[ Packagist](https://packagist.org/packages/tjm/wp-to-markdown)[ RSS](/packages/tjm-wp-to-markdown/feed)WikiDiscussions main Synced 2d ago

READMEChangelogDependencies (15)Versions (10)Used By (0)

WP To Markdown
==============

[](#wp-to-markdown)

Convert WordPress posts to markdown files, in a format and folder structure friendly to my `tjm/wiki.php` project. Puts various values in "front-matter" (YAML at top of markdown file). Prefers `post_content_filtered` field for post content, which is used by JetPack markdown plugin, which I use for my newer posts. Still has problems converting certain post content: Check the results before using on a live site. Can be run repeatedly, will only update files if content has changed. Does not remove posts removed in WordPress.

In addition to posts, also copies media, categories, tags as CSV list, and comments as markdown in a certain structure. I copy the data that I think may be useful for me in a markdown processor version of the WordPress site in question. You'll have to modify the code if you want anything else.

To run, install package, run `composer install`, then run `bin/run` at the command line. You must either pass the non-empty values for these arguments:

1. output destination path
2. database DSN for PDO (see PDO docs if needed)
3. database user
4. database password
5. database table prefix
6. ssh id (user@server) if on a remote system

or, better, modify the `bin/run` file to add those values.

Can also be used in PHP code with `(new TJM\WPToMarkdown($opts))()`. See `src/WPToMarkdown.php` for options.

License
-------

[](#license)

SPDX-License-Identifier: 0BSD

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance84

Actively maintained with recent releases

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity36

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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 ~77 days

Recently: every ~40 days

Total

9

Last Release

85d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/731711?v=4)[Toby Mackenzie](/maintainers/tobymackenzie)[@tobymackenzie](https://github.com/tobymackenzie)

---

Top Contributors

[![tobymackenzie](https://avatars.githubusercontent.com/u/731711?v=4)](https://github.com/tobymackenzie "tobymackenzie (19 commits)")

### Embed Badge

![Health badge](/badges/tjm-wp-to-markdown/health.svg)

```
[![Health](https://phpackages.com/badges/tjm-wp-to-markdown/health.svg)](https://phpackages.com/packages/tjm-wp-to-markdown)
```

###  Alternatives

[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

103519.9k53](/packages/friendsoftypo3-content-blocks)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1189.8k](/packages/rcsofttech-audit-trail-bundle)[blackfire/player

A powerful web crawler and web scraper with Blackfire support

49617.1k](/packages/blackfire-player)[lullabot/drainpipe

An automated build tool to allow projects to have a set standardized operations scripts.

43785.5k4](/packages/lullabot-drainpipe)[altis/local-server

Local Server module for Altis

18221.6k3](/packages/altis-local-server)[2lenet/crudit-bundle

The easy like Crud'it Bundle.

1616.4k14](/packages/2lenet-crudit-bundle)

PHPackages © 2026

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