SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Creating website with TomatoCMS www.tomatocms.com TomatoCMS Workshop, Hue, Vietnam 12/12/2010 1
Table of Content What will we cover? Introduction to TomatoCMS Install Guide Create simple website Custom layout and skin Questions TomatoCMS Workshop, Hue, Vietnam 12/12/2010 2
Listeners Who is this for? Web developers Front-end developers Who care about web technologies Who care about CMSes Assumption: You know about PHP, HTML, CSS, JavaScript TomatoCMS Workshop, Hue, Vietnam 12/12/2010 3
About me Full name: Nguyễn Hữu Phước 2007: Senior developer, Bammboo Team 2007 – 2008: Lead developer, Visky Team 2009 – present:  Founder and lead developer of TomatoCMS core@tomatocms.com http://twitter.com/phuoc69 http://facebook.com/phuoc69 (84) 123 213 8486 TomatoCMS Workshop, Hue, Vietnam 12/12/2010 4
1. Introduction What is TomatoCMS? CMS – Content Management System Free and Open Source (GPL v2) Can be used to create: online newspaper blog online gallery portfolio website etc. TomatoCMS Workshop, Hue, Vietnam 12/12/2010 5
1. Introduction Award and Events 1st runner-up of Most Promising Open Source Project Award 2010 by Pack Publishing House (UK) 10th Open Source Software Festival 2010 (OSSFest) 29th Sep 2010 – 01st Oct 2010, Bangkok, Thailand Free and Open Source Software Asia 2010 (FossAsia) 12th Nov 2010 – 14th Nov 2010, Ho Chi Minh city, Vietnam And now: TomatoCMS Workshop 12th Dec 2010, Hue city, Vietnam TomatoCMS Workshop, Hue, Vietnam 12/12/2010 6
1. Introduction At OSSFest 2010 TomatoCMS Workshop, Hue, Vietnam 12/12/2010 7
1. Introduction At FossAsia 2010 TomatoCMS Workshop, Hue, Vietnam 12/12/2010 8
1. Introduction Community It has been translated into many languages: English, Vietnamese, Thai, Chinese, Arabic, Iranian, Russian, Dutch, Bulgarian, German, Polish, Portuguese Official website – www.tomatocms.com- has been translated into 16 languages Official forum: forum.tomatocms.com TomatoCMS Workshop, Hue, Vietnam 12/12/2010 9
1. Introduction (cont.) What are the key features? Many CMSes: Joomla, Drupal, Wordpress, … Reinvent the wheel? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 10
1. Introduction (cont.) What are the key features? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 11
1. Introduction (cont.) What are the key features? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 12
1. Introduction (cont.) Are there anything else? Multiple lingual websites: I18N: Now available in Bulgarian , Chinese, Dutch, English, German, Polish, Portuguese, Russian, Thai, and Vietnamese RTL languages Localization SEO meta tags friendly  and customizable URL sitemap builder Google Analytic, Google Web Master intergrated 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 13
1. Introduction (cont.) Are there anything else? High performance database replication (master / slave) cache (File / Memcached / Export to HTML) cache individual widget / entire page compress CSS, Javascript, HTML   High security permission system based on ACL architecture SQL injection free CSRF protection 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 14
1. Introduction (cont.) What is core platform? Zend Framework 1.10 http://framework.zend.com jQuery 1.3.2 http://jquery.com 960 Grid System  http://960.gs 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 15
1. Introduction (cont.) More about platform Well-designed architect Follows MVC, OOP Supports hook, plugin Modular architecture with more than 10 built-in modules Supports template/theme 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 16
1. Introduction (cont.) Does it run on my environment? Operating system:  Windows, Linux,  MacOS Databases:  MySQL 5, PostgreSQL 8, MS SQL Server 2005 Browsers:  Chrome, Firefox, Safari, IE 7/8  We are not IE6’s friend  All-in-one installers:  XAMPP, WAMP, MAMP Shared hosting? Yes! 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 17
2. Install Guide Installer: Dependent installers of Apache, MySQL, PHP Or all-in-one installers: WAMP, MAMP Guide: Install TomatoCMS with WAMP Using Install Wizard Download WAMP Install WAMP Create database with phpMyAdmin Download TomatoCMS Use Install Wizard TomatoCMS Workshop, Hue, Vietnam 12/12/2010 18
2. Install Guide (cont.) Guide: Install TomatoCMS with WAMP Install manually Download WAMP Install WAMP Use phpMyAdmin to create database/user Use phpMyAdmin to import sample data  Website in the sub-directory:         /install/ tomatocms_sample_db_mysql.sql Website in the web-root directory: /install/tomatocms_sample_db_mysql_virtualhost.sql 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 19
2. Install Guide (cont.) Guide: Install TomatoCMS with WAMP Config manually /tomatocms/application/config/application.ini [db] ... [web] ... url.base = "http://localhost/tomatocms/index.php" url.static = "http://localhost/tomatocms” ... [install] date = "2010-12-12 10:00:00" version = "2.0.8" 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 20
2. Install Guide (cont.) Run under the sub-directory: URL: http://localhost/tomatocms/ TomatoCMS directory: ApacheInstalledDir/htdocs/tomatocms       or     WAMPInstalledDir/www/tomatocms Run under the root directory: URL: http://localhost(:port) Virtual Host configuration ApacheInstalledDir/conf/httpd.conf Listen 80 NameVirtualHost *:80 <VirtualHost *:80>     DocumentRoot "C:/tomatocms" <Directory "C:/tomatocms">        AllowOverride All         Options -Indexes +FollowSymLinks         Order allow,deny         Allow from all     </Directory> </VirtualHost> 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 21
3. Create Simple Website Do the administation actions! Sign in to the back-end http://localhost/tomatocms/index.php/admin (sub-directory based) or  http://localhost/admin (root based) Try to use: News module: Create new article Multimedia module: Upload images Menu module: Add more item to the menu 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 22
3. Create Simple Website Layout structure Template directory: /application/templates/default/layouts Layout file: XML Understand concepts: container, widget 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 23
3. Create Simple Website Container concept <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE layout SYSTEM "http://schemas.tomatocms.com/dtd/layout.dtd"> <layout> <container cols="12">     <container cols="5" position="first">                    </container>         <container cols="3">                    </container>         <container cols="4" position="last">                    </container>     </container>     <container cols="12">         <container cols="8" position="first">                     </container>         <container cols="4" position="last">                    </container>     </container> </layout> 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 24
3. Create Simple Website Widget concept <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE layout SYSTEM "http://schemas.tomatocms.com/dtd/layout.dtd"> <layout>     <container cols="12">     <container cols="5" position="first">  <widget module="news" name="hotest" load="php"></widget>         </container>         <container cols="3"> <widget module="news" name="newest" load="php"></widget>         </container>         <container cols="4" position="last"> <widget module="ad" name="zone" load="php"></widget>     <widget module="news" name="searchbox" load="php"></widget>         </container>     </container> </layout> 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 25
3. Create Simple Website How to change the layout Try to change the layout: Add containers Add widgets 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 26
3. Create Simple Website How to develop new widget? Widget directory:  /application/modules/ModuleName/widgets/WidgetName Files: Information: about.xml Configuration: config.phtml Languages: lang.en_US.ini, lang.vi_VN.ini, etc Ouput: show.phtml Controller: Widget.php Develop new widget (based on what students want) 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 27
3. Create Simple Website How to change the look and feel? Each template can have many skins Skin directory: /skins/TemplateName/SkinName Skin file: /skins/TemplateName/SkinName/default.css Naming convention for widget classes: t_ModuleName_WidgetName Try to change the CSS styles and see what happen! 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 28
Follow us Social networks: Twitter:          www.twitter.com/tomatocms Facebook:      www.facebook.com/tomato.cms Websites: Live demo:     demo.tomatocms.com Community:  forum.tomatocms.com 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 29
Questions? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 30
Thank you! 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 31

