Projectopia – WordPress Project Management 5.0.0

Does "Projectopia - WordPress Project Management Plugin" work with WordPress 5.8.2 and PHP 7.4.8? A smoke test was performed on .

Summary

Errors
1PHP notices
1JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 1.46 MiB
The average PHP memory usage increased by this amount after activating by the plugin.

Page speed impact: 0.049 seconds
The average page load time increased by this amount after activating the plugin.

Environment
WordPress version5.8.2
PHP version7.4.8
MySQL version8.0.21
PHP memory limit256M
Plugin Info
Last updated
Active installs 400+
WordPress.org page https://wordpress.org/plugins/projectopia-core/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 14

Settings ‹ Test site — WordPress

Page screenshot: Settings ‹ Test site — WordPress
URL /wp-admin/admin.php?page=pto-settings&sub-page=pto-welcome
Requested URL /wp-admin/plugins.php?action=activate&plugin=projectopia-core%2Fprojectopia-core.php&plugin_status=all&paged=1&s&_wpnonce=3d7b37275a
Aspect after-activation
HTTP status 200
Load time 5.737 s
Memory usage 4.66 MiB
JS errors None
Resource errors None

Projectopia

Page screenshot: Projectopia
URL /wp-admin/admin.php?page=pto-dashboard
Aspect menu-item
HTTP status 200
Load time 0.544 s
Memory usage 4.73 MiB
JS errors None
Resource errors None

Projectopia → Roadmap

Page screenshot: Projectopia → Roadmap
URL /wp-admin/admin.php?page=pto-roadmap
Aspect menu-item
HTTP status 200
Load time 1.882 s
Memory usage 4.48 MiB
JS errors
[
    {
        "message": "TypeError: Cannot read properties of undefined (reading 'remove')\n    at https://app.productstash.io/js/productstash-embed.js:35:11",
        "trace": null,
        "code": null
    }
]
Resource errors None

Projectopia → Settings

Page screenshot: Projectopia → Settings
URL /wp-admin/admin.php?page=pto-settings
Aspect menu-item
HTTP status 200
Load time 0.483 s
Memory usage 4.65 MiB
JS errors None
Resource errors None

Projectopia → My Calendar

Page screenshot: Projectopia → My Calendar
URL /wp-admin/admin.php?page=pto-calendar
Aspect menu-item
HTTP status 200
Load time 0.519 s
Memory usage 4.48 MiB
JS errors None
Resource errors None

Projectopia → My Messages

Page screenshot: Projectopia → My Messages
URL /wp-admin/admin.php?page=pto-messages
Aspect menu-item
HTTP status 200
Load time 0.401 s
Memory usage 4.63 MiB
JS errors None
Resource errors None

Projectopia → All Messages (Admin)

Page screenshot: Projectopia → All Messages (Admin)
URL /wp-admin/admin.php?page=pto-messages-admin
Aspect menu-item
HTTP status 200
Load time 0.340 s
Memory usage 4.6 MiB
JS errors None
Resource errors None

Projectopia → My Tasks

Page screenshot: Projectopia → My Tasks
URL /wp-admin/admin.php?page=pto-tasks
Aspect menu-item
HTTP status 200
Load time 0.347 s
Memory usage 4.6 MiB
JS errors None
Resource errors None

Projectopia → All Tasks (Admin)

Page screenshot: Projectopia → All Tasks (Admin)
URL /wp-admin/admin.php?page=pto-alltasks
Aspect menu-item
HTTP status 200
Load time 0.344 s
Memory usage 4.6 MiB
JS errors None
Resource errors None

Projectopia → My Profile

Page screenshot: Projectopia → My Profile
URL /wp-admin/admin.php?page=pto-manage-profile
Aspect menu-item
HTTP status 200
Load time 0.366 s
Memory usage 4.48 MiB
JS errors None
Resource errors None

Projectopia → Recurring Invoices

Page screenshot: Projectopia → Recurring Invoices
URL /wp-admin/admin.php?page=pto-recinvoices
Aspect menu-item
HTTP status 200
Load time 0.336 s
Memory usage 4.48 MiB
JS errors None
Resource errors None

