Filstruktur för bitrix ramverk. Vad är Bitrix. S-Bitrix: Enterprise – en lösning för stora internetprojekt

Jag lovade att ägna en separat artikel åt 1C-Bitrix mjukvaruprodukter, och nu håller jag på att uppfylla detta löfte. Artikeln är en recension, i den kommer jag inte att fördjupa mig i de tekniska detaljerna och funktionerna för att använda programkoden; för detta finns detaljerad dokumentation tillgänglig för alla på företagets officiella webbplats.

Här kommer jag att prata om de viktiga funktionerna i Bitrix Framework, såväl som mjukvaruprodukterna som skapats på denna plattform. Artikeln är först och främst avsedd för användare som vill förstå om vissa Bitrix-utvecklingar behövs för deras verksamhet och vilka funktioner de har. Informationen från den här artikeln kan också vara användbar för utvecklare som arbetar med andra CMS, men som också vill få lite insikt i Bitrix.

På senare tid stöter jag ofta på integration av sajter med CRM-system och program för registrering av varurörelser och Pengar. Oftast i vårt land krävs integration med olika versioner och konfigurationer av 1C. Ofta, när de kontaktar mig, har kunderna antingen redan skapat en Bitrix-webbplats eller är intresserade av möjligheten att byta till denna motor, eftersom 1C-företaget rekommenderar det som ett system som har allt som behövs för att automatisera datautbytet. Många frågor och den samlade praktiska erfarenheten av att arbeta med Bitrix-webbplatser blev de faktorer som gjorde att jag kom ihåg mitt långvariga löfte att prata i detalj om Bitrix och ändå skrev den här artikeln.

Vad är Bitrix?

Jag föreslår att börja med definitionen av själva begreppet Bitrix. Vanligtvis används detta namn i två versioner:
  1. Bitrix är namnet på mjukvaruutvecklarföretaget.
  2. Bitrix är en miljö för att utveckla webbapplikationer, det så kallade Bitrix Framework.
Lite historia
Låt oss först prata om företaget för att förstå var det kom ifrån. programvara"Bitrix" och varför dess namn visade sig vara så. Företaget Bitrix grundades redan 1998, direkt efter finanskrisen, som en webbstudio specialiserad på utveckling av skräddarsydda webbplatser. I början av 2000-talet skapade och började företaget utveckla ett eget CMS-system, som det även kallade Bitrix. Första versionerna CMS Bitrix skilde sig inte i grunden från många andra webbplatsmotorer, förrän 1C-företaget 2007 köpte en kontrollerande andel i Bitrix, varefter webbplatsens ledningssystem fick namnet 1C-Bitrix.

Det är viktigt att förstå att efter en sådan sammanslagning av företag och den efterföljande förändringen av produktens namn skedde på affärs- och marknadsföringsnivå, d.v.s. Företagen gick samman, varumärket slogs samman, men de tekniska lösningarna förblev till största delen desamma – varje mjukvaruprodukt (1C och Bitrix) hade sin egen.

Mycket ofta kommer användare, med fokus på namnet och reklam från 1C-företaget, till slutsatsen: om företaget använder 1C och försöker skapa en onlinebutik, är det bäst att välja Bitrix CMS för detta, eftersom det här är produkter under samma varumärke och 1C-utvecklare rekommenderar också. Det är denna motor som är bäst för att utbyta data med 1C-programmet.

På samma sätt, och vice versa, om det finns en onlinebutik på Bitrix och ägaren kommer till slutsatsen om behovet av att automatisera försäljningen, kommer han troligen att välja 1C-programvara av alla alternativ för redovisningssystem.

Faktum är att Bitrix och 1C är olika produkter skapade av olika företag, och utvecklarna av dessa produkter fungerar helt oberoende av varandra. Det kan inte ens sägas att 1C-utvecklare fokuserar sitt arbete på Bitrix-användarnas behov eller omvänt att Bitrix-utvecklare tar hänsyn till några innovationer från 1C i sitt arbete. Och kombinationen av namn är exklusivt marknadsföring ett drag som måste erkännas var mycket framgångsrikt. Det vill säga att detta drag kan betraktas som ett framgångsrikt drag just från marknadsföringssidan, från den tekniska sidan kan jag inte ge positiva exempel från sammanslagningen.

Bitrix som en mjukvaruprodukt
Alla Bitrix mjukvaruprodukter är baserade på Bitrix Framework. Om du hänvisar till hjälpavsnittet på 1C-Bitrix-webbplatsen kan du se följande definition:
Bitrix Framework är en PHP-baserad plattform för att utveckla webbapplikationer. På denna plattform har 1C-Bitrix skapat två populära produkter: 1C-Bitrix: Site Management och 1C-Bitrix: Corporate Portal.

Denna definition är tydlig för webbutvecklare, men säger ingenting till användarna. Därför ska jag försöka förklara på ett förenklat sätt vad vi pratar om.

Framework är ett slags "framework", en plattform för att skapa mjukvaruprodukter.
PHP är det programmeringsspråk som detta "ramverk" är skrivet i.

Baserat på detta "ramverk", denna plattform, skapade Bitrix-företaget mjukvaruprodukterna "1C-Bitrix: Site Management" och "1C-Bitrix: Corporate Portal". Dessa är färdiga CMS:er som kan installeras på din hosting, konfigureras och arbetas med, precis som med alla andra innehållshanteringssystem.

Ur teknisk synvinkel skapas Bitrix mjukvaruprodukter (webbplatser och mobilapplikationer) på basis av sin egen Bitrix Framework-plattform.

  1. Idag representeras dessa mjukvaruprodukter av följande lösningar:
  2. 1C-Bitrix: Webbplatshantering. Ett system för att skapa hemsidor och nätbutiker.
  3. 1C-Bitrix: Företagsportal. Plattform för att skapa kraftfulla företagsportaler.
  4. Mobilapplikationer baserade på Bitrix Framework (mobilversioner av webbplatser, etc.)
  5. Olika färdiga branschlösningar.
Dessutom har Bitrix-företaget sin egen butik " App Store” kallat MarketPlace, där du även kan köpa eller ladda ner gratis olika lösningar, till exempel mallar, tilläggsmoduler, tillägg för mjukvaruprodukter, färdiga lösningar för uppkoppling av telefoni, integration med andra tjänster m.m.

Utvecklingen av mjukvaruprodukter på Bitrix Framework-plattformen utförs av en smal krets av programmerare som består av företagsspecialister. Detta är en kommersiell produkt, och därför kan denna begränsning anses vara en fördel. Mjukvaruuppdateringar är förutsägbara och tydliga, arbetssättet är omfattande och nya funktioner fungerar vanligtvis precis som de annonseras.

