Installation

Setup guide for WPZylos Requirements package.

Requirements

RequirementVersion
PHP^8.0
wpzylos-core^1.0

Composer Installation

composer require KYNetCode/wpzylos-requirements

Publish Configuration

After installation, publish the config stub to your plugin:

# Publish requirements config
wp myplugin vendor:publish --provider=RequirementsServiceProvider

# Force overwrite existing file
wp myplugin vendor:publish --provider=RequirementsServiceProvider --force

# See all publishable assets
wp myplugin vendor:publish:list

Note: Replace myplugin with your plugin's slug.

Option 2: Composer Script

composer publish-config

This copies requirements.php.stub to config/requirements.php.

Option 3: PHP Method

use WPZylos\Framework\Requirements\RequirementsServiceProvider;

// In your plugin's setup/activation hook
RequirementsServiceProvider::publishConfig(
    __DIR__ . '/config/requirements.php'
);

Option 4: Manual Copy

cp vendor/KYNetCode/wpzylos-requirements/stubs/requirements.php.stub config/requirements.php

Register Service Provider

In your bootstrap/app.php:

<?php

use WPZylos\Framework\Core\Application;
use WPZylos\Framework\Requirements\RequirementsServiceProvider;

$app = Application::create($context);

// Register Requirements FIRST (before other providers)
$app->register(RequirementsServiceProvider::class);

// Other providers...
$app->register(ConfigServiceProvider::class);
$app->register(HooksServiceProvider::class);

return $app;

Important: Register RequirementsServiceProvider first so requirements are validated before other providers attempt to load.

Verify Installation

Create a test config to verify the package works:

// config/requirements.php
return [
    'min_php_version' => '8.0',
    'min_wp_version'  => '6.0',
];

Activate your plugin. If requirements aren't met, you'll see an admin notice.

Next Steps