Projectopia → All Files (Admin)

Page screenshot: Projectopia → All Files (Admin)
URL /wp-admin/admin.php?page=pto-files-admin
Aspect menu-item
HTTP status 200
Load time 0.424 s
Memory usage 4.48 MiB
JS errors None
Resource errors None

Projectopia → Contact Us

Page screenshot: Projectopia → Contact Us
URL /wp-admin/admin.php?page=pto-dashboard-contact
Aspect menu-item
HTTP status 200
Load time 0.278 s
Memory usage 4.42 MiB
JS errors None
Resource errors None

Test site – Just another WordPress site

Page screenshot: Test site – Just another WordPress site
URL /
Aspect front-page
HTTP status 200
Load time 0.472 s
Memory usage 4.19 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.309 s0.418 s+0.109 s3.08 MiB4.61 MiB+ 1.53 MiB
/wp-admin/edit.php0.179 s0.252 s+0.073 s3.11 MiB4.67 MiB+ 1.56 MiB
/wp-admin/post-new.php0.733 s0.945 s+0.212 s5.27 MiB6.77 MiB+ 1.51 MiB
/wp-admin/upload.php0.483 s0.375 s-0.108 s3.03 MiB4.56 MiB+ 1.53 MiB
/wp-admin/options-writing.php0.248 s0.212 s-0.036 s3.02 MiB4.37 MiB+ 1.34 MiB
/wp-admin/media-new.php0.314 s0.232 s-0.082 s3.01 MiB4.52 MiB+ 1.51 MiB
/wp-admin/edit-tags.php?taxonomy=category0.170 s0.216 s+0.046 s3.04 MiB4.55 MiB+ 1.52 MiB
/wp-admin/post-new.php?post_type=page0.572 s0.733 s+0.161 s5.26 MiB6.76 MiB+ 1.5 MiB
/wp-admin/options-discussion.php0.230 s0.408 s+0.178 s3 MiB4.36 MiB+ 1.36 MiB
/wp-admin/edit-comments.php0.206 s0.253 s+0.047 s3.04 MiB4.55 MiB+ 1.51 MiB
/0.265 s0.201 s-0.064 s2.96 MiB4.19 MiB+ 1.24 MiB
Average 0.337 s0.386 s+0.049 s3.44 MiB4.9 MiB+ 1.46 MiB

Code Statistics

Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where possible, so the numbers you see here may be lower than those reported by other tools.

PHP
JavaScript
Language % Lines of code Comment lines Files
PHP77.5%154,68438,599684
JavaScript14.0%27,9311,738124
CSS3.7%7,47553665
JSON2.0%4,014015
Sass1.1%2,160133
Markdown0.9%1,76608
XML0.5%91104
SVG0.3%575060
YAML0.0%6724
HTML0.0%1701
make0.0%1701
Total 199,617 40,888 969

PHP Code Analysis | More results »

Lines of code 101,393
Total complexity 21,733
Median class complexity 6.0
Median method complexity 2.0
Most complex class Freemius
Most complex function HTML5_TreeBuilder::emitToken()
Classes 349
Methods 3,563
Functions 614

Additions

Things that the plugin adds to the site. This section is not intended to be comprehensive. The test tool only looks for a few specific types of added content.

Options wp_options 138

Custom Post Types 14

ID Name
cqpim_tasksTasks
cqpim_clientClients
cqpim_projectProjects
cqpim_quoteQuotes / Estimates
cqpim_formsQuote Forms
cqpim_templatesMilestone Templates
cqpim_termsTerms Templates
cqpim_leadLeads
cqpim_leadformLead Forms
cqpim_messagesMessages
cqpim_conversationsConversations
cqpim_invoiceInvoices
cqpim_faqFAQ
cqpim_teamsTeam Members

Meta Boxes

