PHPackages                             wpconstructor/plugin-version - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. wpconstructor/plugin-version

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

wpconstructor/plugin-version
============================

Gets the plugin version from the main file and verifies that the required PHP and WordPress versions are satisfied. If the requirements are not met, it returns false and triggers an admin notice.

v1.0.3(1mo ago)053GPL-3.0-or-laterPHP

Since Mar 21Pushed 1mo agoCompare

[ Source](https://github.com/WPConstructor/plugin-version)[ Packagist](https://packagist.org/packages/wpconstructor/plugin-version)[ RSS](/packages/wpconstructor-plugin-version/feed)WikiDiscussions main Synced today

READMEChangelog (1)DependenciesVersions (5)Used By (0)

WPConstructor Plugin Version
============================

[](#wpconstructor-plugin-version)

WPConstructor Plugin Version is a lightweight PHP utility for WordPress plugins that allows you to **retrieve the version of a plugin’s main file safely**, without triggering translation errors or requiring manual inclusion of `plugin.php` on the frontend.

It also includes **built-in checks for PHP and WordPress version requirements**, and displays an admin notice if the current environment does not meet the requirements. You can optionally force the plugin to always run using a constant.

---

Features
--------

[](#features)

- Safely retrieves the version of a plugin’s main file.
- Avoids `get_plugin_data()` issues before the `init` hook.
- No need to include `plugin.php` manually on the frontend.
- Checks PHP and WordPress version requirements.
- Shows admin notice to users with `install_plugins` capability if requirements are not met.
- Optionally force plugin execution even if requirements are not met via a constant.

---

Installation
------------

[](#installation)

Install via Composer:

```
composer require wpconstructor/plugin-version
```

Or download from GitHub as a ZIP and include it in your plugin manually.

---

Usage
-----

[](#usage)

Add the following code to your main plugin file:

```
$main_file = __FILE__;

$plugin_version = require __DIR__ . '/vendor/wpconstructor/plugin-version/src/includes/plugin-version.php';

// If requirements are not met and the constant WPCN_PLUGIN_VERSION_ALWAYS_RUN is not set or false, stop execution.
if ( false === $plugin_version ) {
    return; // Stop execution if requirements are not met.
}

// Use the plugin version, e.g., define a constant.
define( 'MY_PLUGIN_VERSION', $plugin_version );
```

> Setting `WPCN_PLUGIN_VERSION_ALWAYS_RUN` to `true` will bypass PHP and WordPress version checks, ensuring the plugin always loads.

---

Admin Notice
------------

[](#admin-notice)

If the current PHP or WordPress version does not meet the requirements, an admin notice is displayed **only for users with the `install_plugins` capability**, unless `WPCN_PLUGIN_VERSION_ALWAYS_RUN` is set to `true`.

---

License
-------

[](#license)

GPL 3.0 or later. See [LICENSE](LICENSE.md) for details.

---

Changelog
---------

[](#changelog)

Version 1.0.3 (May 2026)

- Changed license from MIT to GPL 3.0 or later.
- Changed `composer.json` description.

Version 1.0.2 (March 2026)

- Removed `index.php`

Version 1.0.1 (March 2026)

- Corrected constant typo.
- Updated `README.md`

Version 1.0.0 (March 2026)

- Initial release.

---

Author
------

[](#author)

WPConstructor – [WPConstructor.com](https://wpconstructor.com/)

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance91

Actively maintained with recent releases

Popularity8

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~20 days

Total

4

Last Release

43d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/198608876?v=4)[WPConstructor](/maintainers/WPConstructor)[@WPConstructor](https://github.com/WPConstructor)

---

Top Contributors

[![WPConstructor](https://avatars.githubusercontent.com/u/198608876?v=4)](https://github.com/WPConstructor "WPConstructor (15 commits)")

---

Tags

admin-noticescompatibility-checkphp-requirementsplugin-versionsystem-checkwordpresswp-requirements

### Embed Badge

![Health badge](/badges/wpconstructor-plugin-version/health.svg)

```
[![Health](https://phpackages.com/badges/wpconstructor-plugin-version/health.svg)](https://phpackages.com/packages/wpconstructor-plugin-version)
```

###  Alternatives

[php-tuf/composer-stager

Stages Composer commands so they can be safely run on a production codebase.

195.1M8](/packages/php-tuf-composer-stager)[mediawiki/semantic-result-formats

Provides additional result formats for queries using Semantic MediaWiki

56188.7k1](/packages/mediawiki-semantic-result-formats)[inc2734/wp-customizer-framework

A library for WordPress Customizer.

208.8k1](/packages/inc2734-wp-customizer-framework)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
