Procore Connect
Publish live Procore construction project data on a WordPress site — with shortcodes, blocks, and a cached REST proxy.
Everything Procore Connect does is read-only. It never writes to Procore.
[procore_project_list company_id="4242" limit="10"]
[procore_project id="123"]
[procore_rfis id="123" status="open" limit="5"]
Start here
| Installation | Get the plugin running |
| Authentication | Create a Procore app and connect |
| Shortcodes | Full reference for all eighteen |
| Blocks | Using Procore Connect in the block editor |
| Caching & rate limits | How Procore Connect stays inside Procore’s quotas |
| Templating & styling | Change the markup and the CSS |
| REST API | The optional read-only proxy |
| WP-CLI | Command line operations |
| Troubleshooting | When a shortcode shows nothing |
| Upgrading from 1.x | What changed and what you must do |
What it can display
Projects and company — project directories, project detail panels, single project fields, project images, team members, company vendors, company offices, and project locations with geo microdata.
Documents — drawing areas and specification sections.
Project tools — RFIs, submittals, punch lists, observations, daily logs, change orders and schedule milestones.
Anything else — the generic [procore_data] shortcode renders any endpoint published
in the plugin’s endpoint registry.
Why version 2 is a rewrite
Version 1.x could not work against the live Procore API. It sent its token request to
api.procore.com, but Procore serves authentication from login.procore.com — a
different host — so no access token was ever issued, on any install, regardless of
configuration.
Underneath that, it sent the company scope as a query parameter where Procore requires a
request header, stored the client secret as plaintext in an option loaded on every page
view, ran its connection test from an unverified POST, and cached nothing at all
against an API with a documented ten-second spike limit.
Version 2.0.0 fixes all of that and adds two-mode authentication, caching, rate-limit handling, encrypted credential storage, eleven new shortcodes, blocks, a REST proxy and WP-CLI. The complete list is in the changelog.
Requirements
- WordPress 6.5 or later
- PHP 7.4 or later
- A Procore account with API access
Third-party service
Procore Connect contacts Procore to retrieve the data you ask it to display: login.procore.com
for authentication and api.procore.com for data, or the sandbox or regional hosts you
configure.
It sends your Client ID and Client Secret during authentication, plus the company and project identifiers you configure. No visitor data is sent to Procore.