getting started with expressionengine

29
Getting Started With ExpressionEngine BostonEErs March 2010 Ruthie BenDor unruthless.com | @unruthless

Upload: ruthie-bendor

Post on 25-Jun-2015

5.396 views

Category:

Technology


2 download

DESCRIPTION

Slides from the March 23rd, 2010 BostonEErs meetup. Check us out at http://meetup.com/bostoneers/ !

TRANSCRIPT

Page 1: Getting Started With ExpressionEngine

Getting Started With ExpressionEngine

BostonEErs March 2010

Ruthie BenDorunruthless.com | @unruthless

Page 2: Getting Started With ExpressionEngine

ExpressionWhat?• EE is a (freakin’ awesome) content

management system for websites.

• Self-hosted: install it on your/your client’s own web server.

• Web-administered: browser-based control panel.

• Written in PHP, runs on MySQL.

Page 3: Getting Started With ExpressionEngine

EllisWho?• ExpressionEngine is a commercial product

by a company called EllisLab.

• EllisLab also created and released CodeIgniter, the open source PHP framework.

• EllisLab is not paying me.

Page 4: Getting Started With ExpressionEngine

Wait, EE isn’t free?• Nope.

• $300 for a commercial license, $150 for a non-commercial license, $100 for freelancers. Includes tech support, free updates for a year.

• Most add-ons are free, though some cost $. Add-ons come from both EllisLab and third-party developers.

• Bottom line: $100-$500 for licensing.**depending on your site, of course.

Page 5: Getting Started With ExpressionEngine

What about hosting?• Any web host that supports PHP and MySQL

can handle ExpressionEngine.

• EllisLab’s server wizard will tell you for sure: http://expressionengine.com/overview/requirements/

• Looking for a web host? EllisLab’s sister company, EngineHosting, specializes in hosting EE websites.

• EngineHosting is also not paying me.

Page 6: Getting Started With ExpressionEngine

Which version do I want?• Mission-critical website? Or need a lot of add-

ons now? EE 1.6.8 (Stable)

• Non-mission-critical site? Or very few add-ons required? EE 2.0.1 (Public Beta)

EE 1.xBeen in active

development since 2004; super-stable;

tons of add-ons

EE 2.xReleased in Dec ’09; built atop CodeIgniter; major improvements to control panel; still buggy

Page 8: Getting Started With ExpressionEngine

Q: Why EE?

Page 9: Getting Started With ExpressionEngine

1. EE flexes to fit your site content, not the other way around.

Q: Why EE?

Page 10: Getting Started With ExpressionEngine

Wordpress has one bucket for content: the blog posts bucket.This is great, if your site is a blog.

“Everything isa blog post!”*posts

*seriously, everything. ‘Pages’, too.

Page 11: Getting Started With ExpressionEngine

But for sites that aren’t just a blog,we often need more than one bucket.

legalcases

jobopenings videos podcasts

posts news pressreleases

staffmembers

events

Page 12: Getting Started With ExpressionEngine

But for sites that aren’t just a blog,we often need more than one channel.

legalcases

jobopenings

videos podcasts

posts news pressreleases

staffmembers

events

Page 13: Getting Started With ExpressionEngine

In EE 1.x, ‘channels’, i.e. buckets of content, are called ‘weblogs’. This, unsurprisingly, tends to confuse people. (WTF, EllisLab?)

Just call them channels.

(A brief aside on terminology)

Page 14: Getting Started With ExpressionEngine

Each of your channels has a different structure -- that is, the group of fields that make up items in that channel.

StaffName

PositionDepartment

BiographyEmail Address

LawsuitsNameDescriptionOutcome (Win/Lose)Related documents

Page 15: Getting Started With ExpressionEngine

1. Create a channel for each type of content your site has.

2. Create a field group for each channel, with the fields applicable to that channel.

3. Assign each channel to use the applicable field group.

4. Start entering content!

How to start entering content into EE

Page 16: Getting Started With ExpressionEngine

Demo:Channels &

Field Groups

Page 17: Getting Started With ExpressionEngine

2. EE enables your content creators to update content by themselves.

Q: Why EE?

Page 18: Getting Started With ExpressionEngine

Demo:Content Entry Form

Page 19: Getting Started With ExpressionEngine

Demo:Member Permissions

Page 20: Getting Started With ExpressionEngine

3. EE lets you display your content how and where you’d like it, via templates.

Q: Why EE?

Page 21: Getting Started With ExpressionEngine

Templates FTW!• Templates are straight-up HTML, CSS,

and/or JavaScript ... it’s your code!

• ... With some special tags mixed in, to pull your site’s content from the database.

Page 22: Getting Started With ExpressionEngine

...{exp:weblog:entries weblog="blog"}

<div class="post"><h3>{title}</h3><div class="post_body">{blog_post_body}</div>

</div>{/exp:weblog:entries}...

...{exp:channel:entries channel="blog"}

<div class="post"><h3>{title}</h3><div class="post_body">{blog_post_body}</div>

</div>{/exp:channel:entries}...

EE 1.x:

EE 2.x:

...<div class="post">

<h3>My first blog post title here!</h3><div class="post_body">The body of my post goes here.</div>

</div>...

No CMS:

Page 23: Getting Started With ExpressionEngine

Big Important Points• Your content is completely separate from

your templates.

• Include content from as many or as few channels on a single template as you like.

• To control which channel content gets outputted, use tag parameters and variables.

Page 24: Getting Started With ExpressionEngine

Demo:Templates

Page 25: Getting Started With ExpressionEngine

More Template Goodness

• You can use PHP in your templates

• You can embed templates within other templates

• You can save templates as files, so you can edit them using your code editor of choice.

Page 26: Getting Started With ExpressionEngine

4. You can extend it to meet your needs.

Q: Why EE?

Page 27: Getting Started With ExpressionEngine

Add-ons• EXTENSIONS [EE 1.x, EE 2.x] are essentially ‘hooks’ in EE that

allow the add-on to pass information and add functionality to existing interfaces. Mostly used to modify the Control Panel.

• MODULES [EE 1.x, EE 2.x] are larger systems -- think standalone applications that you’d want integrated with a CMS. Modules may include their own extensions and plugins. Examples: Comment module, Search module, Channel/Weblog module.

• PLUGINS [EE 1.x, EE 2.x] Plugins work on the template side, and usually contain PHP functions that manipulate things behind the scenes, keeping your EE templates free of PHP code. Example: Twit-ee, a twitter plugin.

• ACCESSORIES [EE 2.x] Accessories allow you to easily incorporate your own information into the Control Panel. Example: analytics, video, useful links, etc.

Page 28: Getting Started With ExpressionEngine

EE 2.0 and CodeIgniter

• ExpressionEngine 2.0 is built as a CodeIgniter application.

• If you need to build a standalone web application, just build it in CodeIgniter and leverage the same codebase as EE.

• Lots of CodeIgniter developers out there.

Page 29: Getting Started With ExpressionEngine

More Links

User Guide for EE 1.6.8http://expressionengine.com/docs/User Guide for EE 2.0.1http://expressionengine.com/public_beta/docs/