Title: Persian Project Management
Author: Alireza Aminzadeh
Published: <strong>September 17, 2026</strong>
Last modified: September 17, 2026

---

Search plugins

![](https://ps.w.org/persian-project-management/assets/banner-772x250.jpg?rev=3699778)

![](https://ps.w.org/persian-project-management/assets/icon-256x256.png?rev=3699778)

# Persian Project Management

 By [Alireza Aminzadeh](https://profiles.wordpress.org/syeedalireza/)

[Download](https://downloads.wordpress.org/plugin/persian-project-management.2.1.2.zip)

 * [Details](https://wordpress.org/plugins/persian-project-management/#description)
 * [Reviews](https://wordpress.org/plugins/persian-project-management/#reviews)
 *  [Installation](https://wordpress.org/plugins/persian-project-management/#installation)
 * [Development](https://wordpress.org/plugins/persian-project-management/#developers)

 [Support](https://wordpress.org/support/plugin/persian-project-management/)

## Description

**Persian Project Management** adds a complete project workspace **inside the WordPress
admin**. It is built for Persian/Farsi teams: right-to-left layout, Vazirmatn typography,
Jalali date pickers, and a Saturday-first work calendar — while dates stay Gregorian`
Y-m-d` in the database for APIs and exports.

There is **no frontend UI**, no shortcode, and no Gutenberg block. Open **مدیریت
پروژه** in the admin menu after activation.

**مخزن وردپرس / گیت‌هاب:** افزونه فضای مدیریت پروژه را داخل پیشخوان می‌آورد (پروژه،
وظیفه، کانبان، تقویم شمسی، داشبورد و CSV). رابط فرانت، شورت‌کد و بلوک ندارد.

#### Why use it

 * Stay in WordPress instead of a separate PM tool.
 * Custom tables (`ppm_projects`, `ppm_tasks`) instead of posts, with explicit schema
   and `dbDelta` upgrades.
 * Granular capabilities: view projects, manage projects, manage tasks (Administrator
   gets them on activation).
 * Optional organization branding (logo, name, tagline) and per-screen background
   colors.

#### Dashboard

 * User name and WordPress role.
 * Quick search that opens the projects list.
 * Shortcuts to projects, tasks, new project (if allowed), and team Kanban.
 * KPI cards: all projects (including archived), active projects plus “created this
   month”, overdue (past end date), active projects without an owner, and a budget/
   spend card (fill via the `ppm_projects_total_budget_display` filter; otherwise
   it stays empty).
 * Deadline alerts for projects ending in the next 7 days (overdue vs upcoming labels).
 * Chart.js analytics: status distribution, active projects per owner (top 8), 12-
   month created vs completed trend, open vs closed tasks, plus average progress
   of active projects.
 * Activity lists: your owned projects, recent open tasks, recently updated projects.
 * CSV export of projects for managers.

#### Projects

 * Create, edit, view, archive, delete (nonce-protected). Bulk archive. Unique slug
   from the title.
 * Statuses: draft, planning, in progress, on hold, completed. Owner, start/end 
   dates, progress 0–100, category, tags.
 * **Grid and list** views (preference remembered in the browser). Grid cards show`#
   PRJ-xxx`, status, a five-step progress visual, progress bar, owner, due date.
 * Search by title. Filters: status, category, owner (including unassigned), end-
   date range, archived / not archived / all. Sortable columns. Open-task count.
   Screen option for rows per page (default 20).
 * Row actions: view, tasks, edit, archive, delete, copy edit link.
 * KPI strip and deadline alerts on the projects screen as well.
 * CSV export (UTF-8 with BOM, current filters, up to 5000 rows): id, title, status,
   owner, dates, progress, category, tags, archived.
 * Deleting a project also deletes its tasks.

#### Project notebook (new / archive / resources)

 * Multi-step **new project** flow: identity, five PM phases (initiation  closing)
   with Jalali pickers, team members with optional role labels, logo and brand colors,
   media attachments.
 * **Save as draft** (untitled drafts allowed) or confirm and create. Empty start/
   end dates can be filled from phase dates.
 * **Archive** notebook: browse archived projects, search, pagination, link to the
   filtered table.
 * **Resources** notebook: WordPress users who can view or manage projects (avatar,
   role, email).
 * View-only users see read-only summaries of extended fields on the project screen.

#### Tasks

 * Hidden tasks screen (linked from dashboard, project rows, Kanban, calendar). 
   Filter by project.
 * Quick add (title + optional due date) when a project is selected.
 * Open / closed, Kanban column, optional due date. Close or delete with nonces.
   20 rows per page.

#### Team Kanban

 * One board of **open** tasks across **non-archived** projects.
 * Up to **12** columns (keys, titles, per-column quick-add). Defaults: waiting,
   in progress, review. Removing a column moves its open tasks to the first remaining
   column.
 * Drag and drop (jQuery UI Sortable + AJAX). Click a card to edit title, project,
   and due date, or delete.
 * Quick-add composer per column: project, title, due date.
 * Cards show project tag, project progress, due date, link to that project’s tasks.
 * Optional backdrop: solid color, image, or image with a color overlay. Reset from
   Settings.
 * Users who can view the board can move/edit/delete cards. Saving column layout
   requires manage-tasks. GET fallbacks exist if JavaScript is blocked.

#### Work calendar

 * Merges project date ranges and **open** task due dates.
 * Jalali or Gregorian month view (preference remembered). Iranian week: Saturday
   first.
 * Previous / today / next month, type filter (all / projects / tasks), project 
   filter.
 * Day details sidebar, color legend (in progress, planning, overdue project, task,
   overdue task).
 * REST: `GET /wp-json/ppm/v1/calendar-events` (`from`, `to`, optional `project_id`,`
   types`). Permission: `ppm_view_projects`. Admin-ajax fallback `ppm_calendar_events`
   when REST or permalinks are awkward.
 * Backend storage remains Gregorian `Y-m-d`.

#### Settings

Three tabs (saving requires manage-projects; viewing the screen requires view-projects):

 1. **Sidebar** — show/hide the in-plugin nav per screen; logo (Site Icon / WordPress
    logo fallback); organization name; tagline.
 2. **Kanban** — board background color and image; reset.
 3. **Screens** — `#wpbody-content` background per plugin admin page; clear all colors.

A brand banner (logo + name + tagline) appears across plugin screens.

#### Security

 * Capabilities: `ppm_manage_projects`, `ppm_view_projects`, `ppm_manage_tasks`.
 * Nonces on forms, AJAX, and CSV export. `wp_ajax_*` only (no logged-out AJAX).
   REST calendar requires a logged-in user with view permission.
 * Attachment IDs and user IDs are validated. Hex colors sanitized. Redirects use`
   wp_safe_redirect`.

#### Developers

 * Filter `ppm_projects_total_budget_display` — string/HTML for the budget KPI (
   empty = dash / “connect finance”).
 * REST namespace `ppm/v1`, route `calendar-events`.
 * AJAX: `ppm_calendar_events`, `ppm_kanban_move_card`, `ppm_kanban_save_card`, `
   ppm_kanban_delete_card`.
 * Options include `ppm_db_version` (schema `1.3.0`), `ppm_kanban_column_layout`,`
   ppm_kanban_appearance`, `ppm_sidebar_screens`, logo/name/tagline, `ppm_screen_backgrounds`.
 * Text domain: `persian-project-management`. Domain path: `/languages`. Default
   UI strings are Persian.

#### Not in this release

 * **Team** and **Reports** admin menus are placeholders.
 * No frontend, shortcode, or block.
 * No built-in finance/budget storage (display filter only).
 * No `uninstall.php`: deactivation does **not** drop custom tables or options.

Bundled third-party assets (no CDN): Vazirmatn 33.003, Chart.js 4.4.1, persian-date
1.1.0, jalalidatepicker 0.9.5. See `assets/vendor/`.

Homepage: [Aria Project Management](https://ariacoder.ir/aria-project-management/).
Author: [Alireza Aminzadeh](https://ariacoder.ir). Source: [GitHub](https://github.com/alireza-aminzadeh/persian-project-management-wordpress-plugin).

## Installation

 1. Upload the `persian-project-management` folder to `/wp-content/plugins/`, or install
    the ZIP from **Plugins  Add New  Upload Plugin**.
 2. Activate **Persian Project Management** from the **Plugins** screen.
 3. Tables `{prefix}ppm_projects` and `{prefix}ppm_tasks` are created; **Administrator**
    receives the plugin capabilities.
 4. In the admin menu, open **مدیریت پروژه** (networking Dashicon, position 26).
 5. Optionally grant `ppm_view_projects`, `ppm_manage_projects`, and `ppm_manage_tasks`
    to other roles with a role editor.
 6. Under the plugin **Settings** screen, set logo, organization name, tagline, Kanban
    backdrop, and per-screen colors.

#### نصب (فارسی)

 1. پوشه را در `wp-content/plugins/persian-project-management` قرار دهید یا ZIP را 
    بارگذاری کنید.
 2. افزونه را فعال کنید.
 3. جداول ساخته می‌شود و مدیرکل قابلیت‌ها را می‌گیرد.
 4. منوی **مدیریت پروژه** را باز کنید.
 5. در صورت نیاز قابلیت‌ها را به نقش‌های دیگر بدهید.
 6. برندینگ و رنگ‌ها را از تنظیمات داخل افزونه تنظیم کنید.

## FAQ

### Does this plugin show anything on the public site?

No. It only adds **مدیریت پروژه** inside `wp-admin`. There are no shortcodes or 
blocks.

### Can Editors or other roles use it?

Not until you assign `ppm_view_projects`, `ppm_manage_projects`, and/or `ppm_manage_tasks`.
Activation grants those capabilities to **Administrator** only.

### Why is the budget card a dash?

The plugin does not store financial data. Return a display string from `ppm_projects_total_budget_display`
to populate the card.

### Are dates stored as Jalali?

No. Date pickers and the calendar can show Jalali; the database and REST API use
Gregorian `Y-m-d`.

### Why are Team and Reports empty?

They are placeholder screens for a future release.

### CSV looks wrong in Excel

Export is UTF-8 with a BOM. Use Excel’s text import if your locale still misreads
the file.

### Where is data stored?

Custom tables `{prefix}ppm_projects` and `{prefix}ppm_tasks`, plus WordPress options
for branding, sidebar, Kanban columns/appearance, and screen colors. Attachments
are Media Library IDs.

### What happens on deactivate?

Tables and options remain. There is no uninstall routine that drops data.

### Does Kanban include closed or archived work?

The board lists **open** tasks on **non-archived** projects only.

### Who can drag Kanban cards?

Anyone who can view the board. Saving the column layout still requires `ppm_manage_tasks`.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Persian Project Management” is open source software. The following people have 
contributed to this plugin.

Contributors

 *   [ Alireza Aminzadeh ](https://profiles.wordpress.org/syeedalireza/)

[Translate “Persian Project Management” into your language.](https://translate.wordpress.org/projects/wp-plugins/persian-project-management)

### Interested in development?

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

## Changelog

#### 2.1.2

 * Version line `2.1.2` (plugin header and `PPM_VERSION`).

#### 2.1.1

 * Plugin URI set to the product page `https://ariacoder.ir/aria-project-management/`
   so it is distinct from Author URI (`https://ariacoder.ir`).

#### 2.1.0

 * Version line `2.1.0` (plugin header and `PPM_VERSION`).
 * Documentation: GitHub README and this `readme.txt` now describe grid/list projects,
   notebook archive/resources, Kanban column editor, Jalali calendar toggle, stored
   options, privacy, and FAQ.

#### 2.0.0

 * Major version line set to `2.0.0`.

#### 1.1.0

 * Plugin header Description expanded for the WordPress Plugins screen (tables, 
   capabilities, dashboard/Chart.js, lifecycle fields, Kanban AJAX, Jalali datepicker,
   work calendar REST + admin-ajax, branding, CSV, placeholders).

#### 1.0.0

 * Initial public release (from `0.1.0`).

## Meta

 *  Version **2.1.2**
 *  Last updated **12 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.2 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [Jalali](https://wordpress.org/plugins/tags/jalali/)[kanban](https://wordpress.org/plugins/tags/kanban/)
   [persian](https://wordpress.org/plugins/tags/persian/)[project management](https://wordpress.org/plugins/tags/project-management/)
   [Tasks](https://wordpress.org/plugins/tags/tasks/)
 *  [Advanced View](https://wordpress.org/plugins/persian-project-management/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/persian-project-management/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/persian-project-management/reviews/)

## Contributors

 *   [ Alireza Aminzadeh ](https://profiles.wordpress.org/syeedalireza/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/persian-project-management/)