Table of Contents

  1. Introduction
  2. Installation
  3. Post Sidebar Sections
  4. Dedicated Menus
  5. Image Handling
  6. Front Matter
  7. REST API
  8. Additional Information

Introduction

Ultimate Markdown Pro helps you work with the Markdown syntax by providing tools to import, export, and modify Markdown documents.

Installation

Refer to the installation guide for setup and update instructions. The information available in this document applies to all our WordPress plugins.

Post Sidebar Sections

The plugin adds four new sections in the sidebar of your posts, pages, or custom post types.

To access these sections, open the post sidebar using the cog icons available in the top-right area of the screen. Then select the Post tab of the sidebar.

Import Markdown

Use the Import Markdown section to generate the post content from a Markdown file available on your computer.

  1. Open the Import Markdown section
  2. Click the Upload file and import button
  3. Select a Markdown file available on your computer

Load Markdown

With this section, you can replace the existing post content with content generated from a document stored in the plugin. See the Documents and Import menu for more information on creating a document.

  1. Open the Load Markdown section
  2. Select a document stored in the plugin with the Markdown document selector
  3. Click the Submit document button to complete the process

Submit Markdown

The Submit Markdown section allows you to generate the post content from a provided text string.

  1. Open the Submit Markdown section
  2. Enter the text using Markdown syntax in the Markdown text textarea
  3. Click the Submit text button to complete the process

Export Markdown

The Export Markdown section allows you to generate a Markdown file from the content of the currently edited post.

  1. Open the Export Markdown section
  2. Click the Export button

The generated Markdown file will be available in the download location configured in your browser.

Dedicated menus

Documents

From the Documents menu you can create, duplicate, download, edit, or delete Markdown documents.

Create a document

Use this procedure to create a document:

  1. Enter the Title of the document
  2. Select the Category of the document or leave “None”
  3. Enter the Content of the document
  4. Click the Add Document button

Download a document

To download a document, click the Export link available in the first column of the table used to list the existing documents.

Categories

The Categories menu allows you to create categories of documents. You can optionally use this feature to better organize large archives of documents.

Create a category

  1. Enter the Name of the category
  2. Select the Description of the category
  3. Click the Add Category button

Tools

This menu provides centralized access to bulk import and export operations. It’s divided into two sections: the Import section, which is used to import Markdown content into the plugin, and the Export section, which allows you to export existing website content, including plugin-managed Markdown documents or WordPress posts.

Import

Use the Import section to generate content from Markdown files available on your computer. Follow these steps:

  1. Select the import destination (Documents or Posts).
  2. Click the Choose files button to select one or more Markdown files from your computer.
  3. Click the Upload files and import button to start the process.
  4. Once the import is complete, a dismissible notice will display the list of generated items.
Importing to Documents

When Documents is selected as the import destination, the plugin will generate plugin-managed Markdown documents from your import. The generated material will be available in the Documents menu.

Importing to Posts

When Posts is selected as the import destination, the plugin will generate posts in Draft status. You can define the post type of the imported content using the Advanced Import → Post Type option available in the Options menu.

With the Block Editor active, the imported content will appear in a single Classic Block, not as individual blocks. If needed, you can click on the Convert to blocks button available in the tools of the Classic Block to manually perform the conversion.

The recommended workflow to use when the Block Editor is active on the site is the following:

  1. Import the Markdown files into Documents (as described above).
  2. In the post editor, use the Load Markdown section in the sidebar to load the desired document.

Export

Use the Export section to generate compressed archives (.zip) of Markdown files from existing content. You can export either plugin-managed Markdown Documents or existing Posts from your site.

Export from Documents

To export content stored in the plugin:

  1. Set the Source selector to Documents.
  2. Click the Export button.
Export from Posts

To export posts, pages, or custom post types:

  1. Set the Source selector to Posts.
  2. Use the Post Types option to select which types of content to include.
  3. Use the Categories option to filter by category (leave empty to include all).
  4. Use the Tags option to filter by tag (leave empty to include all).
  5. Click the Export button.

Image Handling

Ultimate Markdown Pro offers two different ways to include images when importing Markdown files: by referencing publicly available images or by packaging local images within a ZIP archive.

In this section, both methods are explained in detail.

Including Publicly Available Images in Markdown Files

The plugin can import images referenced in Markdown files using publicly available URLs. These images are downloaded during the import process and integrated into the WordPress Media Library.

Before starting, make sure that image uploading during import for publicly available images is enabled. To do this, navigate to the Options menu, open the Conversion tab, and locate the External Images section. Enable the toggle corresponding to the import feature where you want image upload for publicly available images enabled.

Next, create a Markdown file that uses the standard Markdown image syntax with absolute URLs to public images. In the example below, https://example.com/image.jpg represents a publicly accessible image URL. The image can be hosted on your own website or any other website:

## Heading

Content.

