WordPress / WordPress/php-toolkit

Support for plugin header "Requires Plugins" to simplify blueprints

Open
#110 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement V1
Dominant language
PHP
Stars
61
Forks
21
Avg merge
19h 34m
Merged PRs (30d)
7

Description

Would be great if the blueprints library would support the newly introduced plugin header "Requires Plugins" that was introduced in WP 6.5 (https://make.wordpress.org/core/2024/03/05/introducing-plugin-dependencies-in-wordpress-6-5/).

This would then simplify the blueprints needed to create a WP install for a plugin that require other plugins to work. Eg as for the example mentioned in the blog post, https://wordpress.org/plugins/wpsso-wc-metadata/, you would only have to have a blueprint like:

{
  "preferredVersions": {
    "php": "8.0",
    "wp": "latest"
  },
  "phpExtensionBundles": [
    "kitchen-sink"
  ],
  "plugins": [
    "wpsso-wc-metadata"
  ],
  "steps": [
    {
      "step": "login",
      "username": "admin",
      "password": "password"
    }
  ]
}

instead of:

{
  "preferredVersions": {
    "php": "8.0",
    "wp": "latest"
  },
  "phpExtensionBundles": [
    "kitchen-sink"
  ],
  "plugins": [
    "woocommerce",
    "wpsso",
    "wpsso-wc-metadata"
  ],
  "steps": [
    {
      "step": "login",
      "username": "admin",
      "password": "password"
    }
  ]
}

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the WordPress 6.5 plugin-dependencies reference and compare the two blueprint examples in the issue. Determine how the blueprints library should use the “Requires Plugins” header so the shorter blueprint installs its dependencies, and verify that behavior with coverage in the relevant existing tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.