Företaget tar också ett mycket ansvarsfullt förhållningssätt till driften av sin MarketPlace-tilläggs- och applikationsbutik. Inte bara företagsanställda utan även tredjepartsutvecklare kan erbjuda utveckling för denna butik. Men alla föreslagna produkter genomgår strikt förmoderering, lösningen testas av Bitrix-specialister, och först efter att de har godkänts visas i det offentliga området.

Bland nackdelarna med detta tillvägagångssätt bör det noteras att antalet tillägg (moduler) är mycket mindre än för produkter med en gratis licens, och de är mycket mindre olika. Detta är förståeligt - antalet utvecklare begränsas inte av företagets storlek.

Vad är ett "ramverk"? Mer om Bitrix Framework

Bitrix Framework är en viss uppsättning färdiga moduler och komponenter, dvs. "tegelstenar" från vilka Bitrix-programmerare skapar mjukvaruprodukter. I princip kan vilken programmerare som helst, om så önskas, använda Bitrix Framework-plattformen för att skapa sina egna mjukvarulösningar, det är också fullt möjligt att modifiera färdiga Bitrix-produkter på det sätt som användaren behöver.

Bitrix Framework - en lösning med öppen källa, dvs. en programmerare kan modifiera din Bitrix-programvara på vilket sätt han vill; det finns inga begränsningar för åtkomst till programvarumoduler och deras kod i detta system. Men samtidigt är Bitrix Framework en lösning som levereras på basis av licenser. De där. Du kan installera och använda mjukvaruprodukter baserade på Bitrix Framework på lika många datorer som antalet licenser du köpt.

Som jämförelse: 1C-programvaruprodukter kommer också med licensiering, men bara konfigurationen kan ändras; kärnan (basen för mjukvaruprodukten) är inte tillgänglig för programmerare. I Bitrix kan en programmerare göra alla ändringar, inklusive i kärnan. Och till exempel är DRUPAL ett system med öppen källkod, men utan licens.

För att förstå hur Bitrix mjukvarulösningar fungerar måste du veta att var och en av dem består av en kärna (plattform) och tilläggsmoduler. De där. Det finns ett programmeringsspråk (php) där kärnan är skriven. Kärnan innehåller vissa funktioner, regler och verktyg som kan användas av utvecklaren. När du skapar en mjukvaruprodukt ansluts och konfigureras nödvändiga verktyg; vid behov kan kärnan också modifieras. Och när du arbetar med en färdig mjukvaruprodukt kan du också justera plattformen, men oftare förblir den orörd och förbättringar görs med hjälp av olika externa moduler.

Du måste också ta hänsyn till att plattformen redan innehåller en viss lista med basmoduler som kan anslutas eller inaktiveras vid behov. Det är därför, till exempel, företagsportalen har en "varukorgsmodul", vilket verkar vara helt onödigt. Men sedan han gick in grunduppsättning, den finns i alla Bitrix-programvaruprodukter.
Därefter kan användaren (moderator, sajtadministratör, etc.) arbeta med färdiga verktyg och använda dem för att skapa innehåll, lägga upp produkter och så vidare.

Bitrix mjukvaruprodukter

Bitrix mjukvaruprodukter skiljer sig huvudsakligen från varandra i uppsättningen av moduler som ingår i den färdiga lösningen, och är indelade i kategorier beroende på vilken typ av webbplats som kan krävas i ett särskilt fall:
  1. Lösningen "1C-Bitrix: Site Management" är en mjukvaruprodukt som används för att utveckla onlinebutiker, visitkortssajter och liknande projekt.
  2. 1C-Bitrix: Corporate Portal-lösningen är bäst lämpad för stora företag och för alla företag som kräver en företagsportal för att fungera.
  3. Industrilösningar är specialiserade lösningar baserade på Bitrix Framework, som tillhandahåller moduler för att organisera arbetet i en viss bransch.
1C-Bitrix: Enterprise – en lösning för stora internetprojekt.
Också i en separat riktning är det värt att lyfta fram produkten "1C-Bitrix: Mobilapplikation", som används för att skapa mobila versioner webbplatser eller nätbutiker, samt andra typer av applikationer för Mobil enheter, som, när den väl har skapats, kan läggas upp för nedladdning eller försäljning på App Store eller Google Play. Denna mjukvaruprodukt är också en färdig plattform, tack vare vilken skapandet mobila applikationer det går mycket snabbare och enklare än att arbeta som programmerare från grunden.

Låt mig också återigen påminna dig om att alla 1C-Bitrix-produkter efter köp kan modifieras på vilken nivå som helst, från de välbekanta externa modulerna och tilläggen till kärnmodifieringar.

1C-Bitrix. Sajtunderhåll
"Site Management" är en mjukvaruprodukt designad för att skapa och hantera onlinebutiker, visitkortsajter, etc. Det finns ett stort antal utgåvor av denna mjukvaruprodukt, men de är alla avsedda för ett syfte - att skapa en webbplats och dess fortsatta underhåll (fyllning, redigering, etc.).

Från början skapades Bitrix som en motor (CMS) för att skapa onlinebutiker, och därför har Site Management ett mycket brett utbud av möjligheter och rik funktionalitet. Å andra sidan används sällan alla de rika funktionerna hos denna motor. Det är sällsynt att se flera kataloger på en Bitrix-webbplats; marknadsföringsmöjligheter används praktiskt taget inte, eftersom de flesta onlinebutiker inte behöver alla dessa funktioner, men de är fortfarande inkluderade bland mjukvaruproduktens möjligheter och, om behov uppstår, de kan anslutas när som helst.

När du skapar en onlinebutik med produkten Site Management måste du:

  1. Installera själva "motorn" på webbhotellet;
  2. Skapa en design, skapa informationssidor;
  3. Sätt upp en produktkatalog och varukorgshantering (utcheckning);
  4. Koppla vid behov betalningssystem, datautbyte med redovisningsprogram mm.
De flesta funktioner som kan krävas för att implementera någon typ av onlinehandel finns redan i produkten "Site Management", men du kan också använda dina egna utvecklingar eller köpa lösningar från MarketPlace.

Viktig! System "1C-Bitrix. Site Management" kräver ett brett utbud av värdfunktioner; vissa värdföretag introducerar till och med speciella tariffplaner för "onlinebutiker på Bitrix" är detta viktigt att komma ihåg när du väljer hosting och beräknar kostnaden för webbplatssupport.

1C-Bitrix: Företagsportal
En företagsportal är i allmänhet ett webbgränssnitt för anställdas tillgång till företagsdata och applikationer. Wikipedia

1C-Bitrix: En företagsportal är en slags plattform där information samlas in, företagets informationscenter. Detta är en multifunktionell produkt där du kan kombinera information om det mesta olika riktningar. Till exempel har ett företag redovisningsdata i 1C. Redovisning, förflyttning av varor genom lager och försäljning - i 1C. Handel och lager, arbete med potentiella och riktiga kunder - i ett CRM-system tillhandahålls teknisk support i en specialiserad kundsupporttjänst.

