Plugin Dependencies

Descripción

Parses a ‘Requires Plugins’ header. If a requiring plugin does not have all its dependencies installed and active, it will not activate.

Entrada en Make para el Proyecto de Dependencias de Plugin destacado

Por favor, abre incidencias en WordPress/wp-plugin-dependencies issues

Mi solución a #22316. Versión de plugin destacado de PR #3032

  • Analiza la cabecera Requiere Plugins que define las dependencias de los plugins utilizando una lista separada por comas de los slugs de wp.org. Para probarlo, tendrás que añadir la cabecera y el contenido a un plugin.
  • En la página de plugins, no se puede eliminar o desactivar un plugin dependiente si el plugin que lo requiere está activo.
  • Las dependencias de los plugins se pueden desactivar o eliminar si el plugin que las requiere no está activo.
  • Se insertan mensajes en la descripción de la fila del plugin, así como datos que indican qué plugins requieren la dependencia.
  • Garantiza que los plugins con dependencias no satisfechas no puedan activarse.
  • Las dependencias circulares no se pueden activar y se muestra un aviso del administrador señalando las dependencias circulares.
  • Garantiza que los plugins con dependencias no satisfechas no puedan activarse.

En test-plugins/ hay varios plugins de un sólo archivo que pueden utilizarse para realizar pruebas.

Pull Requests

Los PR deben hacerse contra la rama develop.

Capturas

  • Plugin es dependiente y Plugin que necesita dependencias
  • Plugin con dependencias
  • Pestaña Dependencias de Plugin
  • Página de búsqueda con dependencias

Reseñas

6 de mayo de 2023
thats very good plugins and i can work it easly
14 de junio de 2022
There is a good plugin, but the plugin page is very crowded and getting to the bottom of the page happens later, which is not good for everyone. An option must be added so that the user or developer can easily enable or disable the display of this plugin information from the page settings at the top of the plugins page.
Leer todas las 4 reseñas

Colaboradores y desarrolladores

«Plugin Dependencies» es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

«Plugin Dependencies» está traducido en 7 idiomas. Gracias a los traductores por sus contribuciones.

Traduce «Plugin Dependencies» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios

3.0.1 / 2023-11-21

  • fix for multisite, too many %s

3.0.0 / 2023-10-06

  • override WP_Plugins_List_Table to add filter and restructuring of PR
  • convert to static class
  • update plugin card description for clarity
  • update Requires WP to 6.4 due to wp_admin_notice() use
  • many more updates to coincide with refactoring of PR

2.0.2 / 2023-08-18

  • add single file plugin to $plugin_dirnames

2.0.1 / 2023-08-16

  • cleanup

2.0.0 / 2023-08-08

  • remove Dependencies tab, Manage Dependencies link, etc, per @azaozz
  • skip associated PHPUnit tests
  • increase scope to protected for many things
  • remove class Init, not needed
  • deactivate buttons, don’t change text

1.14.3 / 2023-70-30

  • add null coalesce
  • require PHP 7.0
  • make commit guard more permissive

1.14.2 / 2023-07-20

  • update guard in get_dependency_filepaths()

1.14.1 / 2023-07-20

  • update modal button on plugin-install.php

1.14.0 / 2023-07-19

  • update More details link
  • fixed strange error between slug from different sources in PD part 2
  • update JS to correctly display Plugin Card button, thanks @costdev

1.13.0 / 2023-07-10

  • update version check
  • simplify plugin card notice

1.12.1 / 2023-07-01

  • extra life to 6.4-beta1

1.12.0 / 2023-05-21

  • cambia el botón de la ficha del plugin a «No se puede instalar» si no se cumplen las dependencias
  • sobrescribe WP_Plugin_Install_List_Table::display_rows() para utilizar nuestro wp_get_plugin_action_button() reprogramado

1.11.0 / 2023-05-21

  • añade datos Requires: a las fichas de los plugins desinstalados cuando los plugins repo tengan la cabecera Requires Plugins activada
  • añade un cambio de estilo temporal a lo anterior
  • añadir caché a los datos de los plugins desinstalados
  • código abstracto para crear botones de acción de instalación de plugins

1.10.0 / 2023-04-29

  • muestra el botón No se puede instalar en la pestaña Dependencias para las dependencias sin paquete
  • devuelve la respuesta genérica plugins_api() a su propio gancho, evita tener que ocultar elementos en la tarjeta de plugin
  • añade más datos a la tarjeta genérica del plugin
  • actualización para WP-CLI
  • no es necesario empezar en gancho

1.9.0 / 2023-04-10

  • garantiza la compatibilidad de WP 6.0 con move_dir()
  • usa JSON en la raíz del plugin para dependencias no punto org aceptables para punto org 🤞
  • actualizados los plugins de prueba
  • ejecuta ganchos durante AJAX en el caso de que realmente quieras que se produzca una Instalación
  • actualizadas las expresiones regulares para que siga estrictamente el formato slug del repositorio de plugins con pruebas

1.8.0 / 2023-04-07

  • actualizar para que funcione de forma nativa con el formato <slug>|<URI> en la cabecera Requiere Plugins
  • dividir PD y PDv2 en clases diferentes
  • añadir más pruebas

1.7.9 / 2023-04-05

  • actualizar el enlace de acción para mantener unido No se puede activar | Gestionar dependencias
  • corrección de la tarjeta para plugin multisitio

1.7.8 / 2023-03-03

  • composer update