Weitere ähnliche Inhalte

Was ist angesagt?

jAPS 2 0 - Presentation Layer Comparison
jAPS 2 0 - Presentation Layer ComparisonjAPS 2 0 - Presentation Layer Comparison
jAPS 2 0 - Presentation Layer ComparisonWilliam Ghelfi
 
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...Peter Martin
 
Troubleshooting Joomla! problems - Joomladay Germany 2014
Troubleshooting Joomla! problems - Joomladay Germany 2014Troubleshooting Joomla! problems - Joomladay Germany 2014
Troubleshooting Joomla! problems - Joomladay Germany 2014Peter Martin
 
Giving back to WordPress - no code needed!
Giving back to WordPress - no code needed!Giving back to WordPress - no code needed!
Giving back to WordPress - no code needed!Meagan Hanes
 
Security and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress ConferenceSecurity and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress ConferenceMaurizio Pelizzone
 
Joomla english for the work group
Joomla english for the work groupJoomla english for the work group
Joomla english for the work groupVicent Selfa
 
Getting started with HTML & CSS
Getting started with HTML & CSSGetting started with HTML & CSS
Getting started with HTML & CSSBen Eveloff
 
PHPMatsuri site with Croogo
PHPMatsuri site with CroogoPHPMatsuri site with Croogo
PHPMatsuri site with Croogoichikaway
 