En företagsportal låter dig hantera alla dessa områden på ett ställe, samla in data för ledningsrapportering och få en övergripande detaljerad bild av företagets arbete från olika synvinklar. På vissa sätt liknar Bitrix företagsportal en schweizisk kniv: det här verktyget har ingen specialisering, men med dess hjälp kan du utföra en mängd olika åtgärder, eftersom produkten innehåller verktyg för att arbeta med kunder, användare och mycket mer, även om kl. en miniminivå.

1C-Bitrix: Företagsportalen är också positionerad som en produkt som gör att chefen kan kontrollera hela företagets arbetsprocess, för vilken en mängd olika rapportering används; chefen kan också ställa in funktioner, till exempel start och slut av arbetsdagen, sätta uppgifter (projekt) för avdelningar, ställa in tidpunkter och huvudstadier för genomförandet för dem. Dessutom kan ett CRM-system, telefoni, redovisning, bokföringsprogram etc. integreras med portalen.

Det finns två produkter från Bitrix designade för företagsarbete:

  • Bitrix24 är en SAAS-lösning där du betalar för tillgång till molntjänsten. Här behöver du inte betala för dina egna hosting- och specialisttjänster, alla tjänstuppdateringar kommer att vara tillgängliga för dig utan någon åtgärd från din sida. Men samtidigt kommer du bara att kunna använda den funktionalitet som utvecklaren erbjuder, samt lösningar från MarketPlace. Anpassade ändringar är inte möjliga i Bitrix24.
  • En företagsportal är en mjukvaruprodukt med öppen källkod för kunder, som måste installeras på din egen hosting efter köp. Du måste göra alla inställningar för denna mjukvaruprodukt själv. För att få uppdateringar måste du ladda ner dem och installera dem själv. Men samtidigt har dina specialister tillgång till alla funktioner i mjukvaruprodukten och eventuella ändringar kommer att vara tillgängliga för dig.
Branschlösningar
Specialiserade branschlösningar är ett "Site Management"-system med alla funktioner som finns tillgängliga i grundversionen, kompletterat med förinstallerade tillägg för att organisera arbetet i en viss bransch. Till exempel är sådana lösningar mycket populära för att organisera arbetet i medicinska institutioner, budgetorganisationer, utbildningsinstitutioner etc.

Det finns redan särskilda frågeformulär för att skapa en patients journal eller registrera en företagare, skattebetalare, framtida fastighetsägare etc. och så vidare. Implementerade alternativ för sekvensen av åtgärder när du bokar ett möte med en specialist och betalar statlig plikt, fakturor för tjänster, såväl som andra moduler som är nödvändiga för att skapa en bekväm webbplats för en viss bransch.

1C-Bitrix: Enterprise
Denna lösning, designad för implementering av stora och komplexa projekt, säljs till ett mycket högt pris (från 1 499 900 RUB) Bitrix positionerar denna produkt som en lösning för företag som är redo att utnyttja möjligheterna med Internet och e -handel. Produkten inkluderar alla befintliga moduler och tillägg och implementeringen av de mest olika funktioner som du kan tänka dig. Utvecklarna hävdar att produkten, tillsammans med ett stort antal möjligheter, också har en otrolig grad av skalbarhet och flexibilitet och garanterar utökad teknisk support.

Om det är värt att använda en så dyr och kraftfull produkt är upp till dig att avgöra. Vissa stora detaljhandelskedjor arbetar framgångsrikt med denna lösning, andra föredrar att implementera arbetet baserat på den vanliga "Site Management"-funktionen. Allt beror på projektets omfattning och efterfrågan på det breda utbudet av funktioner som utvecklare erbjuder för det pris som anges ovan.

Några ord om MarketPlace

Om du vill kan du också köpa eller ladda ner färdiga lösningar för någon av mjukvaruprodukterna genom din egen applikationsbutik 1C-Bitrix MarketPlace. Det finns en mängd olika mallar, lösningar för integration med olika mjukvaruprodukter och system, och ytterligare moduler för att implementera en mängd olika funktioner. Dessa lösningar kommer också som öppen källkod, d.v.s. Om så önskas kan de modifieras för att passa dina egna behov. Men det är viktigt att förstå det efter att ha gjort några ändringar i koden teknisk support inte tillhandahålls för dessa lösningar.
Viktigt: Bitrix-kärnan, liksom 1C-kärnan, behöver också uppdateras regelbundet. Även om dessa uppdateringar inte är lika kritiska som för 1C-programvaruprodukter, har de också sina egna nyanser.

När du uppdaterar kärnan i en mjukvaruprodukt kan eventuella tillägg och applikationer från MarketPlace sluta fungera, och därför måste du efter uppdateringen testa dessa funktioner på nytt och vid behov ladda ner och installera uppdateringar för dem separat . Dessutom blir uppdateringen otillgänglig eller problematisk om ändringar görs i programvaruproduktkoden.

En sammansatt webbplats är en annan teknik som aktivt främjas av 1C-Bitrix-utvecklare. De positionerar sammansatta platser som en möjlighet att kombinera höga laddningshastigheter med alla funktioner hos en modern, dynamisk webbplats.
Hur det fungerar:
  1. Webbsidor är uppdelade i statiska och dynamiska delar.
  2. För att snabbt visa den statiska delen används caching aktivt.
  3. Systemet laddar in den dynamiska delen bakgrund och även cachar i webbläsaren.
Aktiv användning av caching gör att du kan minska mängden information som webbplatsen skickar till användaren varje gång webbplatsen öppnas igen.

De där. När du först går in på den sammansatta webbplatsen läses sidan in normalt
Ett samtal görs från användarens webbläsare till värdsidan. Sajten genererar ett svar, d.v.s. en helsida tillsammans med alla bilder och andra typer av innehåll. Användaren väntar på att all information ska laddas ner till datorn och ser en helsida.

Sammansatta webbplatser lagrar sedan större delen av sidan (bilder, videor, annan statisk information) i systemets cache. Och när du kommer åt igen, beaktas närvaron av en kopia av den statiska delen av sidan i cachen, och därför genereras och sänds bara den dynamiska delen, resten laddas från cachen. På grund av detta ökar nedladdningshastigheten avsevärt.

Användbarhet av 1C-Bitrix-produkter

Användbarheten av Bitrix mjukvaruprodukter är mycket unik. Till en början använde Bitrix-utvecklarna ett speciellt tillvägagångssätt för sitt CMS, som på många sätt inte sammanföll med andra populära webbinnehållshanteringssystem. Antalet funktioner som ingår i Bitrix mjukvaruprodukter är mycket stort och ökar ännu mer för varje release. Och medan många andra CMS är designade enligt principen att ha en liten och relativt enkel kärna som du kan ansluta en mängd olika lösningar till efter behov, försöker Bitrix lägga in "allt på en gång" i mjukvaruprodukten.

