Automattic / Automattic/VIP-Coding-Standards

Add a check for upgrader_process_complete

Aperta
#715 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Standard: VIP-Go Type: Enhancement
Lingua principale
PHP
Stelle
261
Fork
44
Merge medio
19m
PR unite (30g)
1

Descrizione

## What problem would the enhancement address for VIP?

Because the contents of `/wp-content/plugins` and `/wp-content/themes` are setup as `read-only` directories, and end-users can't install or update plugins from within the `wp-admin`, the [hook `upgrader_process_complete`](https://developer.wordpress.org/reference/hooks/upgrader_process_complete/) will never run for either plugin install or update on the VIP Go platform.

When a VIP customer installs a plugin (via the [GitHub repo](https://docs.wpvip.com/technical-references/vip-codebase/)) with a function tied to that hook, their development team has to reverse engineer the plugin's code to execute that functionality.

This is not entirely unique to VIP, but only impacts WordPress environments where the `/wp-content/plugins` and `/wp-content/themes` are `read-only`, so it may not be a good fit for the [WordPress Coding Standards](https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/).

## Describe the solution you'd like

A sniff that will flag places where the [`upgrader_process_complete` hook](https://developer.wordpress.org/reference/hooks/upgrader_process_complete/) is used. Preferably as an error because it is functionality that will not work.

## What code should be reported as a violation?

```
add_action( 'upgrader_process_complete', 'my_upgrade_function',10, 2);
```

## What code should *not* be reported as a violation?

I'm unaware of cases where this might be detected as a false positive.

## Additional context

_None applicable_

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia leggendo le convenzioni esistenti del repository per sniff e test, quindi segui come vengono rilevate le chiamate all’hook WordPress upgrader_process_complete. L’issue fornisce l’hook target e un esempio di add_action che viola la regola; il lavoro è completo quando lo sniff segnala quell’utilizzo come errore senza che sia stato identificato alcun caso di falso positivo.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
php, wordpress
Ambito
tooling
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
50/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.