Title: ProgPress
Author: Jason Penney
Published: <strong>February 10, 2008</strong>
Last modified: November 3, 2016

---

Search plugins

This plugin **hasn’t been tested with the latest 3 major releases of WordPress**.
It may no longer be maintained or supported and may have compatibility issues when
used with more recent versions of WordPress.

![](https://s.w.org/plugins/geopattern-icon/progpress.svg)

# ProgPress

 By [Jason Penney](https://profiles.wordpress.org/jczorkmid/)

[Download](https://downloads.wordpress.org/plugin/progpress.1.2.2.zip)

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

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

## Description

_ProgPress_ provides a simple
 [shortcode](https://codex.wordpress.org/Shortcode)
for creating progress meters on your WordPress site. They can be used to track just
about anything where you count up towards a goal: word-count, fundraising, etc. 
You can put them in individual posts and pages, or include them in text widgets.

To insert a meter simply use the `[progpress]` shortcode:

    ```
    [progpress title="My Project" goal="100000" current="1234"]
    ```

The `[progpress]` shortcode has the following options:

 * Required:
    - **`title`**: A string containing The title for your meter.
    - **`goal`**: A number. The one you are working towards.
    - **`current`**: A number showing how far along you are.
 * Optional:
    - **`previous`**: You can put your previous value of `current` here
       if you 
      want to highlight your most recent progress update. It’s not visible using
      the default styling (but it doesn’t hurt anything).
    - **`label`**: What it is that you’re counting, like `"words"` for
       example.
    - **`separator`**: A character or string to display between
       current and `goal`.
      Defaults to `"/"`.
    - **`class`**: An extra CSS class to apply to the meter container.
       Useful if
      you track different projects with different styles.
    - **`prefix`**: A character or string to display before each number
       (like ‘
      $’). Off by default.

_ProgPress_ was designed to be customizable via CSS. I’ve provided
 some examples
in the _Screenshots_ section.

### NaNoWriMo Support

If you are participating in NaNoWriMo, ProgPress can automatically
 track your progress.
Just enable the additional _ProgPress – NaNoWriMo Support plugin (in addition to
ProgPress), and set the nanowrimo attribute to your NaNoWriMo username (this is 
a change from last year where your user id was used).

    ```
    [progpress title="My NaNoWriMo Progress" nanowrimo="jczorkmid" label="words"]
    ```

So as to not overload their servers, the plugin caches your word count
 info, so
it may not update immediately when you update your word count at nanowrimo.org.

Note that as of November 10, 2011 the NaNoWriMo Word Count API is
 not yet officially
released. At times it seems to return invalid errors saying your user doesn’t exist,
or you don’t have a novel in progress this year. In my testing this clears itself
up after a bit, and once some data has been loaded WordPress will cache it rather
than continue to display errors if it keeps going up and down.

### More Info

 * Check out my [other WordPress
    plugins
   .
 * Check out this excellent [ProgPress Setup & Customization
    Guide
   
    for some additional
   CSS examples.

### Thanks

Special thanks to [Kris Johnson](http://kjtoo.com/),
 [K. L. Kerr](http://www.penrefe.com/),
[Chris Miller, [Debbie Ohi](http://www.inkygirl.com/), and [Scott Philips](http://scottphillips.org/) for
their feedback and support.

## Screenshots

 * [[
 * This meter was generated using the default styles.
 *     ```
           [progpress title="defaults" goal="180000" current="73023" previous="71398" label="words"]
       ```
   
 * [[
 * Make the meter blue and remove padding.
 *     ```
       div.jcp_pp_meter { 
           padding: 0; 
       }
       div.jcp_pp_prog { 
           background-color: #22a; 
       }
       div.jcp_pp_new { 
           background-color: #22f; 
       }
   
   
        [progpress tile="Test" goal="50000" current="48000"]
       ```
   
 * [[
 * Blue meters with 3D borders.
 *     ```
       div.jcp_pp_meter { 
          padding: 0;
          height: 30px; 
          border: inset 4px #aaa; 
          background-color: #aaa; 
          z-index: 1; 
          overflow: visible; 
       }
       div.jcp_pp_prog, div.jcp_pp_new { 
           border: outset 4px red; 
           margin-left: -4px; 
           margin-top: -4px; 
           z-index: 2; 
           background-color: #22a; 
           border-color:#22a;
       }
       div.jcp_pp_new { 
           border-color:#22f; 
           background-color: #22f; 
           border-left: none; 
           z-index: 3; 
       }
       ```
   
 * > `[progpress title="Test Too" goal="100000" current="70000" previous="67000"]`
 * [[
 * Image Based
 *     ```
       div.jcp_pp_meter { 
           padding: 0; 
           height: 33px; 
           background-image: url(pp_bg_remain.jpg); 
       }
       div.jcp_pp_prog,div.jcp_pp_new {
          background-image:url(pp_bg_current.jpg); 
       }
   
   
        [progpress title="Test Also" goal="500" current="350" label="pages"]
       ```
   

## Installation

Extract the zip file and just drop the contents in the
 wp-content/plugins/ directory
of your WordPress installation and then activate the Plugin from Plugins page.

You can configure the options from the settings page.

## FAQ

  I’m seeing the shortcode source when I try and use it in a text widget.

As of this writing WordPress does not support shortcodes in text
 widgets. _ProgPress_
has the ability to enable all shortcodes in text widgets (not just `[progpress]`),
but it is turned off by default. It can be enabled on the _ProgPress_ settings page.

The code is based on a proposed patch to WordPress core. Hopefully
 this feature
is added to WordPress itself at some later date. I’ve tried to code defensively 
so if the feature is added to WordPress in the future, having it enabled in the 
plugin should not have any negative side effects.

  What are the default styles? What does the markup look like?

Please check out the **Examples** section on the settings page. It
 will generate
markup and display the default styles for the currently installed version of _ProgPress_
when you click “Load Examples”. I’ve done this rather than put a static copy here
that I might forget to update in future.

  What’s all this about shortcodes? I’ve been using ProgPress in a different way
for ages!

Since _ProgPress_ pre-dates shortcodes being added to WordPress it
 originally used
an older syntax based on HTML comments. This syntax is still supported (although
newer features like `label` have not been back-ported). It can be enabled on the
_ProgPress_ settings page.

You add a progress meter by including the following in a post or in a
 text widget:

    ```
    <!--progpress|title|goal|current|previous|label-->
    ```

Only these five options are supported, only the first three are
 required.

  Besides shortcodes and HTML comments, is there any other way I can use ProgPress
to generate meters?

Sure. You can call the `jcp_progpress_generate_meter` function
 directly.

    ```
    <?php if (function_exists('jcp_progpress_generate_meter')){  
           echo jcp_progpress_generate_meter("title", 100, 50, 25, "label");
    }?>
    ```

The arguments to the function are:
 title, `goal`, `current`, `previous`, `label`,`
separator`, `class`, and `prefix` (in that order).

  How will the meter show up in my RSS feeds?

Inline styles (based on the default styles) are used to ensure the
 meters render
in RSS readers.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

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

Contributors

 *   [ Jason Penney ](https://profiles.wordpress.org/jczorkmid/)

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

### Interested in development?

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

## Changelog

#### 1.2.1

 * Fixed caching timeout (whoops)

#### 1.2

 * Updated the _ProgPress – NaNoWriMo Support_ plugin for 2011
 * Pretty printing of numbers now handled via `number_format_i18n` for better
    international
   support.
 * Admin JavaScript should only load on the ProgPress admin page.

#### 1.1

 * Added the _ProgPress – NaNoWriMo Support_ plugin
 * Added `jcp_progpress_shortcode_atts` filter
 * Added phpdoc

#### 1.0

 * Added the `[progpress]` shortcode.
 * Pretty print large numbers (inserting commas, etc).
 * Added `class`, `prefix`, and `separator` options
 * Added option to enable shortcodes in text widgets.
 * Rewrote the README (hopefully it’s more helpful now).
 * Added some extra tags to the markup to make it easier to style
    individual sections.

#### 0.8.6

 * fixed bug with width calculation
 * provide production and development versions of javascript and css

#### 0.8.5

 * Migrated to new WordPress admin API.
 * Moved default styles to external style sheet.
 * Added ability to view default style sheet to settings page.
 * Added a bit more content to the README.

#### 0.8.2

 * Use inline styles in RSS feeds.
 * Changed filter priorities to deal with WordPress changes.

#### 0.8.1

 * Added `title` attributes to meter sections.
 * Better path determination logic.

#### 0.8

 * Removed try/catch in place of PHP version detection.
 * Updated styles

#### 0.1

 * initial release

## Meta

 *  Version **1.2.2**
 *  Last updated **9 years ago**
 *  Active installations **10+**
 *  WordPress version ** 2.2 or higher **
 *  Tested up to **4.6.30**
 *  Language
 * [English (US)](https://wordpress.org/plugins/progpress/)
 * Tags
 * [bar](https://pcd.wordpress.org/plugins/tags/bar/)[graph](https://pcd.wordpress.org/plugins/tags/graph/)
   [meter](https://pcd.wordpress.org/plugins/tags/meter/)[progress](https://pcd.wordpress.org/plugins/tags/progress/)
   [wordcount](https://pcd.wordpress.org/plugins/tags/wordcount/)
 *  [Advanced View](https://pcd.wordpress.org/plugins/progpress/advanced/)

## Ratings

 4.5 out of 5 stars.

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

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

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

## Contributors

 *   [ Jason Penney ](https://profiles.wordpress.org/jczorkmid/)

## Support

Got something to say? Need help?

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

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](http://jasonpenney.net/donate)