Cottonti

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 4. november 2015; checks kræver 10 redigeringer .
Cottonti

Cotonti Siena 0.9 med SymiSun-03-tema
Type CMS / CMF
Udvikler Cotonti Team
Skrevet i PHP
Operativ system software på tværs af platforme
Første udgave 1. februar 2009 ( 2009-02-01 )
nyeste version 0.9.20 ( 14. august 2022)
Licens BSD
Internet side cottonti.com

Cotonti er et modulært content management system og framework baseret på PHP og MySQL . Til slutbrugeren er Cotonti et CMS i mellemklassen, der primært er designet til at skabe online fællesskaber, kommercielle og personlige websteder. Det kan også udvides til ressourcer såsom blogs, e-handelswebsteder, nyhedssider, spilleklaner, virksomhedsportaler og mere.

For udvikleren er Cotonti en minimalistisk indholdsstyringsramme og et sæt moduler, der implementerer standardfunktioner til specifikke typer websteder. Applikationslogik er bygget i stil med traditionel scripting og er baseret på API'en og modellerne fra rammen og modulerne.

En typisk hjemmesideinstallation udføres kun ved hjælp af brugergrænsefladen og administrationspanelet og kræver ikke programmeringsfærdigheder. For at skabe et websted med ikke-standardfunktioner kan det være nødvendigt med PHP / MySQL - programmering eller HTML / CSS - layout, afhængigt af opgavetypen. Indholdsopmærkning , layoutmarkering , applikationsprogrammering og lokalisering er fuldstændig adskilt fra hinanden. Denne tilgang er velegnet til små og mellemstore teams involveret i implementeringen af ​​webprojekter.

I årenes løb har Cotonti fået funktioner, der ligner Drupal i sådanne aspekter af dens konstruktion som en proceduremæssig kerne, en standardlæsser, en modulær arkitektur og en række grundlæggende funktioner, der er til stede i mange andre systemer. De unikke egenskaber ved Cotonti kan betragtes som at følge principperne for den "kollektive ramme" [1] og næsten ubegrænset tilpasningsmuligheder af udseende og adfærd.

Funktioner

Cotonti adskiller sig fra andre indholdsstyringssystemer ved, at det fuldstændigt adskiller PHP -kode fra HTML -markering. Dette giver grafiske designere mulighed for at skabe temaer (skins i tidligere versioner) uden kendskab til PHP. Cotonti giver dig mulighed for at oprette temaer ved at ændre temaer skabt af fællesskabet, eller fra bunden ved at erstatte HTML-kodeelementer med TPL-tags.

Cotonti inkluderer et sæt funktioner, der er typiske for ethvert indholdsstyringssystem: webfora , administrationsværktøjer, et nyhedssystem, afstemninger, upload af brugerfiler, sideoprettelse og brugerregistrering. Yderligere funktionalitet kan tilføjes til den grundlæggende konfiguration ved hjælp af plugins. Som et indholdsstyringssystem giver Cotonti maksimal brugervenlighed og kræver ringe eller ingen moderatorintervention .

Med en relativt lav basisfunktionalitet sammenlignet med andre indholdsstyringssystemer giver Cotonti mulighed for udvidelse og tilpasning i enhver retning. Systemet er designet til at blive brugt som en ramme eller et fundament for at forhindre core bloat og for at give administratorer af specifikke websteder ret til at vælge den nødvendige ekstra funktionalitet. Denne tilgang har altid været hovedfilosofien i motorudviklingen [2] . Cotonti vedligeholder plugins til Seditio samt et stadigt voksende bibliotek af brugerdefinerede plugins .

Designet og layoutet af webstedet er udstyret med et kraftfuldt web-skabelonsystem , som giver webstedsadministratoren mulighed for at oprette, og besøgende kan vælge, mellem flere webstedsdesignmuligheder.

Understøttelse af flersprogede websteder giver dig mulighed for at tilpasse skabeloner og plugins, hvilket sikrer, at brugere, der taler forskellige sprog, bruger et enkelt websted. For at gøre dette kan hver registreret bruger vælge det passende sprog til visning af webstedet.

Nøglefunktioner

For brugere, der har erfaring med at bruge andre systemer, vil en kort oversigt over motorens hovedfunktioner være nyttig:

Arkitektur

Cotonti er et system, der let kan udvides. Dette opnås ved at understøtte forskellige former for udvidelser. Nogle af disse udvidelser følger med basispakken. Andre kan fås fra tredjepartsudviklere på et gratis og kommercielt grundlag.

For at forstå Cotontis arkitektur, forestil dig en almindelig bygning. Grundlaget for en bygning er Foundation eller Core Libraries ( API ), som også leverer al den infrastruktur, der bruges af resten af ​​bygningen. På fundamentet er der blokke, hvori rummene er lukket ind. Disse blokke kaldes moduler . Hvert modul repræsenterer en specifik slags rum beboet af webstedets brugere (køkken, stue, badeværelse). Værelserne indeholder indvendige elementer (møbler, husholdningsapparater, elektronik) kaldet plug- ins . Og endelig er udsmykningen af ​​facaden og valget af dekorationer til den temaer .

Teknisk set er moduler og plugins meget ens. De har fælles navneudvidelser .

Standardadfærden for Cotontis "byggeelementer" kan ændres ved forskellige indgangspunkter, kaldet kroge . Plugins kan have specielle dele, der kobles ind i disse indgangspunkter, hvilket ændrer kontrolstrømmen og tilføjer variabler og blokke til outputkoden.

Udvikling

Kerne- og basispakken i Cotonti er skabt af et internationalt team af uafhængige frivillige og små virksomheder. Patches er bidraget til et offentligt lager . De tekniske detaljer om implementeringen diskuteres normalt i udviklingsteamet.

Nye funktioner og forbedringer foreslås af fællesskabet og diskuteres i åbne fora. Om nødvendigt anvendes et afstemningssystem. Fejlsporing, projektstyring og kodeovervågning implementeres ved hjælp af Git-systemet og er offentligt tilgængelige på GitHub .

Oprettelseshistorie

Cotontis historie begyndte i 2001, da den professionelle programmør Olivier Chapouy fra den franske by Grenoble skabte et nyt indholdsstyringssystem kaldet Land Down Under (LDU). Det var et moderne og pålideligt system, især populært i spilsamfundet som spilportal.

I 2006 annoncerede Neocrome, virksomheden, der udviklede LDU, udgivelsen af ​​Seditio, et nyt proprietært PHP / MySQL -baseret indholdsstyringssystem, der udvikles af Olivier og et lille udviklingsteam. [3] Sammenlignet med LDU leverede Seditio forbedret plugin-understøttelse og udvidelsesmuligheder. På baggrund af datidens andre indholdsstyringssystemer skilte Seditio sig ud for sin kompakthed og sikkerhed. [4] , [5] I 2011 blev Land Down Under- og Seditio-projekterne officielt lukket, men arbejdet med Seditio blev snart genoptaget. Den eneste officielle udløber af LDU/Seditio-linjen er Cotonti, begge projekter udvikles i øjeblikket parallelt.

Cotonti opstod fra et forsøg fra erfarne entusiaster fra Seditio-samfundet på at forbedre systemet i en situation, hvor det officielle hold var inaktivt eller ikke accepterede patches i proprietær kode. Begyndelsen på Cotonti-projektet i 2008 var en pakke af forbedringer til Seditio, hvorefter den 1. februar 2009 fandt den første offentlige udgivelse af Cotonti sted som et selvstændigt produkt [6] . Dette blev muligt efter den officielle tilladelse blev indhentet fra Neocrome til at frigive Cotonti og dens gamle Seditio-kode som open source.

Den oprindelige gren af ​​Cotonti var Genesis, som bestod af udgivelser 0.0.1 - 0.0.5. Det inkluderer alle de ændringer, der har været forventet i lang tid for Seditio. Den anden gren, kaldet Genova, implementerede de forbedringer, der fulgte, efter anmodning fra fællesskabet. I 2010 var Cotonti 0.6.x Genoa blevet den mest stabile gren. Regelmæssige opdateringer til det inkluderer mindre og mindre rettelser og tilføjelser. Et stort antal udvidelser er tilgængelige til 0.6.x-linjen, hvilket giver os mulighed for at betragte den som moden og pålidelig i brug.

I 2009, med en pålidelig og stabil gren bag sig, begyndte udviklerne at arbejde på en helt ny linje af Cotonti kaldet Siena. En mere moderne arkitektur, et nyt niveau af modularitet og en indbygget ramme samt en række væsentlige ændringer, der ikke var mulige i tidligere linjer, adskiller Cotonti Siena fra sine forgængere. Den første officielle udgivelse af 0.9.0-grenen fandt sted den 4. april 2011 [7] . I øjeblikket arbejder Cotonti-udviklingsteamet og brugerfællesskabet hårdt på at hæve stabilitetsniveauet for Siena-grenen til 0.6.x-niveauet og popularisere det ved at skabe efterspurgte udvidelser.

Licens

Cotonti distribueres under betingelserne i BSD-licensen med eneret til at bruge kode fra Seditio/Neocrome og videredistribuere den under samme vilkår. Dette gør Cotonti gratis til både ikke-kommerciel og kommerciel brug, så længe de originale ophavsrettigheder bevares.

Noter

  1. HarvestedFramework . Hentet 31. maj 2011. Arkiveret fra originalen 3. juni 2011.
  2. Tekniske koncepter - Udviklervejledning - Cotonti . Hentet 31. maj 2011. Arkiveret fra originalen 12. maj 2011.
  3. Neocrome - Seditio 100 (utilgængeligt link) . Dato for adgang: 31. maj 2011. Arkiveret fra originalen den 26. juni 2011. 
  4. Søg:Forfatter:SEDITIO - database med sikkerhedssårbarheder . Dato for adgang: 31. maj 2011. Arkiveret fra originalen den 24. juli 2011.
  5. Udnyt databasesøgning . Dato for adgang: 31. maj 2011. Arkiveret fra originalen den 23. juli 2011.
  6. Cotonti 0.0.2 Udgivelse og den store åbning - Meddelelser - Cotonti . Hentet 31. maj 2011. Arkiveret fra originalen 8. juli 2011.
  7. Cotonti Siena 0.9.0 er endelig tilgængelig! - Meddelelser - Cotonti . Hentet 31. maj 2011. Arkiveret fra originalen 12. april 2011.

Links