SlideShare a Scribd company logo
1 of 24
Download to read offline
All About
                            ExpressionEngine 2
                            What’s new, whether to upgrade, and
                            how to migrate from EE 1.x to EE 2.x




Prepared by Ruthie BenDor for
the BostonEErs June 2010 Meetup
Ch-ch-ch-changes
                                  What’s new in EE2?




Prepared by Ruthie BenDor for
the BostonEErs June 2010 Meetup
Hey, Back-end Developers!

✓ ExpressionEngine 2 is built atop CodeIgniter.

✓ Building EE2 add-ons is a whole different ball game.

✓ New type of add-on called Accessories.

✓ EE2 runs fully and only on UTF-8.

✓ EE2-generated URLs do not use a trailing slash.
Hey, Front-end Developers!

✓ Weblogs are now Channels:
  {exp:weblog:entries} ➠ {exp:channel:entries}

✓ Vastly improved Control Panel template editor.

✓ New utility for manually synching templates between
  files and database.

✓ New type of global variable called Snippets.
Hey, Content Administrators!

✓ Reorganized and redesigned Control Panel.

✓ New native custom field types: Multi-select, Checkbox,
  Radio, and Upload.

✓ Trackbacks module has been removed.

✓ Photo Gallery module has been removed.
Eeny Meeny Miney Mo
     Should we upgrade?
Consider upgrading now if:
✓ You have a business case for upgrading to EE2;

✓ All the add-ons your site needs are available for EE2;

✓ You are comfortable with using beta (albeit well-tested)
  software to power your website; and

✓ You have time to spend on upgrading right now.


Otherwise, stick with EE1.x for now, and
re-evaluate every month.
Movin’ On Up
How to migrate an EE 1.x site to EE 2.x
      ... in 12 kinda easy steps
1. You’re running EE 1.6.9, right?

✓ If you’re running anything less than EE 1.6.9, follow the
  upgrade instructions to bring your install up to EE
  1.6.9: http://expressionengine.com/docs/installation/
  update.html

✓ This isn’t, strictly speaking, necessary - but it does
  eliminate one potential point of failure from the
  upgrade process.
2. Template tedium.

✓ The upgrade process claims to handle templates saved
  as flat files, but best to eliminate this potential point of
  failure. (Besides, serving templates from the database is
  more performant than serving them as flat files.)

✓ Open your code editor & your web browser. Log in to
  your Control Panel & browse to the Template Manager.

✓ For each template: Manually copy & paste the contents
  of each flat file into the associated template. Uncheck
  the ‘Save Template as File’ option. Click Update and
  Finished. (Yes, this sucks. A checklist helps. So does beer.)
3. Download party!

✓ Download and unzip the latest build of EE 2 from
  https://secure.expressionengine.com/download.php

✓ Rename EE2’s system folder to be whatever you’ve
  renamed it in your current installation.

✓ Download all of the add-ons your site will use from
  http://www.devot-ee.com/ or directly from the add-on
  author(s). Put them aside for now; you’ll be installing them
  once you’re done with EE2.
4. Take your site down.

✓ On your web server, copy system/
  expressionengine/utilities/offline.html
  to your main directory, where EE’s index.php file is.

✓ Rename the copied offline.html
  to be index.html.

✓ Open your website in a browser
  and verify that it’s showing
  the “offline” page.
5. Clear your caches.

✓ Log in to your EE Control Panel.

✓ Go to Tools > Data > Clear Caching.

✓ Select All cache files, and submit the form.
6. Back up your files & folders.

✓ Download all files and folders from your web server
  onto your local machine.

✓ Once the download completes, poke around and make
  sure that everything downloaded properly.

✓ Make note of system/config.php, as you’ll need
  some of the information in it during the upgrade.

✓ This might take a while. We’ll wait.
7. Back up your database!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

✓ Download a full dump -- schema AND data -- of your
  database, in SQL format. On shared hosting? Use
  phpMyAdmin. On dedicated hosting? Use your database
  management tool of choice, you lucky bastard.

