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
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 nuestrowp_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 cabeceraRequiere 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ñadiendogit-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()
aparse_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