{
    "cqpim_client": {
        "contact_details": {
            "title": "Client Details",
            "context": "side"
        },
        "contact_prefs": {
            "title": "Contact Preferences",
            "context": "side"
        },
        "client_contracts": {
            "title": "Contract Settings",
            "context": "side"
        },
        "client_notes": {
            "title": "Client Notes",
            "context": "normal"
        },
        "client_alerts": {
            "title": "Client Alerts",
            "context": "normal"
        },
        "client_files": {
            "title": "Client Files",
            "context": "normal"
        },
        "client_team": {
            "title": "Client Contacts",
            "context": "normal"
        },
        "client_financials": {
            "title": "Client Financials",
            "context": "normal"
        },
        "client_rec_invoices": {
            "title": "Recurring Invoices",
            "context": "normal"
        },
        "client_invoices": {
            "title": "Client Invoices",
            "context": "normal"
        },
        "client_projects": {
            "title": "Client Projects",
            "context": "normal"
        },
        "client_tickets": {
            "title": "Client Tickets",
            "context": "normal"
        },
        "client_logs": {
            "title": "Client Logs",
            "context": "normal"
        }
    },
    "cqpim_forms": {
        "form_builder": {
            "title": "Form Details",
            "context": "normal"
        },
        "form_builder_builder": {
            "title": "Form Builder",
            "context": "normal"
        }
    },
    "cqpim_invoice": {
        "invoice_payments": {
            "title": "Payments / Deductions",
            "context": "normal"
        },
        "invoice_line_items": {
            "title": "Line Items",
            "context": "normal"
        },
        "invoice_client_project": {
            "title": "Invoice Details",
            "context": "side"
        }
    },
    "cqpim_quote": {
        "quote_status": {
            "title": "Quote / Estimate Status",
            "context": "side"
        },
        "quote_client_details": {
            "title": "Quote / Estimate Details",
            "context": "side"
        },
        "quote_details": {
            "title": "Quote / Estimate Header & Footer",
            "context": "normal"
        },
        "quote_elements": {
            "title": "Milestones & Tasks",
            "context": "normal"
        },
        "quote_messages": {
            "title": "Quote Messages",
            "context": "normal"
        },
        "quote_summary": {
            "title": "Project Brief",
            "context": "normal"
        },
        "quote_files": {
            "title": "Quote / Estimate Files",
            "context": "normal"
        }
    },
    "cqpim_teams": {
        "team_details": {
            "title": "Team Member Details",
            "context": "side"
        },
        "team_tasks": {
            "title": "Open Tasks",
            "context": "normal"
        },
        "team_projects": {
            "title": "Projects",
            "context": "normal"
        },
        "team_calendar": {
            "title": "Calendar",
            "context": "normal"
        }
    },
    "cqpim_templates": {
        "templates_template": {
            "title": "Milestones & Tasks",
            "context": "normal"
        }
    },
    "cqpim_terms": {
        "terms_template": {
            "title": "Terms & Conditions",
            "context": "normal"
        }
    },
    "cqpim_leadform": {
        "leadform_builder": {
            "title": "Form Details",
            "context": "normal"
        }
    },
    "cqpim_lead": {
        "lead_summary": {
            "title": "Lead Details",
            "context": "normal"
        },
        "lead_files": {
            "title": "Lead Files",
            "context": "normal"
        },
        "lead_notes": {
            "title": "Lead Notes",
            "context": "normal"
        },
        "lead_submitted": {
            "title": "Submitted On",
            "context": "side"
        },
        "lead_update": {
            "title": "Update Lead",
            "context": "side"
        }
    },
    "cqpim_faq": {
        "faq_template": {
            "title": "Answer",
            "context": "normal"
        }
    }
}

Roles 4

ID Name
cqpim_clientProjectopia Client
cqpim_adminProjectopia Admin
ptouploaderProjectopia Uploader
cqpim_userCqpim User

Capabilities 193

PHP Error Log 1 lines

[19-Nov-2021 03:41:04 UTC] PHP Notice:  Trying to access array offset on value of type null in /wp-content/plugins/projectopia-core/assets/freemius/includes/class-freemius.php on line 7782
See also: All tests for this plugin, How to Hide Projectopia - WordPress Project Management Admin Menus