✓ Test your backup: run the SQL you just generated
  against a local test database, and make sure it worked.

✓ This might take a while. We’ll wait.



!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Seriously, back it up.
8. Upload & renaming party!
✓ On your web server, rename the system folder to be
  system_ee1. Then upload your new system folder.

✓ On your web server, rename the themes folder to be
  themes_ee1. Then upload your new themes folder.

✓ On your web server, rename the index.php file to be
  index_ee1.php. Then upload your new index.php file, open
  this file, and update the system path to reflect your renamed
  system folder.

✓ Upload your backed-up system/config.php into system/
  expressionengine/config/.
9. File permissions party!

✓ On your web server, chmod these files to 666:

  ✓ system/expressionengine/config/config.php

  ✓ system/expressionengine/config/database.php

✓ On your web server, chmod this folder to 777:

  ✓ system/expressionengine/cache/ (and its contained
     folders)

✓ If you’re on a Windows server, I suggest panic.
10. Update Wizard time. Finally.

✓ Open your browser and go to http://yourdomain.com/
  system, where system is your renamed EE folder.

✓ The update wizard has four pages.
10. Update Wizard time.

✓ On Page 1, click the “click here to begin” link.
10. Update Wizard time.

✓ On Page 1, click the “click here to begin” link.

✓ On Page 2, it’ll show you what version of EE you’re currently
  running. Click the “update EE to 2.0” link.
10. Update Wizard time.

✓ On Page 1, click the “click here to begin” link.

✓ On Page 2, it’ll show you what version of EE you’re currently running.
  Click the “update EE to 2.0” link.

✓ On Page 3, magic happens. The page will refresh itself a bunch of
  times. Don’t close the browser. Let it finish. It’ll take you to...
10. Update Wizard time.

✓ On Page 1, click the “click here to begin” link.

✓ On Page 2, it’ll show you what version of EE you’re currently running.
  Click the “update EE to 2.0” link.

✓ On Page 3, stuff happens. The page will refresh itself a bunch of
  times. Don’t close the browser. Let it finish. It’ll take you to...

✓ Page 4, which says that you’re now running the latest version
  of EE, and to find and delete the installer folder located
  at /system/expressionengine/installer/. Do so.
11. Add-on install party, and, done.

✓ Log in to the Control Panel. Poke around. Everything look good?

✓ Each of your EE2-ready add-ons should come with detailed installation
  instructions. Install them per the instructions.

  ✓ The update wizard will have disabled all system extensions; you will
     need to check to make sure the ones you need are enabled.

  ✓ You may also need to tweak template code to account for syntax
     differences between EE 1.x plugins and EE 2.x plugins.

✓ Once all of your add-ons are in place, rename the index.html in
  your main directory to be offline.html, load your website in a
  browser, and cross your fingers.
12. Cleanup - or, Disaster Recovery.

✓ All well? Delete the old system_ee1 and themes_ee1
  directories and the old index_ee1.php from your web server.

✓ Did something go wrong? Start by disabling all the third-party add-
  ons you just installed. If that fixed it, re-enable the third-party add-
  ons one by one until you’ve isolated the problem.

✓ Did something go seriously wrong, and you just don’t have time to
  deal with it right now? Roll back:
  ✓   Rename system to be system_ee2, and system_ee1 to be system.

  ✓   Rename themes to be themes_ee2, and themes_ee1 to be themes.

  ✓   Rename index.php to be index_ee2.php, and index_ee1.php to be index.php.

  ✓   Run your backup SQL script against your production database.

More Related Content

What's hot

09 asp.net session13
09 asp.net session1309 asp.net session13
09 asp.net session13Vivek chan
 
Silent install Adobe Reader DC
Silent install Adobe Reader DCSilent install Adobe Reader DC
Silent install Adobe Reader DCGet It Solutions
 
Create Applicationwith IIS 7
Create Applicationwith IIS 7Create Applicationwith IIS 7
Create Applicationwith IIS 7Sandeep Verma
 
How to develope plugin in wordpress: 6 simple steps.
How to develope plugin in wordpress: 6 simple steps.How to develope plugin in wordpress: 6 simple steps.
How to develope plugin in wordpress: 6 simple steps.Jay Bharat
 
Orangescrum Client management Add on User Manual
Orangescrum Client management Add on User ManualOrangescrum Client management Add on User Manual
Orangescrum Client management Add on User ManualOrangescrum
 
How to install computer repair joomla 3.1 website theme
How to install computer repair joomla 3.1 website themeHow to install computer repair joomla 3.1 website theme
How to install computer repair joomla 3.1 website themeTonytemplates
 
Orangescrum Time Log Gold add-on User Manual
Orangescrum Time Log Gold add-on User Manual Orangescrum Time Log Gold add-on User Manual
Orangescrum Time Log Gold add-on User Manual Orangescrum
 
Google chrome silent install
Google chrome silent installGoogle chrome silent install
Google chrome silent installGet It Solutions
 

What's hot (10)

09 asp.net session13
09 asp.net session1309 asp.net session13
09 asp.net session13
 
Silent install Adobe Reader DC
Silent install Adobe Reader DCSilent install Adobe Reader DC
Silent install Adobe Reader DC
 
Create Applicationwith IIS 7
Create Applicationwith IIS 7Create Applicationwith IIS 7
Create Applicationwith IIS 7
 
How to develope plugin in wordpress: 6 simple steps.
How to develope plugin in wordpress: 6 simple steps.How to develope plugin in wordpress: 6 simple steps.
How to develope plugin in wordpress: 6 simple steps.
 
Orangescrum Client management Add on User Manual
Orangescrum Client management Add on User ManualOrangescrum Client management Add on User Manual
Orangescrum Client management Add on User Manual
 
Gwt
GwtGwt
Gwt
 
Writing first-hudson-plugin
Writing first-hudson-pluginWriting first-hudson-plugin
Writing first-hudson-plugin
 
How to install computer repair joomla 3.1 website theme
How to install computer repair joomla 3.1 website themeHow to install computer repair joomla 3.1 website theme
How to install computer repair joomla 3.1 website theme
 
Orangescrum Time Log Gold add-on User Manual
Orangescrum Time Log Gold add-on User Manual Orangescrum Time Log Gold add-on User Manual
Orangescrum Time Log Gold add-on User Manual
 
Google chrome silent install
Google chrome silent installGoogle chrome silent install
Google chrome silent install
 

Similar to All About Migrating from EE1 to EE2

create_patch_file_v3a.pdf
create_patch_file_v3a.pdfcreate_patch_file_v3a.pdf
create_patch_file_v3a.pdfvilaylala
 
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...Goutam Biswas
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsDana Luther
 
Update Smart: Use a Staging Site!
Update Smart: Use a Staging Site!Update Smart: Use a Staging Site!
Update Smart: Use a Staging Site!Meagan Hanes
 
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...Goutam Biswas
 
Notes 9 presentation
Notes 9 presentationNotes 9 presentation
Notes 9 presentationAndy Higgins
 
Implementing xpages extension library
Implementing xpages extension libraryImplementing xpages extension library
Implementing xpages extension librarydominion
 
( 1 ) Office 2007 Installation
( 1 ) Office 2007   Installation( 1 ) Office 2007   Installation
( 1 ) Office 2007 InstallationLiquidHub
 
Openstack contribution process
Openstack contribution processOpenstack contribution process
Openstack contribution processSyed Armani
 
OpenStack Contribution Process
OpenStack Contribution ProcessOpenStack Contribution Process
OpenStack Contribution Processopenstackindia
 
Deployment with ExpressionEngine
Deployment with ExpressionEngineDeployment with ExpressionEngine
Deployment with ExpressionEngineGreen Egg Media
 
How to Migrate IIS Website to Another Server.pdf
How to Migrate IIS Website to Another Server.pdfHow to Migrate IIS Website to Another Server.pdf
How to Migrate IIS Website to Another Server.pdfHost It Smart
 
Change windows owner
Change windows ownerChange windows owner
Change windows ownerteaywy
 
