Dette innlegget har kommet lang tid. Enten på Twitter eller i blogosfæren, oppstår spørsmålet ofte, og jeg har blitt spurt mange ganger for min mening på Expression vs. WordPress debatt, og hvorfor man ville velge ett innholdsstyringssystem (CMS) over det andre.

Mitt vanlige svar er at de ikke kan sammenlignes. Mens WordPress hadde gjort store fremskritt i brukervennlighet, for alt annet enn en blogg er det et eple.

ExpressionEngine, med utgivelsen av versjon 2.0, gir en nydelig plattform som, som vi ser, er en oransje.

Håndtering av innhold

Den største forskjellen mellom WordPress og ExpressionEngine er måten innholdet håndteres på.

I WordPress vet vi alle at du kan opprette et nytt innlegg. Dette nye innlegget har vanligvis en innholdsseksjon, men kan ha noen egendefinerte felt som er definert enten i fly eller av utvikleren som opprettet malens rammeverk.

Så når du oppretter et nytt innlegg, vil innholdet bli vist på forskjellige måter, avhengig av hvilken kategori som er valgt, og om kategorien er foreldre eller barn (dvs. underkategori). For det meste, skjønt, om de velger en ny kategori eller inngangsdata i forhåndsdefinerte egendefinerte felt, vil brukeren se samme inngangsskjerm.

Elementene valgt av brukeren bestemmer hvordan innholdet vises. Noen brukere liker dette. Jeg tror det viser WordPress 'røtter som en blogging-plattform. Dette er ikke en banke fordi WordPress har sikkert presset konvolutten på hva som kan gjøres med et CMS bare ved å laste opp noen få filer. Mer å komme på temaer senere.

Endre kanaler

ExpressionEngine håndterer innhold ganske annerledes. I ExpressionEngine definerer brukeren kanaler.

Hver kanal kan betraktes som en egen blogg - faktisk er dette det det ble kalt tilbake i versjon 1.6.x. For hver kanal kan du definere egendefinerte felt, kategorier og oppførsel.

Alt dette er skjult fra den gjennomsnittlige brukeren i administrasjonsdelen av nettstedet. Brukeren vil vanligvis kun ha tilgang til "Publiser" og "Rediger" -delene på nettstedet og eventuelt noen moduler (som ligner på plugin-moduler i WordPress).

Et eksempel

Nylig bygde vi et nettsted for Bay Community Church bruker ExpressionEngine. Nettstedet har en medieavdeling, og i den kanalen opprettet vi følgende egendefinerte felt: tittel, beskrivelse, bilde, lyd og videofiler, filstørrelser, fillengder og dato hvor filene ble registrert.

Selvfølgelig kan kanaler være så enkle eller så komplekse som du vil (denne nettsiden hadde fem til seks flere egendefinerte felt for mediekanalen alene).

De fleste ExpressionEngine-utviklere innser kraften til CMS-tilleggene, som også skjer fordi de fleste av dem har vært sakte til å flytte fra versjon 1.6.x til 2.0. De vet at de fleste tilleggene ikke er tilgjengelige for 2,0 i et par måneder.

Med bare noen få tillegg, utvidet vi ExpressionEngine, slik at kirkepersonalet kunne legge til flere filer per oppføring. I innholdsstrukturen til denne bestemte nettsiden vil en prekeneserie være en oppføring på egenhånd, og enkelte prekener for den serien vil bli lagt til den.

For å gjøre det enda mer komplisert, kan du ha noen forskjellige typer felt i en kanal (f.eks. Tekstboks, tekstfelt, avkrysningsboks, S3 Integrert BucketList , FieldFrame Matrix , nGen File Field ).

Nettstedet har også en seksjon for små grupper av mennesker som samles for studier eller fellesskap.

Hvis du navigerer til en "Ny oppføring" -side for de små gruppene, ser du et helt annet sett med egendefinerte felt (tittel, leder, plassering, møtetid, osv.). Så, fra brukerens perspektiv, er det enkelt å skrive inn nytt innhold fordi hver kanal er skreddersydd til innholdet de registrerer.

Hvorfor jeg elsker ExpressionEngine

Som webdesigner elsker jeg ExpressionEngine fordi det gir meg omfattende kontroll. De fleste av klientene mine har ikke en eneste WYSIWYG-editor hvor som helst på deres hjemmeside! Jeg kan styre overskrifter, MP3, PDF, lister og hva som helst annet trenger styling gjennom CSS.

Med mindre de bestemmer seg for å lære HTML for å bruke inline styling, vil designet ikke bli forferdelig brutt med 50 piksler blinkende røde fonter.