Wcmtl top-10-multisite
Wcmtl top-10-multisiteWcmtl top-10-multisite
Wcmtl top-10-multisiteAndrea Rennick
 
Virtual TechDays 2011 - Hack your way with IE9 F12 Developer tools
Virtual TechDays 2011 - Hack your way with IE9 F12 Developer toolsVirtual TechDays 2011 - Hack your way with IE9 F12 Developer tools
Virtual TechDays 2011 - Hack your way with IE9 F12 Developer toolsKrishna T
 
Rapid Development With CakePHP
Rapid Development With CakePHPRapid Development With CakePHP
Rapid Development With CakePHPEdureka!
 
Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012]
 Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012] Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012]
Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012]Maurizio Pelizzone
 
Webpage & Multimedia Design- class01
Webpage & Multimedia Design- class01Webpage & Multimedia Design- class01
Webpage & Multimedia Design- class01hellosoon_world
 
Word camp raleigh presentation 11 23-13
Word camp raleigh presentation 11 23-13Word camp raleigh presentation 11 23-13
Word camp raleigh presentation 11 23-13Melodie Laylor
 

Was ist angesagt? (20)

jAPS 2 0 - Presentation Layer Comparison
jAPS 2 0 - Presentation Layer ComparisonjAPS 2 0 - Presentation Layer Comparison
jAPS 2 0 - Presentation Layer Comparison
 
Screencasting Matrix
Screencasting MatrixScreencasting Matrix
Screencasting Matrix
 
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
 
Troubleshooting Joomla! problems - Joomladay Germany 2014
Troubleshooting Joomla! problems - Joomladay Germany 2014Troubleshooting Joomla! problems - Joomladay Germany 2014
Troubleshooting Joomla! problems - Joomladay Germany 2014
 
Giving back to WordPress - no code needed!
Giving back to WordPress - no code needed!Giving back to WordPress - no code needed!
Giving back to WordPress - no code needed!
 
Readme
ReadmeReadme
Readme
 
Wordpress for Dummies
Wordpress for DummiesWordpress for Dummies
Wordpress for Dummies
 
Security and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress ConferenceSecurity and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress Conference
 
Joomla english for the work group
Joomla english for the work groupJoomla english for the work group
Joomla english for the work group
 
Getting started with HTML & CSS
Getting started with HTML & CSSGetting started with HTML & CSS
Getting started with HTML & CSS
 
PHPMatsuri site with Croogo
PHPMatsuri site with CroogoPHPMatsuri site with Croogo
PHPMatsuri site with Croogo
 
Joomla Manual in Compatible with XAMPP
Joomla Manual in Compatible with XAMPPJoomla Manual in Compatible with XAMPP
Joomla Manual in Compatible with XAMPP
 
Flash vs. HTML5
Flash vs. HTML5Flash vs. HTML5
Flash vs. HTML5
 
Wcmtl top-10-multisite
Wcmtl top-10-multisiteWcmtl top-10-multisite
Wcmtl top-10-multisite
 
Virtual TechDays 2011 - Hack your way with IE9 F12 Developer tools
Virtual TechDays 2011 - Hack your way with IE9 F12 Developer toolsVirtual TechDays 2011 - Hack your way with IE9 F12 Developer tools
Virtual TechDays 2011 - Hack your way with IE9 F12 Developer tools
 
Rapid Development With CakePHP
Rapid Development With CakePHPRapid Development With CakePHP
Rapid Development With CakePHP
 
Disruptive code
Disruptive codeDisruptive code
Disruptive code
 
Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012]
 Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012] Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012]