Som ett resultat finns det ett fenomen som kallas överkodning, i 1C-Bitrix mjukvarulösningar finns det för mycket kod och funktioner som oftast inte används. Detta leder i sin tur till ökad komplexitet i hela systemet. Som ett resultat har inte bara användare, utan mycket ofta även programmerare svårt att förstå användbarheten av mjukvaruprodukter och förstå var varje funktion är konfigurerad. Tyvärr är denna nackdel baksidan av kraftfulla och multifunktionella lösningar, vilket är viktigt att tänka på när man väljer en produkt för att skapa en webbplats eller företagsarbete (samarbete).

Sammanfattning

1C-Bitrix mjukvaruprodukter är mycket kraftfulla moderna verktyg för att skapa webbplatser, företagsportaler och mobilapplikationer. Men vi måste förstå att dessa teknologier bara är en av lösningarna som finns på den moderna marknaden. Bitrix har en hög inträdesfrekvens och vissa detaljer. Därför, innan du bestämmer dig för att använda en viss mjukvaruprodukt, är det mycket viktigt att bekanta dig med de olika erbjudandena på marknaden, samt rådgöra med specialister.

Bland fördelarna, förutom möjligheterna som anges ovan, är det också värt att notera att mjukvaruprodukterna och all dokumentation är på ryska, liksom närvaron av många partnerlösningar för att integrera Bitrix med andra system.

Nackdelarna är mjukvaruprodukternas komplexitet för användarna (det är svårt att administrera webbplatser på egen hand, och det är nästan omöjligt att installera utan hjälp av specialister), liksom inte det mest överkomliga priset.

Att jobba eller inte med dessa mjukvarulösningar– allas personliga val. Jag tror att även för integration med 1C är användningen av Bitrix inte nödvändig; det finns andra metoder för att organisera datautbyte. Å andra sidan, för komplexa och stora projekt detta kraftfullt system med omfattande kapacitet kan vara en lämplig lösning.

Om CMS 1C-Bitrix

Systemet är fokuserat på företagswebbplatser, informations- och referensportaler, sociala nätverk, nätbutiker, mediasajter och är lämpligt för att skapa andra typer av webbresurser.

En relationell DBMS används för att lagra platsdata. Följande DBMS stöds: Oracle, MS SQL. Produkten körs på Microsoft Windows och UNIX-liknande plattformar, inklusive GNU/Linux.

"1C-Bitrix: Site Management" säljs i en av sju utgåvor sammanställda av utvecklaren (Start, Standard, Expert, Small Business, Business, Portal, Large Business), som bestämmer uppsättningen av moduler och funktioner i systemet. Hittills finns 26 moduler tillgängliga i systemet: Huvudmodul, Strukturhantering, Informationsblock, Sök, Sociala media, Proaktivt skydd, Komprimering, Webbformulär, Forum, Prenumeration, E-postlistor, Enkäter, Bloggar, Fotogalleri 2.0, Webbanalys, Reklam, Teknisk support, Mail, Utbildning, Testning, Översättning, Valutor, Webbtjänster, Handelskatalog, Internetbutik , Dokumentflöde, AD/LDAP, Prestandaövervakare.

För att fungera korrekt med detta hanteringssystem måste användare utan kunskap om HTML och PHP-språk först konfigurera systemet (skapa en mall baserad på grafisk design, skapa en struktur av sektioner och sidor, samt ansluta systemmoduler). Den här möjligheten tillhandahålls av bolagets partners 1C-Bitrix.

Systemets ideologi representerar uppdelningen av logik i moduler och komponenter. Moduler i "1C-Bitrix: Site Management" är en uppsättning programvarukomponenter som ansvarar för att arbeta med olika typer av databaser, samt tillhandahålla ett enhetligt system-API. Komponenterna tjänar till att koppla samman den slutliga presentationen av information på webbplatsen med systemets mjukvarukärna. De använder API som skapats av modulerna för att organisera hämtning, modifiering och hantering av information i databasen. Komponenter är mycket enklare än moduler, så det är ganska enkelt att ändra logiken på webbplatsen. Samtidigt är den tillhandahållna API-funktionaliteten ganska flexibel och varje komponent kan använda den på sitt eget sätt. Till exempel, på basis av modulen "Infoblocks" kan du organisera alla kataloger: nyheter, produktkatalog, partnerkatalog, fotogalleri. För att organisera en separat typ av katalog är dess egen komponent ansvarig, även om modulen är densamma.

Den första versionen av systemet släpptes 2001. Mer än 20 000 webbplatser har skapats i systemet. I Ryssland och OSS utvecklas sajter på 1C-Bitrix av mer än 3 000 webbstudior.

för närvarande version 8.0.3 tillgänglig.

Om företagsportalen 1C-Bitrix

"1C-Bitrix: Corporate Portal" är en mjukvaruprodukt för att skapa internt företag informationsresurs lösa företagets kommunikations-, organisations- och HR-problem. Som inkluderar 23 moduler för att hantera innehåll, struktur, forum, reklam och andra webbplatsfunktioner.

Nackdelar med systemet

Lista över ändringar i 1C-Bitrix-modulversioner

Modulversioner (från 05/09/2009)

MODUL - VERSION - ÄNDRA
Huvudmodul - 8.0.4 - 2009-04-21
Proaktivt försvar - 8.0.5 - 2009-04-21
Strukturhantering - 8.0.3 - 2009-04-14
Informationsblock - 8.0.2 - 2009-04-22
Sök - 8.0.2 - 2009-04-20
Kompression - 8.0.0 - 04/07/2009
Webbformulär - 8.0.2 - 04/07/2009
Forum - 8.0.8 (beta) - 2009-05-05 (ny)
Prenumeration, utskick - 8.0.1 - 2009-04-20
Omröstningar, omröstning - 8.0.2 - 2009-04-23
Bloggar - 8.0.3 - 2009-04-23
Fotogalleri 2.0 - 8.0.0 - 04/07/2009
Socialt nätverk - 8.0.3 - 2009-04-23
Statistik - 8.0.1 - 2009-04-21
Reklam, banners - 8.0.4 - 05/06/2009 (ny)
Teknisk support - 8.0.1 - 2009-04-21
Mail - 8.0.1 - 2009-04-21
Utbildning - 8.0.1 - 2009-04-21
Översättning - 8.0.1 - 2009-04-21
Valutor - 8.0.1 - 2009-04-21
Webbtjänster - 8.0.0 - 2009-03-27
Handelskatalog - 8.0.1 - 2009-04-21
Webbutik - 8.0.1 - 2009-04-21
Dokumentflöde - 8.0.2 - 2009-04-21
AD/LDAP-integration - 8.0.0 - 04/07/2009
Prestandaövervakning - 8.0.0 - 2009-03-28

