Title: WPMathPub
Author: Ron Fredericks
Published: <strong>March 28, 2008</strong>
Last modified: March 26, 2026

---

Search plugins

![](https://ps.w.org/wpmathpub/assets/banner-772x250.jpg?rev=997722)

![](https://ps.w.org/wpmathpub/assets/icon-256x256.jpg?rev=2822044)

# WPMathPub

 By [Ron Fredericks](https://profiles.wordpress.org/ronf/)

[Download](https://downloads.wordpress.org/plugin/wpmathpub.3.0.2.zip)

 * [Details](https://pcd.wordpress.org/plugins/wpmathpub/#description)
 * [Reviews](https://pcd.wordpress.org/plugins/wpmathpub/#reviews)
 *  [Installation](https://pcd.wordpress.org/plugins/wpmathpub/#installation)
 * [Development](https://pcd.wordpress.org/plugins/wpmathpub/#developers)

 [Support](https://wordpress.org/support/plugin/wpmathpub/)

## Description

WPMathPub renders mathematical equations in WordPress using the **mathpublisher 
rendering engine**, supporting both **pmath native syntax and LaTeX-style input**
and generating high-quality PNG images with transparent backgrounds.

Unlike MathJax-based plugins, WPMathPub performs **server-side rendering**, producing
static equation images that display consistently across browsers and devices without
requiring client-side JavaScript.

This approach provides reliable rendering for:

 * WordPress posts and pages
 * RSS feeds
 * Cached pages
 * Environments where JavaScript rendering is not desirable

WPMathPub extends the classic mathpublisher engine with modern WordPress integration
including shortcode support, LaTeX translation, image caching, and configurable 
rendering options.

### Mathematical Equation Rendering

Mathematical expressions can be embedded directly into WordPress content using the
pmath shortcode.

Example:

    ```
    [pmath]x^2 + y^2 = z^2[/pmath]
    ```

Custom size and color:

    ```
    [pmath size=18 color="blue"]E = mc^2[/pmath]
    ```

LaTeX input:

    ```
    [pmath latex=1]\frac{a}{b}[/pmath]
    ```

Expressions are rendered as PNG images using the GD and FreeType libraries and cached
for efficient reuse.

### Features

 * pmath expression rendering
 * LaTeX command translation (PHPMathPublisher subset)
 * Server-side PNG equation generation
 * Gutenberg WPMathPub math block with PMath and LaTeX mode switching
 * Halo-free color rendering with alpha transparency
 * Transparent background support for dark themes
 * Minimal WordPress database footprint
 * Efficient PNG image caching
 * WordPress admin tools panel
    - Configurable default equation size
    - Configurable default equation color with color picker
    - Installation status display
    - PNG image cache status and control
    - Policy control for cleanup on plugin delete

## Screenshots

 * [[
 * Example rendered equation in page
 * [[
 * Example rendered equation in comment
 * [[
 * Example Gutenberg block
 * [[
 * Example from syntax page
 * [[
 * WordPress admin configuration panel top
 * [[
 * WordPress admin configuration panel bottom

## Blocks

This plugin provides 1 block.

 *   Math (WPMathPub)

## Installation

 1. Upload the plugin folder to the `/wp-content/plugins/` directory.
 2. Activate the plugin through the WordPress Plugins menu.
 3. Optional: change defaults under **Tools  WPMathPub**.

## FAQ

### How do I get started with WPMathPub?

Here are two references:

 * Check out the [WPMathPub math publisher page](https://www.biophysicslab.com/wordpress-math-publisher-plugin/)
   for the user guide.
 * Check out the [WPMathPub syntax page](https://www.biophysicslab.com/wordpress-math-publisher-plugin/wpmathpub-syntax/)
   for a complete cross-reference of all pmath native and LaTeX supported commands.

### Does this plugin require MathJax?

No. WPMathPub renders equations server-side as PNG images using the mathpublisher
rendering engine.

### Does it support LaTeX?

Yes. Many LaTeX math commands are translated into pmath syntax before rendering.
See the syntax reference page for the full list of supported commands.

### Where are rendered images stored?

Rendered equation images are cached in:

    ```
    /wp-content/uploads/wpmathpub/math-img/
    ```

### Why does the plugin generate PNG images instead of SVG?

The plugin preserves compatibility with the mathpublisher rendering engine, which
produces raster images. PNG output ensures consistent rendering across browsers.

## Reviews

![](https://secure.gravatar.com/avatar/b188f9243124fb886e9fd19a6b9b50aa820c346b4278cddde528bb44f47ae969?
s=60&d=retro&r=g)

### 󠀁[Not compatible with wordpress 4.9.8](https://wordpress.org/support/topic/not-compatible-with-wordpress-4-9-8/)󠁿

 [anchorn9852](https://profiles.wordpress.org/anchorn9852/) November 23, 2018

it gives me error: Fatal error: Uncaught Error: Call to undefined function ereg()
in ….web/wp-content/plugins/wpmathpub/phpmathpublisher/mathpublisher.php:1604 Stack
trace: #0 /nfsmnt/hosting1_1/4/c/4cdba5d2-b725-4d56-95e7-7244c2ed5f96/dveadvesustyri.
sk/web/wp-content/plugins/wpmathpub/phpmathpublisher/mathpublisher.php(1625): detectimg(‘
629fdc23df6a73c…’) #1 /nfsmnt/hosting1_1/4/c/4cdba5d2-b725-4d56-95e7-7244c2ed5f96/
dveadvesustyri.sk/web/wp-content/plugins/wpmathpub/phpmathpublisher/mathpublisher.
php(1661): mathimage(‘S(f)(t)=a_{0}+s…’, ’12’, ‘http://dveadves…’) #2 /nfsmnt/hosting1_1/
4/c/4cdba5d2-b725-4d56-95e7-7244c2ed5f96/dveadvesustyri.sk/web/wp-content/plugins/
wpmathpub/wpmathpub.php(110): mathfilter(‘<m>S(f)(t)=a_{0…’, ’12’, ‘http://dveadves…’)#
3 [internal function]: wpmathfilter(Array) #4 /nfsmnt/hosting1_1/4/c/4cdba5d2-b725-
4d56-95e7-7244c2ed5f96/dveadvesustyri.sk/web/wp-content/plugins/wpmathpub/wpmathpub.
php(124): preg_replace_callback(‘#\\[pma in /nfsmnt/hosting1_1/4/c/4cdba5d2-b725-
4d56-95e7-7244c2ed5f96/dveadvesustyri.sk/web/wp-content/plugins/wpmathpub/phpmathpublisher/
mathpublisher.php on line 1604

![](https://secure.gravatar.com/avatar/f58ac795471e4b516970127e7bedf6b39fe32c16b3c2047a253fe716aed8037a?
s=60&d=retro&r=g)

### 󠀁[Very useful](https://wordpress.org/support/topic/very-useful-969/)󠁿

 [thy92](https://profiles.wordpress.org/thy92/) September 3, 2016

Very useful to use. Thank you for this plugin.

![](https://secure.gravatar.com/avatar/196c74fe32cbc0c421bb1215c422da531166e0d739f60069d18e285a5dbfe7d8?
s=60&d=retro&r=g)

### 󠀁[got rid of the backslash problem](https://wordpress.org/support/topic/got-rid-of-the-backslash-problem/)󠁿

 [hadzzz](https://profiles.wordpress.org/hadzzz/) September 3, 2016

The advantage of this plugin to other ones is that it doesn’t use “\” (backslash)
which other latex-based plugins do. Backslashes are sometimes stripped in WP leading
to formulas not showing properly.

 [ Read all 5 reviews ](https://wordpress.org/support/plugin/wpmathpub/reviews/)

## Contributors & Developers

“WPMathPub” is open source software. The following people have contributed to this
plugin.

Contributors

 *   [ Ron Fredericks ](https://profiles.wordpress.org/ronf/)

[Translate “WPMathPub” into your language.](https://translate.wordpress.org/projects/wp-plugins/wpmathpub)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/wpmathpub/), check 
out the [SVN repository](https://plugins.svn.wordpress.org/wpmathpub/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/wpmathpub/) by [RSS](https://plugins.trac.wordpress.org/log/wpmathpub/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 3.0.2

 * Added color= shortcode attribute with hex and named color support
 * Added LaTeX input mode via latex=1 shortcode attribute with full PHPMathPublisher
   syntax coverage
 * Added Gutenberg WPMathPub math block with PMath/LaTeX mode switching and real-
   time preview
 * Added admin panel default equation color setting with WordPress color picker
 * Added admin panel default equation size setting
 * Added uninstall.php to remove plugin database options on delete
 * Fixed Greek Omega symbol rendering (three stacked bugs resolved)
 * Fixed matrix and tabular LaTeX conversion
 * Fixed tabular border string parsing to respect LaTeX | and \hline markers
 * Improved PNG image cache handling and cache key discipline
 * Improved rendering stability across PHP 7.2 through 8.3

## Meta

 *  Version **3.0.2**
 *  Last updated **1 week ago**
 *  Active installations **300+**
 *  WordPress version ** 5.2.3 or higher **
 *  Tested up to **6.9.4**
 *  PHP version ** 7.2 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/wpmathpub/)
 * Tags
 * [equations](https://pcd.wordpress.org/plugins/tags/equations/)[formula](https://pcd.wordpress.org/plugins/tags/formula/)
   [latex](https://pcd.wordpress.org/plugins/tags/latex/)[math](https://pcd.wordpress.org/plugins/tags/math/)
   [mathematics](https://pcd.wordpress.org/plugins/tags/mathematics/)
 *  [Advanced View](https://pcd.wordpress.org/plugins/wpmathpub/advanced/)

## Ratings

 4.2 out of 5 stars.

 *  [  4 5-star reviews     ](https://wordpress.org/support/plugin/wpmathpub/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/wpmathpub/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/wpmathpub/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/wpmathpub/reviews/?filter=2)
 *  [  1 1-star review     ](https://wordpress.org/support/plugin/wpmathpub/reviews/?filter=1)

[Add my review](https://wordpress.org/support/plugin/wpmathpub/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/wpmathpub/reviews/)

## Contributors

 *   [ Ron Fredericks ](https://profiles.wordpress.org/ronf/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/wpmathpub/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://www.paypal.com/donate/?hosted_button_id=S22G8VVL9YAVE)