1.7.7 / 2023-02-11

  • añade a11y que yo (@afragen) olvidé claramente, es un comienzo
  • corrige los plugins de prueba de dependencia circular para que tengan una carpeta contenedora, las dependencias deben tener una carpeta contenedora

1.7.6 / 2023-02-11

  • actualiza la cabecera Name de los plugins de prueba para que no se confundan con el plugin principal tras la instalación AJAX

1.7.5 / 2023-02-09

  • limpieza de bloques de documentos
  • inicializar durante la carga de la clase

1.7.4 / 2023-02-08

  • composer update

1.7.3 / 2023-01-30

  • composer update usando Composer 2.5.0 para evitar fallos

1.7.2 / 2023-01-02

  • añade ejemplo de dependencia circular irresoluble
  • actualización del estándar de PHP

1.7.1 / 2022-10-27

  • elimina la «visibilidad mejorada» del enlace Dependencias

1.7.0 / 2022-10-25

  • aviso de dependencias circulares
  • añade texto informativo en la pestaña Dependencias, he encontrado un gancho 🙌.
  • muestra avisos de administración en páginas específicas
  • añadidas algunas mejoras en el código, gracias Colin
  • añade datos Requires: a la tarjeta del plugin
  • modifica los enlaces de acción de la tarjeta plugin si no se cumple la dependencia
  • mejora la visibilidad del enlace Dependencias

1.6.2 / 2022-10-18

  • composer update para una mejor comprobación en afragen/add-plugin-dependency-api

1.6.1 / 2022-10-18

  • comprobación más precisa del slug de dependencia para la ruta del archivo
  • no muestra avisos de administración a usuarios que no pueden actuar sobre ellos
  • actualiza las dependencias de composer
  • añade esqueleto de respuesta JSON para Gravity Forms

1.6.0 / 2022-10-15

  • movido el gancho plugin_dependency_endpoints fuera de la clase
  • composer update
  • añadir el filtro wp_plugin_dependencies_slugs para modificar slugs en casos de sustitución de plugin no premium por plugin premium
  • sigue comprobando la API de plugins en busca de un plugin con respuesta genérica
  • actualización condicional para respuesta genérica
  • actualización de plugins de prueba

1.5.1 / 2022-09-02

  • corrección del slug de gravityforms

1.5.0 / 2022-09-02

  • añade afragen/add-plugin-dependency-api como requisito de composer
  • actualización de plugins de prueba eliminando hello-dolly y añadiendo git-updater como ejemplo no punto org
  • comprueba la respuesta vacía del plugin si hay errores

1.4.1 / 2022-08-18

  • ¡vaya!, error tipográfico corregido en uno de los plugins de prueba

1.4.0 / 2022-07-28

  • mejor integración con los PR
  • elimina la acción sobre requisito de la clase, utilizando el gancho
  • corrige la compatibilidad multisitio

1.3.0 / 2022-07-04 🎆

  • corrige get_requires_plugin_names() para tener en cuenta cabeceras vacías
  • actualiza regex para permitir algunos idiomas y símbolos no ascii como slugs

1.2.1 / 2022-06-23

  • añadidos varios plugins de prueba de un solo archivo a test-plugins/

1.2.0 / 2022-06-10

  • no mostrar el enlace de aviso de administrador a la pestaña Dependencias cuando se está en la pestaña Dependencias
  • ser más específico sobre la eliminación de la casilla de verificación de la fila del plugin de dependencia sólo cuando esté activo un plugin que lo requiera

1.1.1 / 2022-06-06

  • limitado el alcance de los métodos de la clase donde se puede
  • actualización de capturas de pantalla

1.1.0 / 2022-06-02

  • cambia el enlace de acción del plugin «Activar» por el texto «No se puede activar» cuando el plugin tiene dependencias no satisfechas
  • eliminar la casilla de verificación de la fila del plugin cuando éste tiene dependencias no satisfechas
  • utiliza el enlace Ver detalles para los plugins que aparecen en Requires: en la fila de plugins

1.0.0 / 2022-05-31 🎂

  • corrección tipográfica
  • versión inicial punto org

0.16.2 / 2022-05-27

  • actualizar los requisitos a WP 6.0

0.16.1 / 2022-05-24

  • añade la desactivación automática para cuando se envíe al trunk, será necesario actualizarlo más adelante

0.16.0 / 2022-05-08

  • cambio de nombre de parse_headers() a parse_plugin_headers(), a pruebas de futuro
  • actualización de las pruebas unitarias

0.15.1 / 2022-04-29

  • limpieza menor

0.15.0 / 2022-04-28

  • reprogramación con get_requires_plugins_names()
  • actualizado el aviso de administración para multisitio

0.14.0

  • actualización de los datos de caducidad necesarios del plugin

0.13.1 / 2022-04-25

  • corrección de parse_headers()

0.13.0 / 2022-04-23

  • preparación para la versión inicial

0.12.9 / 2022-04-19

  • añade tarjetas de plugin para los slugs sin datos API
  • oculta los enlaces de acción y la parte inferior de la tarjeta en las tarjetas de los plugins sin datos API

0.12.3

*renombrar y reorganizar algunas funciones

0.12.2 / 2022-04-06

  • un poco de refuerzo
  • limpia algunas cosas de las pruebas
  • filtro plugin_install_description incluido en el núcleo

0.12.0 / 2022-04-03

  • readme.txt
  • corrige un error PHP si no se encuentran plugins con cabecera Requires Plugins
  • mostrar sólo un aviso administrativo relevante

0.11.6.4

  • plugin actualizado con nuevo registro de cambios