![Image Example](https://example.com/image.jpg)

During the import process, the plugin will download the image from https://example.com/image.jpg, upload it to the WordPress Media Library, and update the image URL in the resulting document or WordPress post content accordingly.

In the WordPress block editor, the content is rendered as shown below. In this context, https://example.com/wp-content/uploads/2025/12/image.jpg represents an image of the WordPress Media Library located on your WordPress website:

<!-- wp:heading -->
<h2 class="wp-block-heading">Heading</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Content.</p>
<!-- /wp:paragraph -->

<!-- wp:image -->
<figure class="wp-block-image">
  <img src="https://example.com/wp-content/uploads/2025/12/image.jpg" alt="Image Example" />
</figure>
<!-- /wp:image -->

If instead the document is imported as a plugin-managed Markdown document, the content is rendered as follows:

## Heading

Content.

![Image Example](https://example.com/wp-content/uploads/2025/12/image.jpg)

This method applies only when images are publicly accessible via absolute URLs (for example, URLs starting with http:// or https://). Relative paths or local file references are not supported with single Markdown file uploads. To import local images, refer to the next section on ZIP uploads.

Also note that an image will be uploaded to the WordPress Media Library only if it is publicly accessible. If the image URL is not available, protected, requires authentication, or is blocked, the plugin will skip the image during the import process.

How the Plugin Technically Handles Image Imports

During the import process, the plugin performs the following steps:

  1. Download the referenced images
  2. Upload the images to the WordPress Media Library
  3. Replace the original public URLs with the URLs of the images stored in the WordPress Media Library
  4. Create a document or a post using the updated content with the correct image URLs from the media library

Importing Markdown Files with Local Images Using a ZIP Archive

Ultimate Markdown Pro can also import Markdown files that reference local images. To do this, you must package the Markdown file and its associated images into a ZIP archive.

ZIP uploads are supported only in specific import contexts. You can upload ZIP archives when using the import operations available in the Tools menu and when using the Import Markdown section in the post editor sidebar.

When you upload a ZIP file containing a Markdown file and its related images, the plugin extracts the images from the archive, uploads them to the WordPress Media Library, and updates the image URLs in the resulting content accordingly.

Consider the following example ZIP file structure:

my-markdown-import.zip
├── document.md
└── images
    ├── image1.jpg
    └── image2.png

In this example, document.md is the Markdown file that references two local images (image1.jpg and image2.png) located in the images folder.

The content of document.md might look like this:

## Sample Document

The first image:

![Image 1](images/image1.jpg)

The second image:

![Image 2](images/image2.png)

When referencing local images, you should always use relative paths. The paths used in the Markdown file must match the structure of the ZIP archive exactly.

For example, if the images are located in the same folder as the Markdown file, you can reference them like this:

![Image 1](image1.jpg)

or:

![Image 1](./image1.jpg)

If the images are located in a subfolder named images, you can reference them like this:

![Image 1](images/image1.jpg)

or:

![Image 1](./images/image1.jpg)

Avoid using leading slashes (/) when referencing local images in ZIP uploads. In URLs, a leading slash (/) refers to the root path of the current domain. When working with ZIP archives, there is no equivalent concept of a site root, so leading slashes in image paths are ambiguous and may prevent images from being correctly resolved.

How the Plugin Technically Handles ZIP Files with Local Images

During the ZIP import process, the plugin will:

  1. Extract the Markdown file and images from the ZIP archive
  2. Upload the local images to the WordPress Media Library
  3. Replace relative image paths (for example, images/image1.jpg) with the corresponding WordPress Media Library URLs (for example, https://example.com/wp-content/uploads/2025/12/image1.jpg)
  4. Create a document or a post using the updated content with the correct image URLs from the media library

Note that you can also upload multiple ZIP files during the upload process. Each ZIP archive must contain only one Markdown file, along with its related images. Do not include multiple Markdown files in the same ZIP archive.

Best Practices

  • Ensure that image paths in the Markdown file exactly match the ZIP archive structure. Double-check image paths before uploading. If referenced images are not found, they will be skipped during import.
  • Keep paths simple and avoid deeply nested folder structures. When possible, place images in the same folder as the Markdown file or in a single subfolder.

Choosing the Right Method

Including Publicly Available Images in Markdown Files

Use this method when your Markdown content references images that are already publicly available. Typical examples include images hosted on your own website or on other websites that allow reuse. During import, these images will be downloaded and added to your WordPress Media Library.

When referencing images hosted on third-party websites, make sure you have the right to download them, import them into your WordPress Media Library, and use them on your site.

Importing Markdown Files with Local Images Using a ZIP Archive

Use this method when the Markdown file references local images that are not publicly available. This approach is ideal when you prepare articles with images on your local computer and want to upload everything in a single step. It is also well suited for editorial workflows where contributors provide content as a ZIP archive containing the Markdown file and all related images.

Note that when uploading ZIP files, only local images included in the archive will be processed. Publicly available images referenced in the Markdown file will not be downloaded during ZIP uploads.

Front Matter

The Front Matter feature of Ultimate Markdown allows you to configure a WordPress post by adding key-value pairs at the beginning of the Markdown file.

Using Front Matter

Front Matter must be included at the beginning of the file and take the form of valid YAML set between triple-dashed lines.

In the following Markdown file, Front Matter is used to configure post title, post excerpt, and post status:

---
title: The post title
excerpt: The post excerpt
status: private
---

## First Heading

Paragraph Content.

Supported keys

The plugin supports the following Front Matter keys:

KeyValueWordPress Post Setting
titleStringPost title
excerptStringPost excerpt
categoriesArray (An array of category IDs or category names)Post categories
tagsArray (An array of tag IDs or tag names)Post tags
authorString (The ID or login name of the author)Post author
dateString (The post date in the “YYYY-MM-DD hh:mm:ss” format) (E.g. 2022-04-16 10:30:42)Post date
statusString (The accepted values are: publish, future, draft, pending, private, trash)Post status
slugString (The last part of the URL)Permalink (slug)
thumbnailString (The thumbnail ID or the URL of a publicly available image. Note that when a publicly available image is specified, the plugin creates the corresponding image in the media library.) Featured image
thumbnail_altString (The alt text of the image uploaded in the media library. Note that this key is only used when a publicly available image is specified in the “thumbnail” key.) Feature image alt text
thumbnail_titleString (The title attribute of the image uploaded in the media library. Note that this key is only used when a publicly available image is specified in the “thumbnail” key.) Feature image title attribute

Examples

Set the post title

---
title: The post title
---

## First Heading

Paragraph Content.

Set the post excerpt

---
excerpt: The post excerpt
---

## First Heading

Paragraph Content.

Set the categories

---
categories:
  - Category 1
  - Category 2
---

## First Heading

Paragraph Content.

Set the tags

---
tags:
  - Tag 1
  - Tag 2
---

## First Heading

Paragraph Content.

Set the post status

---
status: private
---

## First Heading

Paragraph Content.

Set the post author

---
author: John Doe
---

## First Heading

Paragraph Content.

Set the post date

---
date: 2022-04-16 10:30:42
---

## First Heading

Paragraph Content.

An implementation that uses all the supported keys

---
title: The post title
excerpt: The post excerpt
categories:
  - Category 1
  - Category 2
tags:
  - Tag 1
  - Tag 2
author: John Doe
date: 2022-04-16 10:30:42
status: private
slug: my-first-article
thumbnail: https://example.com/laptop-computer.png
thumbnail_alt: Laptop computer displaying the logo of WordPress
thumbnail_title: WordPress is a free and open-source content management system written in PHP
---

## First Heading

Paragraph Content.

Common parsing problems

The plugin may ignore all the defined Front Matter keys or specific Front Matter keys when:

  • The YAML format is not valid.
  • The Front Matter keys don’t exist.
  • The Front Matter values are not valid. (E.g. When the post date is specified in the wrong format, when the configured post status doesn’t exist.)

REST API

This plugin adds the following REST API endpoints.

List documents

Use this endpoint to read the Markdown document stored in the plugin.

Base route

/wp-json/ultimate-markdown-pro/v1/documents

Method

GET

URL Parameters

NameValueRequired
document_idThe ID of the document that you want to retrieve. Leave this field empty to retrieve all the documents.No

Import documents

With this endpoint, you can add Markdown documents in the plugin database or create posts in draft status.

Base route

/wp-json/ultimate-markdown-pro/v1/import

Method

POST

URL Parameters

NameValueRequired
titleThe title of the submitted document.Yes
contentThe content of the submitted document. The Markdown syntax is supported.Yes

Additional Information

Uploads

The maximum number of files you can upload in a single upload operation is limited by the max_file_uploads directive defined in the php.ini file.

This directive’s value determines the maximum number of files that can be processed in the Tools menu during import operations.

Parsers

The plugin uses multiple libraries to convert Markdown to HTML and vice-versa. This table lists the plugin contexts and the related parsers.

ContextUseParser
Markdown editor available in the Documents menuMarkdown to HTMLDefined in plugin settings using the Live Preview option under the Markdown Parsers section.
Export functionality available in the Documents menuHTML to MarkdownHTML To Markdown for PHP
In the Tools menu, when “Posts” is selected as the destination of the import operation.Markdown to HTMLDefined in plugin settings using the Bulk Import option under the Markdown Parsers section.
In the Tools menu, when “Posts” is selected as the source of an export operation.HTML to MarkdownHTML To Markdown for PHP
Import Markdown section in the post editor sidebarMarkdown to HTMLDefined in plugin settings using the Editor option under the Markdown Parsers section.
Load Markdown section in the post editor sidebarMarkdown to HTMLDefined in plugin settings using the Editor option under the Markdown Parsers section.
Submit Markdown section in the post editor sidebarMarkdown to HTMLDefined in plugin settings using the Editor option under the Markdown Parsers section.
Export Markdown section in the post editor sidebarHTML to MarkdownHTML To Markdown for PHP

Supported Markdown file extensions

The import form available in the Tools menu supports Markdown files with the following extensions:

  • .md
  • .markdown
  • .mdown
  • .mkdn
  • .mkd
  • .mdwn
  • .mdtxt
  • .mdtext
  • .text
  • .txt

Credits

This product makes use of the following resources: