web-dev-qa-db-fra.com

Masquer les composants sans interface d'administration

Je travaille sur un composant depuis un certain temps déjà, il est censé être plus d'une bibliothèque accessible par lien qu'un composant cependant (c'est pour le traitement de formulaire).

Fondamentalement, aucun paramètre ne doit être ajouté à l'administration. Par conséquent, aucun lien n'est nécessaire, tous les paramètres sont gérés via des modules et des plugins.

À l’heure actuelle, j’utilise un script d’installation pour supprimer le lien dans la base de données. Toutefois, j’estime que le fait de le supprimer de la base de données pourrait avoir un effet indésirable dans les versions ultérieures. Existe-t-il un moyen agréable de procéder autrement que dans la base de données? Sinon, un composant est-il une mauvaise idée? Cela pourrait fonctionner comme une bibliothèque, il faut juste être capable de gérer les requêtes GET.

2
Jordan Ramstad

Créer un plugin système. Dans le plugin, créez une méthode onAfterRoute avec cette ligne:

JLoader::registerPrefix('Mylibraryprefix', __DIR__ );

Donc, dans votre dossier de plugins, placez vos bibliothèques en respectant les conventions de nommage de JLoader. Ainsi, vous pouvez instancier vos cours n'importe où dans joomla.

4
csbenjamin

En fait, il semble que vous deviez créer une bibliothèque plutôt qu'un composant. Puisque la majeure partie de vos classes ne sera utilisée que par des modules et des plugins. Qui auront leurs propres zips d'installation.

Voici un lien qui montre comment configurer le manifeste

Utilisez ceci tutoriel pour configurer le chargement automatique

2
Mathew Lenning