se även

Länkar

Information från utvecklaren

  • www.1c-bitrix.ru - utvecklingsbolagets webbplats.
  • dev.1c-bitrix.ru - stödcenter för utvecklare.

Artiklar och programmeringsexempel för 1C-Bitrix

Åsikter om 1C-Bitrix

  • "1C-Bitrix": 6 miljoner träffar - Hur mycket belastning tål sajten?

Anteckningar

Wikimedia Foundation. 2010.

Böcker

  • 1C-Bitrix. Företagsportal. Att öka företagets effektivitet, Robert Basyrov, Boken berättar hur man kan öka företagets effektivitet med hjälp av produkten "1C-Bitrix: Corporate Portal". En ny produkt hjälper ditt företag att organisera lagarbete,... Kategori: Program Förläggare: Peter, e-bok (fb2, fb3, epub, mobi, pdf, html, pdb, lit, doc, rtf, txt)

Fråga: Varför är det acceptabelt att lagra innehåll i filsystemet, även om det är statiskt? Hör inte innehållet hemma i en databas?

Med rätt skicklighet kan den publika delen bestå av ett dussin fysiska filer. Allt innehåll kan finnas i informationsblock, inklusive menyer. Men vanligtvis statiska sidor (t.ex. Om företag) är det bekvämare att redigera som en fil snarare än som en databaspost. Men om det finns ett obegränsat antal sådana statiska sidor, är detta en anledning att strukturera dem och placera dem inte på disk, utan i informationsblock.

Storleken på systemet är ganska stor, eftersom det innehåller många komponenter som är nödvändiga för snabb start och drift av den administrativa delen. Komponenterna konsolideras inte eftersom systemet är modulärt. Moduler, komponenter och mallar har en specifik struktur. Detta är viktigt både för systemuppdateringar och för att utveckla dina egna komponenter.

Ett stort antal filer är en egenskap hos liknande system. (U ZendFramework har samma funktion). Med rätt värdkonfiguration kommer php-förkompilatorer att ta hand om detta problem. Storleken på utrymmet som tilldelas av värden och det stora antalet systemfiler kan vara avgörande. (Problemet är inte den vanliga driften av Bitrix Framework, utan till exempel driften av värdarnas säkerhetskopieringssystem. Med ett stort antal filer börjar de inte fungera särskilt bra.) Därför, för att välja en värd , rekommenderar vi att du använder listan över rekommenderade värdar.

Sammanfattning. Filsystemet valdes som ett verktyg för att lagra webbplatsens struktur, snarare än en databas, på grund av det faktum att:

  • Filen ger mer frihet till webbplatsutvecklaren. Eftersom en fil på systemet bara är en körbar fil.
  • Detta gör det lättare att hantera. Grunden till denna uppfattning är strukturen av statisk HTML-sidor, ordnade i mappar. Genom en viss förbättring (införande av en liten mängd PHP-kod) får vi omedelbart ett projekt igång på Bitrix Framework från en sådan sida.
  • Till viss del är detta en tradition som var av stor betydelse vid gryningen av bildandet av CMS.
  • Denna uppfattning stämmer överens med erfarenheten hos innehållshanterare som arbetar med lokalt filsystem(mappar och filer).

Webbplatsstrukturen kan också finnas i databasen (infoblock), men att hantera hierarkin i en relationsdatabas är inte särskilt bekvämt.

Låt oss titta på användningen av filer i Bitrix Framework med hjälp av exempel:

  1. Filsystem och meny. Menyn i filerna låter dig inte ansluta databasen där den verkligen inte behövs. Detsamma gäller sid- och avsnittsegenskaper, samt filbehörigheter. Teoretiskt är det möjligt att sätta ihop en informationssida där det inte kommer att finnas någon tillgång till databasen alls. Det kommer att fungera snabbare, särskilt på delad hosting. Det finns också bonusar: när du kopierar ett avsnitt kopieras menyn, åtkomsträttigheter och egenskaper för avsnittet omedelbart naturligt.
  2. Filsystem och användare. Användare från den administrativa delen har tillgång till kärnfiler och andra programfiler. Men användarna är olika. Till exempel 1C-Bitrix teknisk support. Om en webbutvecklare inte är säker på sina användare kan han alltid förbjuda dem att redigera både PHP-kod och hela avsnitt (kärna). Enligt det moderna konceptet med Bitrix Framework ska det inte finnas någon PHP-kod i den offentliga delen – allt ska vara inkapslat i komponenter. Sedan redigerar användaren antingen "bar" statik eller konfigurerar komponenten.
  3. Filsystem och språkversioner. Det skulle vara svårt att upprätthålla språkinformation i databasen. Information i språkfiler ändras extremt sällan - det är lättare att redigera en rad i en språkfil en gång om året än att lagra dessa statiska fraser i databasen. Och vi upprepar: databasen är långsam och överflödig.

Filstruktur

Bitrix Framework-filstrukturen är organiserad på ett sådant sätt att mjukvarukomponenter produktkärnorna har separerats från användarfiler, samt filer som definierar den externa presentationen av webbplatsen. Denna funktion låter dig:

  • undvika oönskade ändringar av produktkärnan när du arbetar med systemfiler;
  • utesluta möjligheten att ändra den offentliga delen av webbplatsen när du laddar ner produktuppdateringar.
  • ställa in utseende webbplats för nästan alla dina uppgifter

Hela systemet ligger i katalogen /bitrix/, det innehåller följande underkataloger och filer:

  • /admin/ - administrativa skript;
  • /cache/ - cachefiler;
  • /activities/ - åtgärdsmappar för affärsprocesser;
  • /components/ - mapp för system- och användarkomponenter;
  • /gadgets/ - gadgetmappar;
  • /js/ - Javascript-modulfiler;
  • /stack_cache/ - cachefiler "med vräkning";
  • /themes/ - teman för den administrativa delen;
  • /wizards/ - guidemappar;
  • /images/ - bilder som används både av systemet som helhet och av enskilda moduler;
  • /managed_cache/ - hanterad cache;
  • /modules/ - en katalog med systemmoduler, vars underkatalog har sin egen strikt definierade struktur;
  • /php_interface/ är en hjälptjänstkatalog, den innehåller följande kataloger och filer:
    • dbconn.php- anslutningsparametrar till databasen;
    • init.php - Extra tillval portal;
    • after_connect.php- ansluter omedelbart efter att ha skapat en anslutning till databasen;
    • dbconn_error.php- ansluter om det finns ett fel när en anslutning till databasen skapas;
    • dbquery_error.php- ansluter när det är ett fel just nu SQL-exekvering begäran;
    • / Webbplats-ID/init.php- ytterligare platsparametrar; filen ansluts omedelbart efter att ha definierat en speciell konstant med platsidentifieraren - SITE_ID;
  • /templates/ - katalog med webbplats- och komponentmallar, den innehåller följande underkataloger:
    • /.default/ - en underkatalog med vanliga filer som används av en viss mall som standard, strukturen för denna katalog liknar strukturen för katalogen som innehåller en specifik mall som beskrivs nedan;
    • /site template ID/ - underkatalog med webbplatsmallen, den innehåller följande underkataloger och filer:
      • /components/ - katalog med anpassade komponentmallar;
      • /lang/ - tillhör både denna mall som helhet och till enskilda komponenter;
      • /images/ - katalog med bilder av denna mall;
      • /page_templates/ - katalog med sidmallar och deras beskrivningar lagrade i en fil .content.php. När en användare skapar ny sida, han kan välja vilken mall från de som presenteras i denna katalog som kommer att användas för att göra detta;
      • header.php- prolog till denna mall;
      • sidfot.php- epilog av denna mall;
      • template_styles.css- huvudstilsfil för mallen;
      • styles.css- CSS-mallstilar för visuell redaktör(fliken Webbplatsstilar);
  • /tools/ - under installationen kopieras ytterligare sidor till denna katalog, som kan användas direkt på alla sidor på webbplatsen: hjälp, kalender, bildvisning, etc.;
  • /updates/ - katalog skapad automatiskt av uppdateringssystemet;
  • header.php- en standardfil som i sin tur innehåller en specifik prolog av den aktuella webbplatsmallen; denna fil måste användas på alla sidor i den offentliga delen;
  • sidfot.php- en standardfil som i sin tur innehåller en specifik epilog av den aktuella webbplatsmallen; denna fil måste användas på alla sidor i den offentliga delen;
  • license_key.php- fil med en licensnyckel;
  • spridning.php- en fil som används av huvudmodulen för att överföra besökarcookies till ytterligare domäner på olika webbplatser;
  • redirect.php- fil som används av modulen Statistik för att spela in länkklickhändelser;
  • rk.php- standardfil som används av modulen Reklam för att spela in bannerklickhändelser;
  • stop_redirect.php- fil som används av modulen Statistik att skicka ett meddelande till en besökare som ingår i stopplistan;
  • aktivitetsgräns.php- fil som används av modulen Statistik att skicka ett meddelande till roboten när den överskrider aktivitetsgränsen;
  • och andra tjänstefiler och mappar.

Beroende på vilken version som används kan vissa kataloger och filer saknas.



Kärlek

Kosta
Skrivet på ett lättillgängligt sätt...
Sergey
Tack

Administratör
Såklart du kan. Det räcker att i tidningen välja valet "Nuvarande tillstånd" - "Endast ...
Larisa
Hallå! Säg till mig om det är möjligt att dölja stängda beställningar från beställningslistan...
Administratör
Tydligen ville jag engagera mig i Bitrix-sessionen. Men det gjorde han inte. Som ett resultat, denna linje...
Andrey
God eftermiddag, tack för artikeln. När jag läste uppstod frågan: varför i bearbetningskoden...
Administratör
Problemområdet i sambandet mellan 2 program är alltid utbytet. Det är sällsynt när du lyckas skapa ett utbyte och...
Marina
Hej! Nu jobbar vi kl 11, är det värt att byta till kombinationen UT+detaljhandel? Vad under vattnet...
Ahn
Jag ansluter mig till frågan om handlingar av diskrepans efter...
Kärlek
Det finns ingen kassabok i UNF (rad 159). Detta kan bara genereras genom externa rapporter, som inte finns...
Kosta
Skrivet på ett lättillgängligt sätt...
Sergey
Tack

Senaste artiklarna

Ett infoblock är en enhet som kombinerar flera tabeller i en databas. Det låter dig arbeta med databasen utan att tänka på tabellernas struktur och relationerna mellan dem. Det finns ett speciellt API för att arbeta med informationsblocket. Informationsblocket presenteras också i den administrativa delen av sajten och har hela den nödvändiga uppsättningen visuella kommandon för att visa och redigera information i informationsblocket. Nästan allt som görs i systemet är på ett eller annat sätt knutet till denna modul, även om det inte visas tydligt.

Låt oss räkna hur många tabeller som ingår i informationsblocket för att få en uppfattning om hur kraftfull och, måste jag säga, tung enhet det är.

  • Typer av informationsblock ( b_iblock_type)
  • Informationsblock ( b_iblock)
  • Element ( b_iblock_element)
  • Grupper (sektioner) av informationsblock ( b_iblock_section)
  • Länka element till sektioner. Automatiskt bord. ( b_iblock_section_element)
  • Egenskaper för informationsblocksektioner ( b_iblock_section_property)
  • Informationsblockelementfält ( b_iblock_fields)
  • Egenskaper för informationsblockelement ( b_iblock_property)
  • Alternativ för värden för egenskaper av typen "lista" ( b_iblock_property_enum)
  • Fastighetsvärden ( b_iblock_element_property)
  • SEO-egenskaper ( b_iblock_iproperty)
  • Länka informationsblock till webbplatser ( b_iblock_site)
  • Åtkomsträttigheter till informationsblocket i standardrättighetsläge ( b_iblock_group)
  • Åtkomsträttigheter till informationsblocket i utökat rättighetsläge ( b_iblock_right)
  • Utökade åtkomsträttigheter till sektioner. Automatiskt bord. ( b_iblock_section_right)
  • Utökade åtkomsträttigheter till element. Automatiskt bord. ( b_iblock_element_right)
  • Blockerande element. Används av affärsprocessmodulen ( b_iblock_element_lock)
  • Tabell över sekvensgeneratorer för en egenskap av typen "Räknare". Automatisk. ( b_iblock_sequence)
  • Språkberoende parametrar för informationsblocktyper ( b_iblock_type_lang)
Imponerande va? Naturligtvis används inte alla tabeller alltid, men ändå måste du förstå att informationsblocket är en universell enhet som är flexibel, men också tung. All åtkomst till databasen resulterar i tunga och långa frågor. Därav kraven på högpresterande hosting från Bitrix och behovet av att använda cachning. Detta är den största nackdelen med Bitrix Infoblocks.
Och låt oss omedelbart prata om för- och nackdelarna med detta tillvägagångssätt.

fördelar

  • Universalitet av arbete och API
  • Samma datastruktur för alla projekt
  • Snabb visuell design data struktur
  • Åtkomst från den administrativa delen och från den offentliga delen (du behöver inte utveckla egna gränssnitt)
Minus
  • Ökade prestationskrav
  • Inte optimalt för enkla implementeringar (detta är när du för en enkel datastruktur måste använda ett gäng infoblock-tabeller)
Låt oss gå från teori till praktik, eller snarare till att skapa ett informationsblock och fylla det med data.

Skapa ett informationsblock

Jag kommer inte att gå in på detaljer om att arbeta med infoblocket i Bitrix adminpanel; Jag tror att du kan ta reda på det här på egen hand. Jag kommer bara att beskriva vad vi kommer att behöva för att utveckla vår StartShop-butik. Och vi kommer att ladda ner själva informationsblocket klart från XML-fil så att du redan har ett informationsblock fyllt med produkter med bilder och kan arbeta med det, utan att slösa tid på att fylla i det.
Hantering av informationsblock finns i avsnittet Innehåll.
Vi kommer att behöva en separat Typ av informationsblock, låt oss kalla det Directory, det ska vara trädliknande.
En informationsblockstyp är en egen gruppering som är bekväm för att separera vissa informationsblock från andra. Vi kommer att ha minst två typer av informationsblock: Katalog Och Service.
Därefter kommer vi att behöva en infobox, som vi kommer att ringa Varor.
Förutom de obligatoriska fälten namn, Teckenkod, länk till webbplatsen Jag vill uppmärksamma inställningen CNC(sidadresser) detta är viktigt. URL-inställningar bestämmer adressen där informationsblockelementet eller listan med element kommer att visas. Produktsidor finns trots allt inte som separata sidor på sajten. De genereras dynamiskt, komponenten gör en begäran till informationsblocket, tar emot data och utfärdar en virtuell sida på en specifik adress. Adressmallen där du behöver göra en förfrågan till infoboxen kommer att konfigureras i komponentparametrarna (till exempel Nyheter) och denna mall måste matcha infoboxinställningarna. Annars öppnas en tom sida.
Låt oss bara ställa in det som jag gjorde för nu, och när du ställer in datautgången kommer du att förstå hur allt fungerar.
  • Sidans URL informationsblock: #SITE_DIR#/katalog/
  • Webbadress till avsnittssidan: #SITE_DIR#/catalog/#SECTION_CODE#/
  • Webbadress för detaljvy: #SITE_DIR#/catalog/#SECTION_CODE#/#ELEMENT_CODE#/
Nästa sak vi behöver konfigurera är ytterligare fält Egenskaper informationsblock.

Jag kommer att prata om alla fastigheter efter behov. Nu kommer jag bara att uppmärksamma de två första: Pris Och Kvantitet, detta är den information som kommer att krävas för produkten. Båda fastigheterna kommer att vara av typ siffra.
Om du utökar rullgardinsmenyn Typ du kommer att se att egenskaper kan ha Olika typer data. Inte bara primitiva typer (booleska, sträng, tal, datum), utan också komplexa typer (video, fil, text, bindning till informationsblockelement, bindning till kartor, etc.). De där. Det jag pratade om ovan är att ett informationsblock är en mycket universell enhet som kan lagra olika data i sig själv.

Import/export av informationsblock

Bitrix Academy (material för informationsblocket)

Och så kommer vår webbutik att sälja kläder. Jag tar informationsblocksdata från Bitrix Academy.


Jag rekommenderar starkt att du tittar på deras videolektioner. Allt är väldigt tydligt och på hög nivå. Inte lika detaljerad som min, men efter att ha spenderat ett par timmar kan du täcka mycket information.
Vi tar informationsblocket från kursmaterialet Snabbstart för utvecklare. Det finns samma bilder (jag måste säga, väldigt vackra tjejer) som i demodata från en typisk Bitrix-webbbutik. Allt kursmaterial, inklusive informationsblocket, kan laddas ner från 1c-bitrix hemsida. Jag justerade informationsblocket lite och lägger bara upp det på min hemsida.

Export av infoblock

Att exportera och importera informationsblock är ett annat mycket bekvämt alternativ för att arbeta med informationsblock, särskilt när man studerar Bitrix. Och nu ska jag berätta varför. När du inte har en licens fungerar Bitrix-installationen bara i 30 dagar. För att fortsätta utvecklingen kan du installera den nya Bitrix webbmiljön igen i 30 dagar (detta diskuterades i lektion 2). Men vad ska man göra med uppgifterna? ange manuellt? Det är här möjligheten att exportera och importera informationsblockdata kommer att rädda oss. Således kan du arbeta på demoversionen ganska länge. Informationsblock laddas via export/import, och webbplatsens struktur och mapp lokal bara kopiera från det gamla projektet.
För att exportera ett infoblock måste du gå till avsnittet i Bitrix adminpanel Innehåll.


Det är möjligt att exportera i 2 format CSV Och XML. Funktionerna för att exportera i dessa format är följande:

CSV

Vid export till CSV Det är möjligt att konfigurera fälten som ska laddas upp till filen. Men bilderna kommer inte att laddas upp.

Följaktligen måste du vid import först skapa ett informationsblock med alla fält och i importinställningarna ange vilka fält du ska ladda data från filen till.
Det är bekvämt att utföra sådan import till ett befintligt informationsblock, som kan skilja sig åt i struktur. Till exempel, genom import kan du kopiera katalogdata från en gammal webbplats till en ny med en annan struktur. Du kan till och med konvertera eller komplettera data i en fil i Excel och sedan ladda upp den.

XML

Vid export till XML Det finns inga alternativ för att anpassa de uppladdade fälten, informationsblocket kommer att laddas upp helt, men tillsammans med bilderna.
Bilderna kommer att laddas upp till samma katalog i mappen katalog_filer som en mapp iblock .
Vid import från XML Det finns inget alternativ att välja fält att importera. Ett nytt informationsblock kommer att skapas eller ett befintligt informationsblock kommer att uppdateras helt. Det är inte ens nödvändigt att ange Typ av informationsblock vid import skapas den automatiskt.
Den här metoden Perfekt för att överföra arbete från en plats till en annan. Vi bearbetade till exempel data på en testplats och överförde den sedan till produktionsplatsen. Tja, eller, som jag skrev ovan, på så sätt kan du överföra data till demoinstallationen och fortsätta använda den. För att lära sig Bitrix är detta helt enkelt en oumbärlig mekanism. Detta är vad vi kommer att använda. Ladda ner arkivet med infoblockdata och ladda upp det till ditt projekt, till exempel till en mapp uplod. Packa upp arkivet i den aktuella mappen.


Importera sedan via XML, som på bilden ovan, genom att välja filen som ska importeras catalog.xml . En informationsruta med alla bilder från mappen kommer att laddas katalog_filer. (En anmärkning: vid laddning uppdateras inte bilderna och om informationsblocket ursprungligen laddades utan dem kommer de inte att läggas till. I det här fallet måste du ta bort informationsblocken eller elementen från det och ladda dem omedelbart med bilderna.)
Gå till informationsblocket Varor och kolla, det ska se ut så här.
Och för att omedelbart se bilder i listan måste listan konfigureras. För att göra detta, klicka på inställningsknappen i listan i det övre högra hörnet.


