web-dev-qa-db-fra.com

Puis-je utiliser des espaces de noms dans mon plugin?

Je construis un plugin que j'espère mettre éventuellement sur Envato CodeCanyon.

Actuellement, je crée des fonctions de la forme mypluginname_action. Cela devient vite bête car je dois souvent le faire. Je songe à utiliser PHP espaces de noms, mais je crains qu'il n'y ait peut-être une raison pour laquelle je ne le devrais pas.

  1. Les espaces de noms sont-ils compatibles avec les normes de codage de WordPress et Envato?
  2. Puis-je utiliser les espaces de noms dans les versions PHP que je devrais prendre en charge?
  3. Existe-t-il des fabricants de thèmes/plugins professionnels qui utilisent la fonctionnalité d'espace de noms? Si non pourquoi pas Existe-t-il des pièges courants avec l'utilisation des espaces de noms?

Je suis bien conscient que je peux faire des recherches moi-même, et bien sûr, mais comme je suis au début du développement, j'espère une réponse rapide de la part de personnes plus expérimentées qui auraient déjà examiné la question. .

J'apprécie toutes les pensées à ce sujet.

1
alexg

D'une certaine manière, vous vous compliquez à l'excès, mais OTOH, vous êtes trop simpliste.

Vous ne devriez pas vendre de logiciels que vous ne pouvez pas tester. Si vous déclarez que votre logiciel fonctionne avec toutes les versions de wordpress commençant par 3.5 et php commençant par 5.3, vous pouvez vous en passer si vous ne testez pas toutes les combinaisons, mais si une version s'avère ne pas fonctionner avec votre code, vous devrez passer du temps inattendu pour le réparer. Le temps supplémentaire pourrait faire la différence entre un profit et une perte, et pendant que vous essayez de le réparer, votre réputation pourrait être irrémédiablement ternie.

Pour le moment, wordpress recommande 5.6, commencez par cela, écrivez de bons tests unitaires et une fois que votre code fonctionne sur 5.6, vous pouvez essayer de l’exécuter sur 5.5, etc., et voir où il se casse. Je dirais qu’à ce stade, ne vous souciez pas de corriger l’erreur, attendez qu’il y ait une demande de compatibilité avec cette version et son ampleur, pour décider si vous souhaitez réellement déployer des efforts pour la prendre en charge.

1
Mark Kaplun

Vous pouvez totalement utiliser les espaces de noms dans votre projet/thème/plugin!

Le seul inconvénient est que vous introduisez une dépendance PHP 5.3, alors que WordPress lui-même ne nécessite que 5.2.4.

Je suppose qu'en 2015, ce n'est pas un gros problème, même lors de la distribution d'un plugin à une large communauté (opensource ou envato).

L’équipe Roots utilise des espaces de noms dans leurs thèmes, plugins, etc.: https://github.com/roots/sage

5
thomascharbit