Innholdsbyggingssett

Jeg tror at Drupal-samfunnet opprinnelig utgjorde begrepet Content Construction Kit (CCK). CCK gir i utgangspunktet brukeren mulighet til å definere ulike typer innhold.

Kanskje folkene i EllisLab ville være uenige, men jeg ville definere ExpressionEngine som et CCK-system. WordPress ser ut til å bevege seg i den retningen, men er ikke der ennå. Mange WordPress-malutviklere designer og legger til rammene, noe som gir WordPress nye typer funksjonalitet.

Endre utseendet og følelsen

For det meste kan alle sette opp en WordPress-blogg eller et nettsted med lite kunnskap om WordPress, PHP, HTML eller noe annet som vil holde en Internett-nykommer fra blogging.

Jeg har en ikke-teknisk venn som har satt opp flere WordPress-blogger uten noen av mine hjelper. Bare last ned en mal pakke; pakke ut den; last opp det til wp-content/themes ; Logg Inn; aktiver den nye malingen; og voila! Magic skjer, og du ender med et helt nytt nettsted. WordPress skinner i dette området.

ExpressionEngine 2.0 Flytter i riktig retning

ExpressionEngine, derimot, har ingen enkel måte å legge til eller endre temaer ... ennå.

Med versjon 2.0 ser vi laget på EllisLab begynner å bevege seg i den retningen. Teamet har lagt til funksjonalitet som lar brukere laste opp HTML- og CSS-filer i mapper med bestemte navngivningskonvensjoner ( blog.group , main.group , portfolio.group , etc.), og du kan synkronisere HTML- og CSS-filene med ExpressionEngine, som vil gjenkjenne og gjengi dem.

Problemet er at ExpressionEngine bare begynner å skinne når du kommer inn i sine CCK-evner. Så synkroniseringsfiler er flotte, men det gir deg ikke de egendefinerte feltene, kategoriene og kanalene som bringer ExpressionEngine til livs.

EllisLab har lagt til en fil til CMS-navnet default_content.php , som kreves for å installere et tema og som angir standardinnhold, kanaler, egendefinerte felt og lignende. Men filen er ikke akkurat intuitiv.

ExpressionEngine-felt er svært relasjonelle, så du må definitivt forstå SQL hvis du vil sette en default_content.php- fil sammen.

Endre temaer

Med WordPress kan du laste opp et nytt tema for å endre utseendet på nettstedet når som helst.

ExpressionEngine, derimot, tillater et tema som bare skal legges til på installasjonsstedet. Så, hvis en bruker ønsker å endre utseendet på nettstedet deres, må de hoppe gjennom hoops.

De ville enten måtte beholde deres HTML, egendefinerte felt og andre elementer og deretter endre CSS og bilder. Eller de må lære systemet og deretter definere egendefinerte felt, kategorier og kanaler. Men dette går tilbake til måten de to systemene håndterer innhold på.

Temaer i WordPress vanligvis håndterer innhold på samme måte. Temaer i ExpressionEngine gjør det ikke.

Hva har vi lært?

WordPress er spesielt bra for PHP-utviklere, tinkerers og bloggere. Det er flott for PHP-utviklere fordi de kan bøye CMS til deres vilje; de kan legge til funksjonalitet til rammen, samt legge til tilpassede felt og endre dem etter ønske.

Det er flott for tinkerers, som enkelt kan sette opp et nettsted; og hvis de noen gang kjeder seg med utseendet, kan de søke på nettet etter et nytt tema og ha et helt nytt nettsted på 20 minutter.

De kan også laste ned widgets og plugin-moduler som legger til funksjonalitet raskt. Og etter å ha startet som et blogging system, skinner WordPress som en personlig blogg.

ExpressionEngine er flott for utviklere og designere foran utviklere fordi det ikke krever at brukerne lærer et vanskelig programmeringsspråk for å manipulere det.

De fleste HTML- og CSS-gurus kan forstå de enkle uttrykkene og hvordan de skal brukes.

ExpressionEngine er verktøyet til valg for noen kjente designere: Jesse Bennett-Chamberlain , Veerle Pieters og Andy Clarke , for å nevne noen. Det er ekstremt fleksibelt, og få ting kan ikke oppnås med det.

Som du kan se, er det egentlig en eple til appelsiner sammenligning.


Dette innlegget ble skrevet utelukkende for Webdesigner Depot av Marcus Neto. Marcus er medlem av ExpressionEngine Pro Network og er mannen bak gardinen på EETemplates.com og Blue Fish Design Studio . Han har også sitt ord på Twitter @marcusneto .