Och välj de fält du behöver visa. I det här fallet är bilden för tillkännagivandet. (i framtiden kommer det att vara möjligt att visa kvantitet och pris för bekvämlighet).

Från författaren:
Tja, vi kom på det med Infoblocks - huvudessensen av Bitrix. Vi kommer att arbeta med dem under hela kursen. All nödvändig data kommer att lagras i informationsblock. Det här är en lista med banners, kommentarer och prenumerationer och allt annat vi behöver. Och i nästa artikel kommer vi att visa information från informationsblocket med hjälp av komponenten bitrix:nyheter. Prenumerera om du inte redan har gjort det så ses vi för nya lektioner!

En liten teori:

I systemet Bitrix en ganska populär arkitektur är fastställd: uppdelning av data, presentation och bearbetning av användaråtgärder i tre separata komponenter.
Denna arkitektur kallas MVC(Model-view-controller, "Model-view-behavior"), och används ofta för att designa olika mjukvaruprodukter.

I sin tur är MVC-mallen för Bitrix Framework bildad av följande delar:
Modell- detta är ett API;
Prestanda- dessa är mallar;
Kontrollerär en komponent;

I den här artikeln kommer vi att prata om Bitrix-komponenten.
Komponentär en kontroller och vy för användning i den offentliga delen. Komponenten manipulerar data med hjälp av API:et för en eller flera moduler. Komponentmallen (vyn) visar data på sidan.

Komponentstruktur

Standard Bitrix-komponenter lagras i katalogen /bitrix/components/bitrix/. Enligt utvecklarna: komponenter som finns i den här katalogen kan skrivas över under en uppdatering, och för att anpassa komponenter är det bättre att skapa en separat katalog för dina komponenter.

I detta avseende skapar vi i katalogen /bitrix/components/ en ny katalog där våra komponenter kommer att lagras.

Låt oss ge det namnet custom. Låt oss nu skapa en katalog för vår komponent /bitrix/components/custom/sections.list/. Den vanliga mapp- och filstrukturen för en enkel komponent ser ut så här:
- hjälp
- bilder
—lang
-mallar
.description.php
.parameters.php
component.php

Låt oss titta på allt detta i ordning.
I mappen hjälp det finns vanligtvis en fil .verktygstips.php, som innehåller en rad verktygstips för komponentinställningar. Vi kommer inte att uppehålla oss vid det; ett exempel på den här filen kan hittas i andra komponenter.
I mappen bilder Vanligtvis finns det en komponentikon.
I mappen lang det finns undermappar för språkinställningar komponent.
I mappen mallar— alla komponentmallar.
Vi kan omedelbart skapa en standardmall för vår komponent. Fullständig sökväg innan det kommer att se ut så här: /bitrix/components/custom/sections.list/templates/.default/template.php.
Låt oss infoga en enda rad där för nu: "Detta är komponentmallen custom:sections.list."

Att fila .description.php skriv följande kod:

"Anpassad: lista över infoblocksektioner", "DESCRIPTION" => "Lista med infoblocksektioner", "ICON" => "/images/sections_list.gif", "CACHE_PATH" => "Y", "PATH" => array ("ID" => "verktyg",),); ?>

Så, filen innehåller en array med en beskrivning av komponenten.
Följande är filen - .parameters.php:

array("IBLOCK_ID" => array("NAME" => "Infoblock-ID", "TYPE" => "STRING", "MULTIPLE" => "N", "PARENT" => "BAS", "CACHE_TIME " => array("DEFAULT"=>3600),),); ?>

Låt oss titta på innehållet i filen mer i detalj. PARAMETERS-nyckeln för arrayen $arComponentParameters är en array som beskriver parametrarna. Vår komponent kommer endast att innehålla en huvudparameter - IBLOCK_ID (ID för infoblocket från vilket avsnitten kommer att visas).
Nycklar:
NAMN— parameternamn;
TYP- typ;
FLERA OLIKA— multiplicitet (om 'Y' kan vår parameter ta en rad värden);
FÖRÄLDER— förälder (parametrar kan delas in i grupper);

Var uppmärksam på den andra parametern CACHE_TIME - den är standard för Bitrix-komponenter och ställer in cachningstiden.

En array med $arParams kommer att genereras från arrayen $arComponentParameters, som kommer att användas i huvudfilen för vår komponent - component.php

Filens innehåll component.php:

"; print_r($arParams); echo ""; CModule::IncludeModule("iblock"); if ($this->StartResultCache(3600)) ( $iblock_id = $arParams["IBLOCK_ID"]; $arFilter = array("IBLOCK_ID"=>$iblock_id); $ db_list = CIBlockSection::GetList(array("NAME"=>"ASC"), $arFilter, true, array("ID", "NAME", "CODE")); while($ar_result = $db_list->GetNext ()) ( $arResult = array("ID" => $ar_result["ID"), "CODE" => $ar_result["CODE"], "NAME" => $ar_result["NAME"], "ELEMENT_CNT " => $ar_result["ELEMENT_CNT"]); ) // echo "

"; print_r($arResult); echo "
"; $this->IncludeComponentTemplate(); ) ?>

component.php-filen innehåller all komponentlogik. Huvuduppgiften för denna fil är att bilda $arResult-arrayen från de mottagna parametrarna ($arParams), som sedan skickas till komponentmallen. Observera två kommentarer. Genom att avkommentera dem kan du alltid observera vilka parametrar som kommer till komponenten och vilket resultat mallen får.
Koden för komponenten vi skapade är inte komplicerad - beroende på den mottagna parametern (infoblock-ID) väljer vi sektioner och sparar dem i $arResult-arrayen. Du bör vara uppmärksam på anropet till metoden $this->StartResultCache(). Den kontrollerar om vår komponent har en uppdaterad cache. Om den finns visas information från cachen. Följaktligen finns det ingen fråga till databasen, $arResult-matrisen genereras inte, och även mallen ingår inte (metod $this->IncludeComponentTemplate()).

Komponentmall

Nästa steg är att skapa en mall för komponenten. Mallen tar $arResult-arrayen som genereras i component.php-filen och matar ut dess innehåll till webbläsaren. Mallfilen för vår komponent kommer att finnas på följande sökväg: /bitrix/components/custom/sections.list/templates/.default/template.php
Kod i komponentmallen:

Bloggkategorier

()

Anropa en komponent

Efter att ha skapat en komponent måste den anropas i den nödvändiga koddelen på webbplatsen. För att göra detta, skapa en test.php-fil i roten av webbplatsen och lägg till följande kod till den:

IncludeComponent("custom:sections.list", ".default", array("IBLOCK_ID" => 1), false); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php"); ?>

För parametern IBLOCK_ID måste du ange ID för infoblocket som innehåller sektioner. Efter att ha skrivit parametrarna i filen bör du begära skriptet via webbläsaren och se resultatet./strong




Topp