Os dev tool box
Os dev tool boxOs dev tool box
Os dev tool boxbpowell29a
 
Drupal Continuous Integration with Jenkins - Deploy
Drupal Continuous Integration with Jenkins - DeployDrupal Continuous Integration with Jenkins - Deploy
Drupal Continuous Integration with Jenkins - DeployJohn Smith
 
Oops, where's my site?
Oops, where's my site?Oops, where's my site?
Oops, where's my site?David Glick
 

Similar to All About Migrating from EE1 to EE2 (20)

create_patch_file_v3a.pdf
create_patch_file_v3a.pdfcreate_patch_file_v3a.pdf
create_patch_file_v3a.pdf
 
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application Migrations
 
Update Smart: Use a Staging Site!
Update Smart: Use a Staging Site!Update Smart: Use a Staging Site!
Update Smart: Use a Staging Site!
 
Newgenlib
NewgenlibNewgenlib
Newgenlib
 
Newgenlib
NewgenlibNewgenlib
Newgenlib
 
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
 
Notes 9 presentation
Notes 9 presentationNotes 9 presentation
Notes 9 presentation
 
Implementing xpages extension library
Implementing xpages extension libraryImplementing xpages extension library
Implementing xpages extension library
 
( 1 ) Office 2007 Installation
( 1 ) Office 2007   Installation( 1 ) Office 2007   Installation
( 1 ) Office 2007 Installation
 
Openstack contribution process
Openstack contribution processOpenstack contribution process
Openstack contribution process
 
OpenStack Contribution Process
OpenStack Contribution ProcessOpenStack Contribution Process
OpenStack Contribution Process
 
Deployment with ExpressionEngine
Deployment with ExpressionEngineDeployment with ExpressionEngine
Deployment with ExpressionEngine
 
VersionEEring
VersionEEringVersionEEring
VersionEEring
 
How to Migrate IIS Website to Another Server.pdf
How to Migrate IIS Website to Another Server.pdfHow to Migrate IIS Website to Another Server.pdf
How to Migrate IIS Website to Another Server.pdf
 
Change windows owner
Change windows ownerChange windows owner
Change windows owner
 
Team lab install_en
Team lab install_enTeam lab install_en
Team lab install_en
 
Os dev tool box
Os dev tool boxOs dev tool box
Os dev tool box
 
Drupal Continuous Integration with Jenkins - Deploy
Drupal Continuous Integration with Jenkins - DeployDrupal Continuous Integration with Jenkins - Deploy
Drupal Continuous Integration with Jenkins - Deploy
 
Oops, where's my site?
Oops, where's my site?Oops, where's my site?
Oops, where's my site?
 

More from Ruthie BenDor

Even Naming This Talk Is Hard
Even Naming This Talk Is HardEven Naming This Talk Is Hard
Even Naming This Talk Is HardRuthie BenDor
 
Move Fast And Document Things
Move Fast And Document ThingsMove Fast And Document Things
Move Fast And Document ThingsRuthie BenDor
 
Build Your First EE2 Site
Build Your First EE2 SiteBuild Your First EE2 Site
Build Your First EE2 SiteRuthie BenDor
 
Make Your Site SpEEdy
Make Your Site SpEEdyMake Your Site SpEEdy
Make Your Site SpEEdyRuthie BenDor
 
Add-On Migration Planner for EE 1.x to EE 2.x
Add-On Migration Planner for EE 1.x to EE 2.xAdd-On Migration Planner for EE 1.x to EE 2.x
Add-On Migration Planner for EE 1.x to EE 2.xRuthie BenDor
 
Content Management for the little guy
Content Management for the little guyContent Management for the little guy
Content Management for the little guyRuthie BenDor
 

More from Ruthie BenDor (6)

Even Naming This Talk Is Hard
Even Naming This Talk Is HardEven Naming This Talk Is Hard
Even Naming This Talk Is Hard
 
Move Fast And Document Things
Move Fast And Document ThingsMove Fast And Document Things
Move Fast And Document Things
 
