Installeren vanaf web (voor ontwikkelaars)
From Joomla! Documentation
Joomla! 3.2 introduceerde de nieuwe 'Installeren vanaf web' functie welke de mogelijkheid biedt extensies, die in de JED staan, direct te installeren. Uw extensies, die in de JED staan, beschikbaar maken om vanaf het web te installeren is een twee stappen proces:
- Vul twee nieuwe velden in op de JED
- Stel uw site dienovereenkomstig in
Vul twee nieuwe velden in op de JED
Als u uw extensie op de JED bewerkt, dan ziet u twee nieuwe velden.
De eerste is Download Type, waar u het download type uit vier opties kunt selecteren voor uw extensie:
- Geen
- Gratis directe download link:
- Gratis maar registratie verplicht bij de link:
- Commerciële aankoop verplicht bij de link:
Het tweede veld is Download/registreer/koop URL en kan een van de volgende URL's bevatten:
- Een zip URL bijvoorbeeld http://www.example.com/updates/com_extension_v9.9.zip
- Een update XML URL bijvoorbeeld http://www.example.com/updates/extension_update.xml
Let op: de cache op de server voor de "Installeer vanaf web" functie staat op 2-6 uur en u ziet uw wijzigingen waarschijnlijk niet direct in het Joomla beheergedeelte.
Indien uw extensie een gratis directe download-link heeft dan bent u klaaren kunt u de tweede stap negeren.
Hier staan meer details over het download-type.
Geen
Dit is het meest voorkomend en betekent in feite dat u geen directe installatie URL heeft of wilt voor uw extensie. Alleen de verplichte JED velden zijn ingevuld en "Installatie vanaf web" velden blijven leeg.
Als een gebruiker naar zijn of haar beheergedeelte gaat en klikt op het "Installeer vanaf web" tabblad, kan uw extensies gevonden worden, wordt de "Download" knop getoond, maar er is geen "Installatie" knop.
Gratis directe download link
Dit is de te kiezen optie als uw extensie gratis beschikbaar is zonder registratie of aankoop. Op de "Download/registration/purchase URL" zet u de URL van de update XML of direct de URL van het zip-bestand.
Als een gebruiker naar zijn of haar beheergedeelte gaat en klikt op het "Installeer vanaf web" tabblad, wordt uw extensie gevonden en de "Installeer" knop verschijnt, zodat de gebruiker slechts hoeft te klikken om uw extensie te installeren.
Gratis maar registratie verplicht bij de link
Dit is de te kiezen optie als uw extensie registratie vereist om te downloaden. Op de "Download/registration/purchase URL" plaats u de URL van uw Registratie pagina van uw site.
Als een gebruiker naar zijn of haar beheergedeelte gaat en klikt op het "Installeer vanaf web" tabblad, wordt uw extensie gevonden en de "Installeer" knop verschijnt; als de gebruiker klikt op de installatie-knop wordt hij of zij doorgeleid naar de registratie pagina van uw site.
Indien u uw site juist heeft ingesteld (zie stap 2 hieronder) zal de gebruiker na succesvolle registratie teruggeleid worden naar zijn of haar site om de web installatie te voltooien.
Commerciële aankoop verplicht bij de link
Dit is de te kiezen optie als uw extensie een aankoop vereist om te downloaden. Op de "Download/registration/purchase URL" plaats u de URL van de Registratie pagina van uw extensie
Als een gebruiker naar zijn of haar beheergedeelte gaat en klikt op het "Installeer vanaf web" tabblad, wordt uw extensie gevonden en de "Installeer" knop verschijnt; als de gebruiker klikt op de installatie-knop wordt hij of zij doorgeleid naar de aankoop pagina van uw site.
Indien u uw site juist heeft ingesteld (zie stap 2 hieronder) zal de gebruiker na de succesvolle aankoop teruggeleid worden naar zijn of haar site om de web installatie te voltooien.
[Wat over abonnementen? Lijkt dat op "registratie" of meer op "commercieel"?]
Het instellen van uw site
Zoals eerder vermeld, indien uw extensie vrij beschikbaar is zonder registratie of aankoop, dan hoeft u niets anders te doen, sla deze stap dus over.
Uw site en extensie instellen voor een -Gratis maar registratie verplicht bij de link- extensie
Indien u een consument verplicht zich te registreren moet u uw site instellen om om te gaan met gebruikersregistratie.
Indien niet, dan vult de gebruiker de registratie in en wordt de laatste stap van de installatie niet voltooid.
Hoe web-installatie werkt
Als een gebruiker op de 'Installatie' knop drukt, verzend Joomla deze parameters:
- installat Bijvoorbeeld http://client.domain.com/administrator/index.php?option=com_installer&view=install
- installapp Bijvoorbeeld 99999
installat is de return URL en installapp is JED's extensie-ID.
Om de web installatie stap te voltooien moet uw beheergedeelte deze parameters ontvangen, de registratie verwerken en terugkeren naar de installat URL.
Terwijl de registratie wordt ingevuld en verwerkt, verwacht Joomla de zip URL of een update XML URL te ontvangen. Wanneer het ontvangen wordt, voltooit Joomla uiteindelijk de installatie.
Web installatie met jefreg-plugin
De jefreg-plugin is de referentie implementatie. Een goed beginpunt dat speciaal voor dit doel ontwikkeld is kan hier gevonden worden.
De plugin heeft twee parameters:
- Bestanden om te download
- Begin URL
In de Bestanden om te download parameter, de eerste parameter die u moet instellen is om de plugin te laten verwijzen naar de update XML bestanden van uw extensie, zip files of script (één per regel).
99999=>http://www.example.com/updates/com_extension_v9.9.zip
30458=>http://www.example.com/updates/extension_update.xml
77777=>http://www.example.com/updates/download.php
Als de regel begint met een asterisk [*], wordt het genegeerd en overgelaten aan plugins die downloads ondersteunen nadat een betaling is ontvangen. Voorbeelden van zulke plugins kunnen worden gevonden in het hierboven vermelde archief.
Over 'Begin URL': deze plugin is speciaal ontworpen voor de Joomla Gebruiker Component (Standaard waarde index.php?option=com_users&view=login) het integreert echter ook netjes met iedere registratie pagina. In het Community Builder geval door bijvoorbeeld de beginpunt URL te veranderen in de plugins parameters - in het algemeen is het aanbevolen (maar niet verplicht) dit naar de inlogpagina te verwijzen. Let op: een lege waarde van de parameter zal standaard naar Joomla gebruikers Component inlog pagina verwijzen.
Hoe de jefreg-plugin bouwen
- Download de bestanden vanaf github
- Kopieer de taalbestanden naar de systeem plugin map
- Zip alle bestanden en installeer ze via Extensiebeheer
Stel uw site en extensies in voor een commerciële extensie
Dit vraagt meer werk dan de voorgaande stap. Er wordt geadviseerd dezelfde plugin te downloaden - u moet echter een extra controle inbouwen in de plugin om te controleren of de gebruiker uw extensie heeft gekocht. Aangezien verschillende extensie dit op verschillende manieren implementeren wordt het aan de ontwikkelaars over gelaten om deze functionaliteit te implementeren.
De plugin kan gebruikt worden om de installat en installapp parameters te verkrijgen, maar het moet NIET de zip URL of update XML URL teruggeven bij het inloggen. Als de aankoop voltooid is kan worden teruggegaan om de installatie te voltooien.
Broncode voor de functie
U kunt bug fixes en nieuwe functies bijdragen op de volgende plaatsen:
- https://github.com/joomla-extensions/install-from-web-client (client plugin)
- https://github.com/joomla-extensions/install-from-web-server (server part)
- https://github.com/joomla-extensions/install-from-web-plugins (voorbeeld plugin om te gebruiken door ontwikkelaars)
- https://github.com/joomla/joomla-cms (CMS repo)