Qual è il modo giusto per aggiungere funzionalità a un plugin WordPress pubblicato?


8

Quindi ho guardato dappertutto per cercare un tipo di regole, o almeno alcune linee guida di cortesia comune, riguardanti questo problema e non sono riuscito a trovare nulla.

Fondamentalmente mi chiedo cosa dovrei fare quando trovo un plugin per WordPress (gratuito, elencato in wordpress.org/plugins/, e include la licenza GNU GP) che penso possa trarre seri benefici aggiungendo una certa quantità di funzionalità.

Dopo aver modificato il codice e incluso le nuove funzionalità, devo:

1) Invialo all'attuale autore del plugin e speri che lo aggiunga?

2) Invia il "nuovo" plugin agli elenchi dei plugin di WordPress come uno dei miei?

3) Evitare una di queste opzioni. Basta cambiare il plugin e usarlo solo per me stesso.

4) Fai qualcos'altro che non è elencato qui? (Implica che i suggerimenti vengano fatti nella sezione commenti.)

Dal punto di vista delle licenze, non vedo alcun divieto di fare nessuna di queste scelte. Non so quanto sarebbe morale prendere il codice, modificarlo e poi venderlo come plugin premium, ma questo non sembra neanche essere proibito dalla Licenza GP.

Qual è la migliore pratica per questa situazione? Ovviamente non voglio offendere l'autore originale del plugin o fare qualcosa che mi farebbe apparire male nella comunità di codifica di WordPress. Tuttavia, in questo caso, sono contrario, penso che il plug-in trarrebbe grandi benefici da questa funzionalità aggiuntiva.

Che ne dici?

Risposte:


8

Chiedi allo sviluppatore prima di iniziare a scrivere il codice.

  • La funzione di cui hai bisogno potrebbe essere già implementata, ma non pubblicata.
  • Oppure l'API del plug-in cambia nella versione successiva e il codice non funzionerà più.
  • Forse l'autore può semplicemente aggiungere un hook, quindi puoi implementare il tuo codice come plugin separato senza cambiare il plugin principale.

Una delle idee chiave dell'open source è la collaborazione. Cerca sempre di migliorare insieme. Evita di pubblicare qualcosa che è il 90% un duplicato di un plug-in esistente. Fai la scelta per gli utenti solo più difficile.

Ma se hai dovuto scrivere quel miglioramento e lo sviluppatore del plugin originale si rifiuta di lavorare con te, rendi pubblico il tuo codice a beneficio di altri utenti.

La licenza dei plug-in ospitati su wordpress.org consentirà sempre tali modifiche o componenti aggiuntivi.


Concordo con Toscho. Personalmente sono sempre aperto al codice inviato dagli utenti e aggiungerò sempre hook e filtri extra in modo che gli utenti possano personalizzare il mio codice da un altro plugin.
helgatheviking

Concordo con Toscho e @helgatheviking. Parlando personalmente, mantengo un repository git e ADORO quando le persone contribuiscono.
Andrew Bartel,

Non essere in disaccordo qui con nessuno, ma l'opzione migliore è ispezionare il codice sorgente per vedere se è possibile modificare la funzionalità utilizzando gli hook (azioni / filtri) già implementati senza modificare alcun codice originale dal plug-in. La seconda opzione migliore è quella di aggiungere una richiesta pull sul repository git del plugin, chiedendo di aggiungere un hook (una richiesta pull è un modo strutturato molto migliore per "contattare l'autore"). Se nessuno di questi funziona, allora è il momento di considerare le altre opzioni.
adelval,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.