Bitrix Marketplace 24. Kant-en-klare oplossingen in Bitrix Marketplace plaatsen: tijd besparen

De 1C-Bitrix-marktplaats is al meer dan 3 jaar oud en naar mijn mening is er nog steeds geen volwaardig trainingsmateriaal met ontwikkelingsvoorbeelden. Dit probleem werd niet opgelost, zelfs niet met de release van de officiële 1C-Bitrix-training met videozelfstudies. Misschien is de API-documentatie voor ervaren ontwikkelaars voldoende, maar sinds enkele jaren, nadenkend over hoe ik mijn beslissing moest nemen, wist ik niet eens waar ik moest beginnen.

Speciaal om dit probleem op te lossen, heb ik mijn eigen eenvoudigste oplossing met minimale functionaliteit uitgebracht (in versie 0.2) - "SimpleAdaptive Landing".

Structuur:

Eigenaardigheden:

Structuur:

    • WAT WE ZETTEN - ../site/
      • "Diensten" - ../diensten/

Eigenaardigheden:

  • *** - Bevat een kopie van openbare bestanden (Cyrillisch is toegestaan).
    • Op plaatsen waar het de inhoud zou moeten vervangen door de waarden die door de gebruiker in de velden van de wizard zijn ingevoerd, zijn er MACROS.
  • achtereenvolgens. VOORBEELD:

Plaats verpakkingsprincipe:

Fase 3 - Module

Structuur:

Eigenaardigheden:

Verpakkingsprincipe:

  1. We maken een meester.

Fase 4 - Archief voor Markt

Verpakkingsprincipe:

Structuur:

Identiek aan het archief voor de markt op enkele uitzonderingen na*

  • ** - /VERSIENUMMER/..

Eigenaardigheden:

Verpakkingsprincipe:

  1. We nemen het archief met de nieuwste stabiele module (volledig), alle wijzigingen zullen in de site-installatiewizard staan.
  2. Ongewijzigde bestanden verwijderen
  3. We geven "begeleidende bestanden" uit (updater, moduleversie, beschrijving)
  4. We archiveren de map met alle inhoud in VERSION_NUMBER.zip

Hoera, de module/update is klaar om naar de Markt gestuurd te worden!

Een voorbeeld van een simpele kant-en-klare oplossing voor de 1C-Bitrix Marketplace

De 1C-Bitrix-marktplaats is al meer dan 3 jaar oud en naar mijn mening is er nog steeds geen volwaardig trainingsmateriaal met ontwikkelingsvoorbeelden. Dit probleem werd niet opgelost, zelfs niet met de release van de officiële 1C-Bitrix-training met videozelfstudies. Misschien is de API-documentatie voor ervaren ontwikkelaars voldoende, maar sinds enkele jaren, nadenkend over hoe ik mijn beslissing moest nemen, wist ik niet eens waar ik moest beginnen.

Speciaal om dit probleem op te lossen, heb ik mijn eigen eenvoudigste oplossing met minimale functionaliteit uitgebracht (in versie 0.2) - "SimpleAdaptive Landing".

In de repository op GitHub heb ik 5 commits gepubliceerd die overeenkomen met 5 fasen van het veranderen van een eenvoudige site in een volwaardige module voor de markt (en de daaropvolgende update):

  • Fase 1 - Website
    • Fase 2 - Wizard voor het maken van sites
    • Fase 3 - Module (met de master)
    • Fase 4 - archief voor verzending naar de 1C-Bitrix Marketplace
    • Fase 5 - Archief met UPDATE voor 1C-Bitrix Marketplace

Laten we dus kort analyseren wat elk van de fasen bevat en welke transformaties ermee optreden:

Fase 1 - Website

Hier

Structuur:

  • Openbare bestanden - / (van de hoofdmap van de site)
  • Sitesjabloonbestanden – /bitrix/templates/TEMPLATE_ID/