Wordpress: «l’abc per gli sviluppatori» - PHP.TO.START [2012]
 
Webpage & Multimedia Design- class01
Webpage & Multimedia Design- class01Webpage & Multimedia Design- class01
Webpage & Multimedia Design- class01
 
Word camp raleigh presentation 11 23-13
Word camp raleigh presentation 11 23-13Word camp raleigh presentation 11 23-13
Word camp raleigh presentation 11 23-13
 

Ähnlich wie TomatoCMS Workshop at Hue-Aptech IT center, 2010

A Holistic View of Website Performance
A Holistic View of Website PerformanceA Holistic View of Website Performance
A Holistic View of Website PerformanceRene Churchill
 
Front End Website Optimization
Front End Website OptimizationFront End Website Optimization
Front End Website OptimizationGerard Sychay
 
WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019Anam Ahmed
 
Internet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewInternet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewDave Bost
 
Internet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian ThilmanyInternet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian ThilmanyChristian Thilmany
 
Testable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascriptTestable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascriptTimothy Oxley
 
Web Publishing & WordPress Introduction 16x9 draft 17
Web Publishing & WordPress Introduction 16x9 draft 17Web Publishing & WordPress Introduction 16x9 draft 17
Web Publishing & WordPress Introduction 16x9 draft 17msz
 
IMS Learning Tools Interoperability @ UCLA
IMS Learning Tools Interoperability @ UCLAIMS Learning Tools Interoperability @ UCLA
IMS Learning Tools Interoperability @ UCLACharles Severance
 
How and Why to extend Firefox
How and Why to extend FirefoxHow and Why to extend Firefox
How and Why to extend FirefoxGraham King
 
Word press bg 16x9 draft 16
Word press bg 16x9 draft 16Word press bg 16x9 draft 16
Word press bg 16x9 draft 16msz
 
Php My Sql Security 2007
Php My Sql Security 2007Php My Sql Security 2007
Php My Sql Security 2007Aung Khant
 
php[world] Magento101
php[world] Magento101php[world] Magento101
php[world] Magento101Mathew Beane
 

Ähnlich wie TomatoCMS Workshop at Hue-Aptech IT center, 2010 (20)

WordCamp Denmark Keynote
WordCamp Denmark KeynoteWordCamp Denmark Keynote
WordCamp Denmark Keynote
 
A Holistic View of Website Performance
A Holistic View of Website PerformanceA Holistic View of Website Performance
A Holistic View of Website Performance
 
Front End Website Optimization
Front End Website OptimizationFront End Website Optimization
Front End Website Optimization
 
PHP
PHPPHP
PHP
 
WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019
 
Internet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewInternet Explorer 8 Developer Overview
Internet Explorer 8 Developer Overview
 
Internet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian ThilmanyInternet Explorer 8 for Developers by Christian Thilmany
Internet Explorer 8 for Developers by Christian Thilmany
 
Testable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascriptTestable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascript
 
HTTPS and HTTP/2
HTTPS and HTTP/2HTTPS and HTTP/2
HTTPS and HTTP/2
 
Web Publishing & WordPress Introduction 16x9 draft 17
Web Publishing & WordPress Introduction 16x9 draft 17Web Publishing & WordPress Introduction 16x9 draft 17
Web Publishing & WordPress Introduction 16x9 draft 17
 
IMS Learning Tools Interoperability @ UCLA
IMS Learning Tools Interoperability @ UCLAIMS Learning Tools Interoperability @ UCLA
IMS Learning Tools Interoperability @ UCLA
 
Presentation (PPT)
Presentation (PPT)Presentation (PPT)
Presentation (PPT)
 
How and Why to extend Firefox
How and Why to extend FirefoxHow and Why to extend Firefox
How and Why to extend Firefox
 
Alcim wp training 26 may
Alcim wp training 26 mayAlcim wp training 26 may
Alcim wp training 26 may
 
Word press bg 16x9 draft 16
Word press bg 16x9 draft 16Word press bg 16x9 draft 16
Word press bg 16x9 draft 16
 
Introducing YUI
Introducing YUIIntroducing YUI
Introducing YUI
 
Php My Sql Security 2007
Php My Sql Security 2007Php My Sql Security 2007
Php My Sql Security 2007
 
Html5 & less css
Html5 & less cssHtml5 & less css
Html5 & less css
 
