Description
Turn a Markdown draft into a ready-to-publish WordPress post without opening the post editor.
Select a Markdown file and set the title, categories, tags, publish status, date, and featured image in one workflow. Then publish or update the post without opening the WordPress post editor. Marklane keeps your writing in Markdown and handles the WordPress publishing details for you.
Use Dry Run to check the planned changes before saving. Re-import the same source to update an existing post by slug instead of creating a duplicate.
Use YAML frontmatter when you want control over the post. Marklane can apply the title, slug, post type, status, date, categories, tags, featured image, and Polylang language links in one import. When frontmatter is omitted, it derives the title from the first H1 or filename and the slug from the filename.
Re-import the same Markdown source as your draft evolves. Marklane matches an existing post by slug instead of creating duplicates, so your local writing workflow and your WordPress publishing workflow can work together.
For the complete workflow and examples, see the Marklane guide.
Publish faster:
- One-workflow post setup: set the title, slug, status, date, categories, tags, featured image, and language links from Markdown frontmatter
- Dry Run preview: review the planned create/update action, taxonomy assignment, image resolution, warnings, and errors before saving
- Publish or update without the post editor: create a new post or update an existing post by slug
- Media Library image resolution: resolve relative Markdown image paths and
featuredImageagainst existing attachments - Polylang support: connect translated posts from
langandtranslationsfrontmatter - Markdown-first publishing: import prepared Markdown files from the WordPress admin
Optional enhancements:
- Mermaid rendering: turn
```mermaidcode blocks into front-end diagrams when enabled - Extended Markdown: render common callout syntax such as GitHub alerts and Zenn messages when enabled
- Math rendering: render
$$...$$display formulas when enabled - Light front-end loading: Mermaid and math assets load only on pages that contain matching content
- CommonMark + GFM conversion: parse Markdown with
league/commonmark
Marklane is a good fit when:
- articles are written locally in Markdown
- WordPress is used as the publishing destination
- editors want to keep the source file manageable inside WordPress
- repeated imports and post updates are part of the workflow
Frontmatter quick reference:
Marklane reads YAML frontmatter at the top of the Markdown file. Common keys include:
titleslugpostTypeexcerptstatusdatecategorytagsfeaturedImagelang-
translationstitle falls back to the first H1 and then the filename.
slugfalls back to the filename.postTypedefaults topost, andstatusdefaults todraft.
For more frontmatter keys and examples, see the frontmatter guide.
Known limitations:
- Does not create custom post types or taxonomy definitions
- Does not import ZIP archives
- Does not import through REST API or WP-CLI
- Does not download external image URLs automatically
Screenshots

Installation
- In the WordPress admin screen, go to
Plugins > Add New. - Search for
Marklane. - Click
Install Now, then activate the plugin. - Open
Tools > Marklane. - Upload a Markdown file or select one from the Media Library.
- Run a dry run to preview the result.
- Run the import to create or update the post.
If you prefer manual installation, upload the plugin folder to /wp-content/plugins/ and activate it from the Plugins screen.
FAQ
-
What can I set with frontmatter?
-
You can set values such as:
titleslugpostTypeexcerptstatusdatecategorytagsfeaturedImagelang-
translationspostType defaults to
post. Public registered post types are allowed by default, except attachments. Site-specific overrides can be applied with themarklane_whitelistfilter.
Iftitleis omitted, Marklane uses the first H1 and then the filename. Ifslugis omitted, Marklane derives it from the filename.
-
Can it update an existing post?
-
Yes.
The plugin matches an existing post by
slug + post_type, or byslug + post_type + langwhen Polylang is in use. -
What does Dry Run show?
-
Dry Run shows the planned action before saving anything, including:
- whether the import will create a new post or update an existing one
- which existing post was matched
- taxonomy assignment results
- relative image and
featuredImageresolution - warnings and errors raised during the import
-
How are images resolved?
-
Relative image paths are resolved against Media Library images in the same directory as the selected Markdown attachment.
When Markdown and supporting images are uploaded together, the supporting images are stored as flat Media Library files, so nested folder paths are not preserved.The
featuredImagefrontmatter field follows the same rule and sets the post thumbnail when the target image is already registered in the Media Library. If FIFU is active,featuredImagecan also point to an external URL.For more predictable results, use fully unique filenames and, if possible, disable WordPress’s year/month based upload folders before uploading the Markdown file and related images.
-
Can I enable Japanese strong-emphasis compatibility behavior?
-
Yes. Marklane keeps
league/commonmarkas the Markdown converter and uses strict CommonMark behavior by default. If your Japanese writing workflow needs text such as**「text」**続きto render as strong text, enable the CJK compatibility pass:add_filter('marklane_enable_markdown_compatibility_preprocessing', '__return_true');Advanced sites can replace the matching pattern with the
marklane_markdown_compatibility_strong_boundary_patternfilter. For example, use a custom pattern for Japanese quoted text followed by a letter or number. -
Can it render Mermaid diagrams?
-
Yes, optionally.
Enable Mermaid rendering from
Tools > Marklane, and Marklane will load the diagram renderer only on front-end pages that containlanguage-mermaidcode blocks. The post content is still stored as a normal fenced code block, so disabling the option simply returns the front end to plain code blocks. Advanced sites can replace the script URL with themarklane_mermaid_script_srcfilter. -
Can it render GitHub alerts or Zenn-style callouts?
-
Yes, optionally.
Enable Extended Markdown from
Tools > Marklane, and Marklane will render common callout syntax such as GitHub / Obsidian / GitLab blockquote alerts. Zenn / Docusaurus / Quarto:::callouts are normalized during import, then enhanced on the front end.:::detailsis rendered as a native collapsible details element without JavaScript. External embed syntax such as tweets, cards, or videos is not expanded. Advanced sites can limit enabled normalization profiles with themarklane_extended_markdown_profilesfilter. -
Can it render math formulas?
-
Yes, optionally. Enable Math rendering from
Tools > Marklane, and Marklane will render display formulas written as$$...$$only on front-end pages that contain math blocks. Inline math is not expanded. Under the hood, Marklane converts formulas to browser-native MathML with a bundled local renderer. -
Can my theme override these styles?
-
Yes. Extended Markdown callouts, Mermaid rendering, and Math rendering use ordinary HTML and CSS classes, so themes can override them with their own CSS. Marklane outputs classes such as
marklane-callout,marklane-rendered-block,marklane-mermaid,marklane-math, andmarklane-math-display. Each callout type exposes one color variable, such as--marklane-callout-color-noteor--marklane-callout-color-warning; Marklane derives its background and border colors withcolor-mix(). -
Does it work with Polylang?
-
Yes.
When Polylang is active, you can use
langandtranslationsin frontmatter to connect translated posts.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Marklane – Publish Markdown without the post editor.” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Marklane – Publish Markdown without the post editor.” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.6.4
- Improve existing-post matching and restoration during re-imports.
- Strengthen validation when resolving supplementary images and media.
1.6.3
- Improve script loading reliability.
- Improve Mermaid and math rendering reliability.
- Strengthen permission checks during imports.
- Strengthen relative media path validation.
1.6.2
- Load Extended Markdown assets only on pages that contain callouts.
- Fix callout detection so markers outside blockquotes do not trigger unnecessary assets.
For the complete release history, see the Marklane changelog.