Eigenaardigheden:

  • Bestanden van opgenomen gebieden worden opgeslagen in de sitestructuur (zodat u gemakkelijk nieuwe bestemmingspagina's in verschillende secties van de site kunt toevoegen en de benodigde "slides" van opgenomen gebieden kunt erven)
  • De aanroep voor het opnemen van gebieden bevindt zich op de index.php-pagina (het lijkt mij onhandig, omdat het het risico introduceert van beschadiging van de componentaanroepcode door inhoudeditors, maar voegt geen enkel voordeel toe. Dit was echter een verplichte vereiste voor de oplossing moet worden gemodereerd en de oproepen zijn verplaatst van de sjabloon naar de pagina in versie 0.2.1)

Fase 2 - Wizard voor het maken van sites

Hier

Structuur:

  • De module zelf is /bitrix/wizards/NAME_SPACE/MASTER_NAME/..
    • .description.php* - ../.description.php
    • wizard.php** - ../wizard.php
    • Wizard taalbestanden (wizard en beschrijving!) - ../lang/language_id/
    • Afbeeldingen (gebruikt in de installatiewizard om het installatieproces te ONTWERPEN) - ../images/
    • WAT WE ZETTEN - ../site/
      • Openbare bestanden*** - ../public/LANGUAGE_ID/
      • Sjabloonbestanden**** - ../templates/TEMPLATE_ID/
      • "Diensten" - ../diensten/
        • Lijst met services****** - ../.services.php
        • "Typen"/"Groepen" van diensten, bijvoorbeeld MAIN******* - ../main/

Eigenaardigheden:

  • * - bevat de versie van de wizard (niet kritisch) en een reeks wizardstappen (belangrijk om nieuwe stappen aan de reeks toe te voegen!)
  • ** - Bevat de wizardstappen zelf, evenals "standaardwaarden". Belangrijk in dit bestand:
    • Geef de "standaard" waarden van de primaire array door aan de juiste stap en verwerk ze daar, zelfs als u niet van plan bent ze per gebruiker te wijzigen
    • Vul in de juiste stappen de velden in, maak sites aan, kopieer bestanden uit de bestandsmappen (sectie "WAT WE ZETTEN"). Geen specifieke actie.
    • Het gebruik van Cyrillisch is niet toegestaan!!! Alle Cyrillische tekens worden ingevoegd als taaluitdrukkingen!
  • **** - Bevat een kopie van de sjabloonbestanden. Belangrijk:
    • Cyrillisch is NIET toegestaan. Gebruik taalbestanden of macro's.
    • Op plaatsen waar het de inhoud zou moeten vervangen door de waarden die door de gebruiker in de velden van de wizard zijn ingevoerd, zijn er MACROS.
  • ****** - Reeks services die verbinding maken achtereenvolgens. VOORBEELD:

"TYPE/GROUP_NAME" => Matrix(

"NAME" => GetMessage("SERVICE_MAIN_SETTINGS"),

"STAGES" => Matrix(

"service_file_1.php",

"service_2.php-bestand",

"service_3.php-bestand",

  • ****** - Mappen met groeps-/typenamen bevatten servicebestanden. Services voeren SPECIFIEKE bewerkingen uit. Zo vervangen ze macro's in openbare/sjabloonbestanden door waarden uit de installatiewizard (in het voorbeeld) of importeren ze infoblokken (niet in het voorbeeld).

Plaats verpakkingsprincipe:

  1. Upload openbare bestanden naar /bitrix/wizards/NAMESPACE/MASTER_NAME/site/public/LANGUAGE_ID/
  2. Upload de sjabloon naar /bitrix/wizards/NAMESPACE/MASTER_NAME/site/templates/template_ID/
  3. We vervangen de benodigde stukjes door macro's
  4. We schrijven stap voor stap een wizard en een beschrijving met variabelen die van belang zijn voor het publiek / sjabloon
  5. We schrijven services die werken met macro's
  6. We maken uit (we schrijven taaluitdrukkingen, enz.)

Fase 3 - Module

Hier

Structuur:

  • * - /bitrix/modules/PARTNER_CODE.MODULE_CODE/..
    • Vereist include** - ../include.php
    • Module taalbestanden - ../lang/LANGUAGE_ID/
    • module-installatieprogramma - ../install/
      • Moduleversie*** - ../version.php
      • Installateur**** - ../index.php
      • Installatiewizard***** - ../wizards/
      • Componenten****** - ../componenten/

Eigenaardigheden:

  • * - partnercode in kleine letters. De modulecode is ook in kleine Latijnse letters zonder onderstrepingstekens (in tegenstelling tot de sjabloon / master)
  • ** - Als u geen demobeveiliging implementeert, is deze mogelijk leeg.
  • *** - Kritische waarde voor de markt!
  • **** - Bevat de code van de module met een partner.
  • ***** - Een kopie van de inhoud van de corresponderende map van de vorige fase. Bij het installeren van de oplossing wordt deze gekopieerd naar de map /bitrix/wizards/, waardoor u naar Fase 2 gaat.
  • ****** - Niet weergegeven in het voorbeeld. Het wordt gewoon gekopieerd naar de juiste map bij het installeren van de module.

Verpakkingsprincipe:

  1. We maken een meester.
  2. We versieren elk klatergoud volgens de voorbereiding.

Fase 4 - Archief voor Markt

Hier

Verpakkingsprincipe:

  1. We nemen de inhoud van de /bitrix/modules/PARTNER_CODE.MODULE_CODE/ map en voegen deze toe aan de /.last_version/ map
  2. Archiveer de /.last_version/ map naar de archive.last_version.zip

Fase 5 - Marktupdate

Hier

Structuur:

Identiek aan het archief voor de markt op enkele uitzonderingen na*

  • ** - /VERSIENUMMER/..
    • Tekstbeschrijving van de update*** - ../description.ru
    • Installatieprogramma bijwerken**** - updater.php

Eigenaardigheden:

  • * - Alleen GEWIJZIGDE bestanden worden toegepast op de update
  • ** - In plaats van /.last_version/ wordt het moduleversienummer gebruikt in de mapnaam (moet overeenkomen met het moduleversienummer in /VERSION_NUMBER/install/version.php)
  • *** - Tekstbestand dat wordt gebruikt om informatie over de update op te maken in de 1C-Bitrix Marketplace
  • **** - In het eenvoudigste geval kan een voorbeeld uit de repository worden gebruikt, er zijn nog geen specifieke acties in opgenomen.

Verpakkingsprincipe:

  1. We nemen het archief met de nieuwste stabiele module (volledig), alle wijzigingen zullen in de site-installatiewizard staan.
  2. Ongewijzigde bestanden verwijderen
  3. We geven "begeleidende bestanden" uit (updater, moduleversie, beschrijving)
  4. We archiveren de map met alle inhoud in VERSION_NUMBER.zip

Hoera, de module/update is klaar om naar de Markt gestuurd te worden!

Bitrix24 heeft een open API waarmee onze klanten en partners hun cloud-intranetoplossing kunnen verbeteren door workflows en bedrijfslogica aan te passen in hun cloudgebaseerde portals. Bitrix24 vertegenwoordigt ook een geweldig SaaS-platform voor het maken van aangepaste bedrijfsapplicaties.

Hoe maak je je app voor Bitrix24?

Als je een IT-specialist bent en overweegt een web-app voor Bitrix24 te maken, volg dan deze eenvoudige instructies:

  1. Als u wilt dat uw toepassing beschikbaar is voor alle Bitrix24-accounts, wordt u onze partner door in te vullen. Als u alleen een privé-app voor uw account wilt maken, is registratie niet nodig.
  2. Leer alles over en hoe u uw web-apps kunt maken.
  3. Selecteer 'Applicatie toevoegen' in het menu Toepassingen in uw Bitrix24-account (aan de linkerkant) om uw privé-app te uploaden of in uw partnerprofiel als u wilt dat uw app openbaar wordt vermeld!

Autorisatie en beveiliging van webapps

Het toevoegen van een nieuwe app aan uw Bitrix24 Cloud-account is eenvoudig en we hebben ook geprobeerd om het zo transparant en veilig mogelijk te maken. Elke web-app biedt u een lijst met gegevens die hij mag gebruiken (en wijzigen) in uw Bitrix24-account en vraagt ​​uw toestemming om dit te doen. De nieuwe app wordt alleen geïnstalleerd als u daarvoor toestemming geeft.

Het oAuth-beveiligingsmechanisme zorgt ervoor dat deze webapp alleen toegang krijgt tot de gegevens die u hebt opgegeven (een webapp kan bijvoorbeeld uw toestemming vragen voor toegang tot taken, CRM-leads, enz.).

Heb je ideeën voor web-apps?

Als je geen IT-professional bent, maar je hebt speciale behoeften waarvan je denkt dat ze kunnen worden opgelost via een aangepaste app in je Bitrix24-portal, deel dan gerust je ideeën met ons! We zullen ons best doen om uw intranetoplossing perfect bij uw bedrijf te laten passen! Stuur ons een e-mail naar

Marketplace is een service van 1C-Bitrix waarmee ontwikkelaars hun oplossingen kunnen delen met een breed publiek van klanten en andere ontwikkelaars. Wat zijn oplossingen? Dit kan een kant-en-klare module of component zijn voor een project op 1C-Bitrix-producten, zoals Site Management of Corporate Portal, of een kant-en-klare website ook op 1C-Bitrix-platforms. De eerste categorie oplossingen veronderstelt vooral een publiek van andere ontwikkelaars, en de tweede is meer klantgericht. Oplossingen kunnen zowel betaald als gratis zijn.

De voordelen van het gebruik van deze tool voor ontwikkelaars zijn de mogelijkheid om winst te maken, nieuwe klanten en extra punten om hun beoordeling in het 1C-Bitrix-partnersysteem te verhogen. Een mooie bonus: voor de eerst geplaatste oplossing bouwt Bitrix de zogenaamde welkomstpunten op - driemaal het verschuldigde bedrag.

Om oplossingen in de Marketplace te plaatsen, moet u een aantal stappen doorlopen:

    U dient partner te worden van 1C-Bitrix.

    Onderteken een licentieovereenkomst.
    Voor het hosten van betaalde oplossingen is een licentieovereenkomst vereist. Het contract wordt ingevuld in het persoonlijke account van de partner.

    Bereid een oplossing voor in overeenstemming met de vereisten van het bedrijf.
    Regels, voorschriften en vereisten zijn te vinden in uw account in het gedeelte "Marktplaats", evenals vereisten voor oplossingen zijn te vinden op de link.

    Bereid grafisch materiaal voor voor het maken van de installatiewizard van de oplossing en voor het plaatsen van de oplossing op de Marketplace.

    Maak een installatiewizard en bouw de distributie van de oplossing.
    Documentatie voor het maken van kant-en-klare oplossingen Marketplace Bitrix Framework.

    Zelftest van de oplossing uitvoeren.
    Het testplan is te vinden in de cursus van Bitrix Framework-ontwikkelaars.

    Bereid oplossingsbeschrijvingsteksten, installatie- en technische ondersteuningsgegevens voor.
    Dit is ook een belangrijke stap, omdat de beschrijving van de klant moet begrijpen hoe uw oplossing is, of het bij hem past en of het de moeite waard is om te kopen.

    Selecteer de naam van de oplossing en de categorie die in de catalogus met kant-en-klare oplossingen moet worden geplaatst.
    Houd er rekening mee dat klanten vaak naar oplossingen zoeken door op naam te zoeken, en het wijzigen van de naam vereist het verzenden van nieuwe versies van applicaties naar het contract, dus het is belangrijk om onmiddellijk de juiste ruime en begrijpelijke naam voor de oplossing te kiezen.

    Bereid een demosite voor.
    Om het voor kopers gemakkelijker te maken om te begrijpen dat uw oplossing precies is wat ze zochten en om te beslissen over een aankoop, moet u een online demonstratie van de voltooide oplossing voorbereiden.

    Download de distributiekit in het persoonlijke account van de partner.
    Op de website van Marketplace lees je meer over downloaden. Algemene plaatsingsvragen vindt u in uw account in het gedeelte 'Marktplaats'.

    Wacht tot uw beslissing wordt gemodereerd.
    Houd er rekening mee dat het proces behoorlijk lang kan duren. Als er inconsistenties met de vereisten worden gevonden, wordt de oplossing teruggestuurd voor revisie en nadat de defecten zijn verholpen, wordt het moderatieproces opnieuw herhaald. In dit geval wordt de beslissing teruggestuurd na de eerste gevonden inconsistentie, dus moderatie kan niet meerdere keren achter elkaar plaatsvinden en veel tijd verliezen. We raden u daarom aan om u meteen vertrouwd te maken met de vereisten en de testfase van uw product niet over te slaan.

    Denk na over manieren om kopers naar de oplossing te lokken.
    Omdat het niet genoeg is om een ​​goed product te maken, moet je de doelgroep helpen het te vinden!

Door kant-en-klare oplossingen te ontwikkelen, kunt u een hoger ontwikkelingsniveau bereiken. U zult het product kunnen ontwikkelen zoals u het ziet, rekening houdend met de behoeften van klanten en de mogelijkheid krijgen om het aantal klanten te vergroten wiens tevredenheid afhangt van de kwaliteit van uw oplossing, het onderhoud en de technische ondersteuning. En voor klanten is dit een snelle en redelijke budgetstart. Daarom raden we je aan om zo'n handige tool van 1C-Bitrix eens nader te bekijken.

Marina Sennikova

CTO, whatAsoft