Lotus Domino 8.5
Lotus Domino 8.5Lotus Domino 8.5
Lotus Domino 8.5
 
php[world] Magento101
php[world] Magento101php[world] Magento101
php[world] Magento101
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

TomatoCMS Workshop at Hue-Aptech IT center, 2010

  • 1. Creating website with TomatoCMS www.tomatocms.com TomatoCMS Workshop, Hue, Vietnam 12/12/2010 1
  • 2. Table of Content What will we cover? Introduction to TomatoCMS Install Guide Create simple website Custom layout and skin Questions TomatoCMS Workshop, Hue, Vietnam 12/12/2010 2
  • 3. Listeners Who is this for? Web developers Front-end developers Who care about web technologies Who care about CMSes Assumption: You know about PHP, HTML, CSS, JavaScript TomatoCMS Workshop, Hue, Vietnam 12/12/2010 3
  • 4. About me Full name: Nguyễn Hữu Phước 2007: Senior developer, Bammboo Team 2007 – 2008: Lead developer, Visky Team 2009 – present: Founder and lead developer of TomatoCMS core@tomatocms.com http://twitter.com/phuoc69 http://facebook.com/phuoc69 (84) 123 213 8486 TomatoCMS Workshop, Hue, Vietnam 12/12/2010 4
  • 5. 1. Introduction What is TomatoCMS? CMS – Content Management System Free and Open Source (GPL v2) Can be used to create: online newspaper blog online gallery portfolio website etc. TomatoCMS Workshop, Hue, Vietnam 12/12/2010 5
  • 6. 1. Introduction Award and Events 1st runner-up of Most Promising Open Source Project Award 2010 by Pack Publishing House (UK) 10th Open Source Software Festival 2010 (OSSFest) 29th Sep 2010 – 01st Oct 2010, Bangkok, Thailand Free and Open Source Software Asia 2010 (FossAsia) 12th Nov 2010 – 14th Nov 2010, Ho Chi Minh city, Vietnam And now: TomatoCMS Workshop 12th Dec 2010, Hue city, Vietnam TomatoCMS Workshop, Hue, Vietnam 12/12/2010 6
  • 7. 1. Introduction At OSSFest 2010 TomatoCMS Workshop, Hue, Vietnam 12/12/2010 7
  • 8. 1. Introduction At FossAsia 2010 TomatoCMS Workshop, Hue, Vietnam 12/12/2010 8
  • 9. 1. Introduction Community It has been translated into many languages: English, Vietnamese, Thai, Chinese, Arabic, Iranian, Russian, Dutch, Bulgarian, German, Polish, Portuguese Official website – www.tomatocms.com- has been translated into 16 languages Official forum: forum.tomatocms.com TomatoCMS Workshop, Hue, Vietnam 12/12/2010 9
  • 10. 1. Introduction (cont.) What are the key features? Many CMSes: Joomla, Drupal, Wordpress, … Reinvent the wheel? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 10
  • 11. 1. Introduction (cont.) What are the key features? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 11
  • 12. 1. Introduction (cont.) What are the key features? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 12
  • 13. 1. Introduction (cont.) Are there anything else? Multiple lingual websites: I18N: Now available in Bulgarian , Chinese, Dutch, English, German, Polish, Portuguese, Russian, Thai, and Vietnamese RTL languages Localization SEO meta tags friendly and customizable URL sitemap builder Google Analytic, Google Web Master intergrated 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 13
  • 14. 1. Introduction (cont.) Are there anything else? High performance database replication (master / slave) cache (File / Memcached / Export to HTML) cache individual widget / entire page compress CSS, Javascript, HTML High security permission system based on ACL architecture SQL injection free CSRF protection 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 14
  • 15. 1. Introduction (cont.) What is core platform? Zend Framework 1.10 http://framework.zend.com jQuery 1.3.2 http://jquery.com 960 Grid System http://960.gs 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 15
  • 16. 1. Introduction (cont.) More about platform Well-designed architect Follows MVC, OOP Supports hook, plugin Modular architecture with more than 10 built-in modules Supports template/theme 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 16
  • 17. 1. Introduction (cont.) Does it run on my environment? Operating system: Windows, Linux, MacOS Databases: MySQL 5, PostgreSQL 8, MS SQL Server 2005 Browsers: Chrome, Firefox, Safari, IE 7/8 We are not IE6’s friend  All-in-one installers: XAMPP, WAMP, MAMP Shared hosting? Yes! 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 17
  • 18. 2. Install Guide Installer: Dependent installers of Apache, MySQL, PHP Or all-in-one installers: WAMP, MAMP Guide: Install TomatoCMS with WAMP Using Install Wizard Download WAMP Install WAMP Create database with phpMyAdmin Download TomatoCMS Use Install Wizard TomatoCMS Workshop, Hue, Vietnam 12/12/2010 18
  • 19. 2. Install Guide (cont.) Guide: Install TomatoCMS with WAMP Install manually Download WAMP Install WAMP Use phpMyAdmin to create database/user Use phpMyAdmin to import sample data Website in the sub-directory: /install/ tomatocms_sample_db_mysql.sql Website in the web-root directory: /install/tomatocms_sample_db_mysql_virtualhost.sql 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 19
  • 20. 2. Install Guide (cont.) Guide: Install TomatoCMS with WAMP Config manually /tomatocms/application/config/application.ini [db] ... [web] ... url.base = "http://localhost/tomatocms/index.php" url.static = "http://localhost/tomatocms” ... [install] date = "2010-12-12 10:00:00" version = "2.0.8" 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 20
  • 21. 2. Install Guide (cont.) Run under the sub-directory: URL: http://localhost/tomatocms/ TomatoCMS directory: ApacheInstalledDir/htdocs/tomatocms or WAMPInstalledDir/www/tomatocms Run under the root directory: URL: http://localhost(:port) Virtual Host configuration ApacheInstalledDir/conf/httpd.conf Listen 80 NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot "C:/tomatocms" <Directory "C:/tomatocms"> AllowOverride All Options -Indexes +FollowSymLinks Order allow,deny Allow from all </Directory> </VirtualHost> 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 21
  • 22. 3. Create Simple Website Do the administation actions! Sign in to the back-end http://localhost/tomatocms/index.php/admin (sub-directory based) or http://localhost/admin (root based) Try to use: News module: Create new article Multimedia module: Upload images Menu module: Add more item to the menu 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 22
  • 23. 3. Create Simple Website Layout structure Template directory: /application/templates/default/layouts Layout file: XML Understand concepts: container, widget 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 23
  • 24. 3. Create Simple Website Container concept <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE layout SYSTEM "http://schemas.tomatocms.com/dtd/layout.dtd"> <layout> <container cols="12"> <container cols="5" position="first"> </container> <container cols="3"> </container> <container cols="4" position="last"> </container> </container> <container cols="12"> <container cols="8" position="first"> </container> <container cols="4" position="last"> </container> </container> </layout> 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 24
  • 25. 3. Create Simple Website Widget concept <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE layout SYSTEM "http://schemas.tomatocms.com/dtd/layout.dtd"> <layout> <container cols="12"> <container cols="5" position="first"> <widget module="news" name="hotest" load="php"></widget> </container> <container cols="3"> <widget module="news" name="newest" load="php"></widget> </container> <container cols="4" position="last"> <widget module="ad" name="zone" load="php"></widget> <widget module="news" name="searchbox" load="php"></widget> </container> </container> </layout> 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 25
  • 26. 3. Create Simple Website How to change the layout Try to change the layout: Add containers Add widgets 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 26
  • 27. 3. Create Simple Website How to develop new widget? Widget directory: /application/modules/ModuleName/widgets/WidgetName Files: Information: about.xml Configuration: config.phtml Languages: lang.en_US.ini, lang.vi_VN.ini, etc Ouput: show.phtml Controller: Widget.php Develop new widget (based on what students want) 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 27
  • 28. 3. Create Simple Website How to change the look and feel? Each template can have many skins Skin directory: /skins/TemplateName/SkinName Skin file: /skins/TemplateName/SkinName/default.css Naming convention for widget classes: t_ModuleName_WidgetName Try to change the CSS styles and see what happen! 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 28
  • 29. Follow us Social networks: Twitter: www.twitter.com/tomatocms Facebook: www.facebook.com/tomato.cms Websites: Live demo: demo.tomatocms.com Community: forum.tomatocms.com 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 29
  • 30. Questions? 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 30
  • 31. Thank you! 12/12/2010 TomatoCMS Workshop, Hue, Vietnam 31