Build Your First EE2 Site
Build Your First EE2 SiteBuild Your First EE2 Site
Build Your First EE2 Site
 
Make Your Site SpEEdy
Make Your Site SpEEdyMake Your Site SpEEdy
Make Your Site SpEEdy
 
Add-On Migration Planner for EE 1.x to EE 2.x
Add-On Migration Planner for EE 1.x to EE 2.xAdd-On Migration Planner for EE 1.x to EE 2.x
Add-On Migration Planner for EE 1.x to EE 2.x
 
Content Management for the little guy
Content Management for the little guyContent Management for the little guy
Content Management for the little guy
 

Recently uploaded

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Recently uploaded (20)

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

All About Migrating from EE1 to EE2

  • 1. All About ExpressionEngine 2 What’s new, whether to upgrade, and how to migrate from EE 1.x to EE 2.x Prepared by Ruthie BenDor for the BostonEErs June 2010 Meetup
  • 2. Ch-ch-ch-changes What’s new in EE2? Prepared by Ruthie BenDor for the BostonEErs June 2010 Meetup
  • 3. Hey, Back-end Developers! ✓ ExpressionEngine 2 is built atop CodeIgniter. ✓ Building EE2 add-ons is a whole different ball game. ✓ New type of add-on called Accessories. ✓ EE2 runs fully and only on UTF-8. ✓ EE2-generated URLs do not use a trailing slash.
  • 4. Hey, Front-end Developers! ✓ Weblogs are now Channels: {exp:weblog:entries} ➠ {exp:channel:entries} ✓ Vastly improved Control Panel template editor. ✓ New utility for manually synching templates between files and database. ✓ New type of global variable called Snippets.
  • 5. Hey, Content Administrators! ✓ Reorganized and redesigned Control Panel. ✓ New native custom field types: Multi-select, Checkbox, Radio, and Upload. ✓ Trackbacks module has been removed. ✓ Photo Gallery module has been removed.
  • 6. Eeny Meeny Miney Mo Should we upgrade?
  • 7. Consider upgrading now if: ✓ You have a business case for upgrading to EE2; ✓ All the add-ons your site needs are available for EE2; ✓ You are comfortable with using beta (albeit well-tested) software to power your website; and ✓ You have time to spend on upgrading right now. Otherwise, stick with EE1.x for now, and re-evaluate every month.
  • 8. Movin’ On Up How to migrate an EE 1.x site to EE 2.x ... in 12 kinda easy steps
  • 9. 1. You’re running EE 1.6.9, right? ✓ If you’re running anything less than EE 1.6.9, follow the upgrade instructions to bring your install up to EE 1.6.9: http://expressionengine.com/docs/installation/ update.html ✓ This isn’t, strictly speaking, necessary - but it does eliminate one potential point of failure from the upgrade process.
  • 10. 2. Template tedium. ✓ The upgrade process claims to handle templates saved as flat files, but best to eliminate this potential point of failure. (Besides, serving templates from the database is more performant than serving them as flat files.) ✓ Open your code editor & your web browser. Log in to your Control Panel & browse to the Template Manager. ✓ For each template: Manually copy & paste the contents of each flat file into the associated template. Uncheck the ‘Save Template as File’ option. Click Update and Finished. (Yes, this sucks. A checklist helps. So does beer.)
  • 11. 3. Download party! ✓ Download and unzip the latest build of EE 2 from https://secure.expressionengine.com/download.php ✓ Rename EE2’s system folder to be whatever you’ve renamed it in your current installation. ✓ Download all of the add-ons your site will use from http://www.devot-ee.com/ or directly from the add-on author(s). Put them aside for now; you’ll be installing them once you’re done with EE2.
  • 12. 4. Take your site down. ✓ On your web server, copy system/ expressionengine/utilities/offline.html to your main directory, where EE’s index.php file is. ✓ Rename the copied offline.html to be index.html. ✓ Open your website in a browser and verify that it’s showing the “offline” page.
  • 13. 5. Clear your caches. ✓ Log in to your EE Control Panel. ✓ Go to Tools > Data > Clear Caching. ✓ Select All cache files, and submit the form.
  • 14. 6. Back up your files & folders. ✓ Download all files and folders from your web server onto your local machine. ✓ Once the download completes, poke around and make sure that everything downloaded properly. ✓ Make note of system/config.php, as you’ll need some of the information in it during the upgrade. ✓ This might take a while. We’ll wait.
  • 15. 7. Back up your database!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ✓ Download a full dump -- schema AND data -- of your database, in SQL format. On shared hosting? Use phpMyAdmin. On dedicated hosting? Use your database management tool of choice, you lucky bastard. ✓ Test your backup: run the SQL you just generated against a local test database, and make sure it worked. ✓ This might take a while. We’ll wait. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Seriously, back it up.
  • 16. 8. Upload & renaming party! ✓ On your web server, rename the system folder to be system_ee1. Then upload your new system folder. ✓ On your web server, rename the themes folder to be themes_ee1. Then upload your new themes folder. ✓ On your web server, rename the index.php file to be index_ee1.php. Then upload your new index.php file, open this file, and update the system path to reflect your renamed system folder. ✓ Upload your backed-up system/config.php into system/ expressionengine/config/.
  • 17. 9. File permissions party! ✓ On your web server, chmod these files to 666: ✓ system/expressionengine/config/config.php ✓ system/expressionengine/config/database.php ✓ On your web server, chmod this folder to 777: ✓ system/expressionengine/cache/ (and its contained folders) ✓ If you’re on a Windows server, I suggest panic.
  • 18. 10. Update Wizard time. Finally. ✓ Open your browser and go to http://yourdomain.com/ system, where system is your renamed EE folder. ✓ The update wizard has four pages.
  • 19. 10. Update Wizard time. ✓ On Page 1, click the “click here to begin” link.
  • 20. 10. Update Wizard time. ✓ On Page 1, click the “click here to begin” link. ✓ On Page 2, it’ll show you what version of EE you’re currently running. Click the “update EE to 2.0” link.
  • 21. 10. Update Wizard time. ✓ On Page 1, click the “click here to begin” link. ✓ On Page 2, it’ll show you what version of EE you’re currently running. Click the “update EE to 2.0” link. ✓ On Page 3, magic happens. The page will refresh itself a bunch of times. Don’t close the browser. Let it finish. It’ll take you to...
  • 22. 10. Update Wizard time. ✓ On Page 1, click the “click here to begin” link. ✓ On Page 2, it’ll show you what version of EE you’re currently running. Click the “update EE to 2.0” link. ✓ On Page 3, stuff happens. The page will refresh itself a bunch of times. Don’t close the browser. Let it finish. It’ll take you to... ✓ Page 4, which says that you’re now running the latest version of EE, and to find and delete the installer folder located at /system/expressionengine/installer/. Do so.
  • 23. 11. Add-on install party, and, done. ✓ Log in to the Control Panel. Poke around. Everything look good? ✓ Each of your EE2-ready add-ons should come with detailed installation instructions. Install them per the instructions. ✓ The update wizard will have disabled all system extensions; you will need to check to make sure the ones you need are enabled. ✓ You may also need to tweak template code to account for syntax differences between EE 1.x plugins and EE 2.x plugins. ✓ Once all of your add-ons are in place, rename the index.html in your main directory to be offline.html, load your website in a browser, and cross your fingers.
  • 24. 12. Cleanup - or, Disaster Recovery. ✓ All well? Delete the old system_ee1 and themes_ee1 directories and the old index_ee1.php from your web server. ✓ Did something go wrong? Start by disabling all the third-party add- ons you just installed. If that fixed it, re-enable the third-party add- ons one by one until you’ve isolated the problem. ✓ Did something go seriously wrong, and you just don’t have time to deal with it right now? Roll back: ✓ Rename system to be system_ee2, and system_ee1 to be system. ✓ Rename themes to be themes_ee2, and themes_ee1 to be themes. ✓ Rename index.php to be index_ee2.php, and index_ee1.php to be index.php. ✓ Run your backup SQL script against your production database.