SlideShare a Scribd company logo
1 of 44
Download to read offline
Layout Editor




Present by Nguyen Huu Phuoc, Founder of NextCMS
             thenextcms@gmail.com
 NextCMS is a content management, built on top of
 zend framework, dojo toolkit, and jquery

 It is free and open source software


 This slide tell you one of many reasons why you should
 choose NextCMS instead of other one
We need a Layout Editor (or Template Builder, or
whatever you say) which is:

 Easy to use for both end-users and developers


 Easy to customize the layout of page
We are going to create a page as the following
Layout is organized by border containers

   top container




  center container




bottom container
grid containers: placed inside border containers




                                                   left column

  grid container
   (2 columns)


                                                   right column
widgets, main content pane: placed inside grid column
menu
editor
                                                bread crumb
search box

                                               main content
categories

                                               url shortener
banners                                             banners


google adsense
                                                comments


menu
 Step 1: Splitting page to border containers
Method 1: right-click on node, choose Insert border container
 Step 1: Splitting page to border containers
Method 2: drag and drop containers
 Step 2: Inserting grid container
 Step 2: Setting the grid columns
 Step 3: Inserting widgets
Method 1: drag widget and drop on the target column
 Step 3: Inserting widgets
Method 2: drag widget and drop on the target node
 Step 4: Inserting main content pane
main content pane: the main content of page without widgets, such as
the content of article, etc.
Drag and drop widgets/main content pane between grid
columns
It is also possible to insert tab containers
We need to mofify the content, such as:

 Replace special characters with emotion icons in the article’s content


 Replace bad word with pre-defined characters in the article’s content


 Create a slideshow consisting of all images taken from the article’s
  content

 etc.


Content modifiers are called as FILTERS
 Applying filters to given element:
Using available and/or additional filters




 drag and drop
to change filter’s
     position
Example of filter:
Slideshow - Showing a slideshow of all images taken from the content
Example of filter:
Navigator - Creating a table of content based on headings
 Setting id, class, style attributes for div tags that show
  layout elements

<div class="container
            top_container"
     id="topContainer"
     style="height: 30px;
            width: 100%">
  ...
</div>
 Cloning layout by copying ...
 ... and pasting
It is possible to define the layout in a XML file:

 Template providers can package the template with pre-
  defined layouts

 Community can share the layout with each other


 Administrator can backup and restore the layout
XML structure:

<?xml version="1.0" encoding="UTF-8"?>
<layout>
  ...
</layout>
 Inserting a border container


<layout>
  <borderContainer region="top">
    ...
  </borderContainer>
</layout>

region: top, bottom, left, right, center
 Inserting a grid container


<borderContainer region="center">
  <gridContainer>
    ...
  </gridContainer>
</borderContainer>
 Inserting a grid column


<gridContainer>
  <zone cssClass="leftContainer">
    ...
  </zone>
  <zone cssClass="rightContainer">
    ...
  </zone>
</gridContainer>
 Inserting a tab container

<zone cssClass="rightContainer">
  <tabContainer>
    <gridContainer title="Top viewed">
      ...
    </gridContainer>
    <gridContainer title="Top commented">
      ...
    </gridContainer>
  </tabContainer>
</zone>
 Inserting the main content pane


<zone cssClass="leftContainer">
  <mainContentPane />
</zone>
 Inserting a widget

<zone>
  <widget module="content" name="articles"
           title="Latest articles">
    <params>
       <param name="data_source">
         <value><![CDATA[...]]></value>
       </param>
       <param name="template" value="list" />
       <param name="limit" value="4" />
       <param name="category_id" value="__AUTO__" />
    </params>
  </widget>
</zone>
 Styling page elements: id, cssClass, cssStyle attributes

<borderContainer region="top" id="topContainer">
  <gridContainer cssStyle="border: 1px solid #ccc">
    <zone cssClass="leftContainer">
      <widget module="..." name="..."
              cssClass="searchBoxContainer">
      </widget>
    </zone>
  </gridContainer>
</borderContainer>
 Defining a filter

<mainContentPane>
  <filters>
    <filter module="util" name="slideshow" />
    <filter class="Util_Services_HiddenLink" />
  </filters>
</mainContentPane>
 Importing layout from a XML file
 Exporting layout to a XML file
Customizing the dashboard
dashboard: where displays the data you care most

 Latest unactivated articles/comments


 Latest unread private messages


 Uncompleted todo list


 etc.
Customizing the dashboard
Have you ever wished?

 Place a poll inside an article’s content


 Place a photo slideshow at the end of article’s content


 Place a Google Adsense banners inside an article’s
  content

 etc.
Placing any widget at any position of article’s content
Example: inserting a poll inside the content
Example: inserting a poll inside the content
Example: inserting an album at the bottom of content
We listen to you!

On social networks
 twitter.com/thenextcms
 facebook.com/nextcms
 youtube.com/thenextcms
 slideshare.net/thenextcms
 github.com/thenextcms


Email
thenextcms@gmail.com
nextcms.org
nextcms.tv

 © 2012 Nguyen Huu Phuoc
  thenextcms@gmail.com

More Related Content

What's hot

Extending Magento Layered Navigation
Extending Magento Layered NavigationExtending Magento Layered Navigation
Extending Magento Layered NavigationNadia Sala
 
Whmcs addon module docs
Whmcs addon module docsWhmcs addon module docs
Whmcs addon module docsquyvn
 
Introduction to UI Components in Magento 2
Introduction to UI Components in Magento 2Introduction to UI Components in Magento 2
Introduction to UI Components in Magento 2Sergii Ivashchenko
 
Magento 2 UI Components Overview
Magento 2 UI Components OverviewMagento 2 UI Components Overview
Magento 2 UI Components OvervieweGlobe IT Solutions
 
Editing the Visual Editor (WordPress)
Editing the Visual Editor (WordPress)Editing the Visual Editor (WordPress)
Editing the Visual Editor (WordPress)Jake Goldman
 
Creating a Simple, Accessible On/Off Switch
Creating a Simple, Accessible On/Off SwitchCreating a Simple, Accessible On/Off Switch
Creating a Simple, Accessible On/Off SwitchRuss Weakley
 
Different types of sticker apps
Different types of sticker appsDifferent types of sticker apps
Different types of sticker appsJelena Krmar
 
Visual Basic menu
Visual Basic menuVisual Basic menu
Visual Basic menukuldeep94
 

What's hot (9)

Extending Magento Layered Navigation
Extending Magento Layered NavigationExtending Magento Layered Navigation
Extending Magento Layered Navigation
 
Whmcs addon module docs
Whmcs addon module docsWhmcs addon module docs
Whmcs addon module docs
 
Introduction to UI Components in Magento 2
Introduction to UI Components in Magento 2Introduction to UI Components in Magento 2
Introduction to UI Components in Magento 2
 
Magento 2 UI Components Overview
Magento 2 UI Components OverviewMagento 2 UI Components Overview
Magento 2 UI Components Overview
 
Editing the Visual Editor (WordPress)
Editing the Visual Editor (WordPress)Editing the Visual Editor (WordPress)
Editing the Visual Editor (WordPress)
 
Menu stripe
Menu stripeMenu stripe
Menu stripe
 
Creating a Simple, Accessible On/Off Switch
Creating a Simple, Accessible On/Off SwitchCreating a Simple, Accessible On/Off Switch
Creating a Simple, Accessible On/Off Switch
 
Different types of sticker apps
Different types of sticker appsDifferent types of sticker apps
Different types of sticker apps
 
Visual Basic menu
Visual Basic menuVisual Basic menu
Visual Basic menu
 

Viewers also liked

Ed 271 technology proficient professional presentation
Ed 271 technology proficient professional presentationEd 271 technology proficient professional presentation
Ed 271 technology proficient professional presentationlc03
 
Snizhana ovechko
Snizhana ovechkoSnizhana ovechko
Snizhana ovechkoOlena Ursu
 
Oleksandr kamenchuk 2
Oleksandr kamenchuk 2Oleksandr kamenchuk 2
Oleksandr kamenchuk 2Olena Ursu
 
Sống theo phương thức 80 - 20
Sống theo phương thức 80 - 20Sống theo phương thức 80 - 20
Sống theo phương thức 80 - 20Duyệt Đoàn
 
статья шевнин киров
статья шевнин кировстатья шевнин киров
статья шевнин кировDemanessa
 
Литвинюк O
Литвинюк OЛитвинюк O
Литвинюк OOlena Ursu
 
Culinary Wines - Constellation Portfolio
Culinary Wines - Constellation PortfolioCulinary Wines - Constellation Portfolio
Culinary Wines - Constellation PortfolioMajor Brands
 
Public Campaign_Entrepreneurship
Public Campaign_EntrepreneurshipPublic Campaign_Entrepreneurship
Public Campaign_EntrepreneurshipBipasha Matin
 
Israel Through Maps - D. Ackerman - Website TEACHERS
Israel Through Maps - D. Ackerman - Website TEACHERSIsrael Through Maps - D. Ackerman - Website TEACHERS
Israel Through Maps - D. Ackerman - Website TEACHERSDaniel Gold
 
Quality assurance in practice - coffee meeting, January, DIGIT
Quality assurance in practice - coffee meeting, January, DIGITQuality assurance in practice - coffee meeting, January, DIGIT
Quality assurance in practice - coffee meeting, January, DIGITBalázs Tatár
 
Молчанов д
Молчанов дМолчанов д
Молчанов дOlena Ursu
 
Презентація до комітетських слухань
Презентація до комітетських слуханьПрезентація до комітетських слухань
Презентація до комітетських слуханьOlena Ursu
 
Teaching Holy Land - Website TEACHERS
Teaching Holy Land - Website TEACHERSTeaching Holy Land - Website TEACHERS
Teaching Holy Land - Website TEACHERSDaniel Gold
 
Desmania design Packaging & Product Design Profile
Desmania design Packaging & Product Design ProfileDesmania design Packaging & Product Design Profile
Desmania design Packaging & Product Design ProfileDesmania_Design
 

Viewers also liked (20)

Sujana gole
Sujana goleSujana gole
Sujana gole
 
Ed 271 technology proficient professional presentation
Ed 271 technology proficient professional presentationEd 271 technology proficient professional presentation
Ed 271 technology proficient professional presentation
 
Snizhana ovechko
Snizhana ovechkoSnizhana ovechko
Snizhana ovechko
 
Oleksandr kamenchuk 2
Oleksandr kamenchuk 2Oleksandr kamenchuk 2
Oleksandr kamenchuk 2
 
Sống theo phương thức 80 - 20
Sống theo phương thức 80 - 20Sống theo phương thức 80 - 20
Sống theo phương thức 80 - 20
 
статья шевнин киров
статья шевнин кировстатья шевнин киров
статья шевнин киров
 
Литвинюк O
Литвинюк OЛитвинюк O
Литвинюк O
 
Culinary Wines - Constellation Portfolio
Culinary Wines - Constellation PortfolioCulinary Wines - Constellation Portfolio
Culinary Wines - Constellation Portfolio
 
GPS GLONASS
GPS GLONASSGPS GLONASS
GPS GLONASS
 
Malikiosi&loizou
Malikiosi&loizouMalikiosi&loizou
Malikiosi&loizou
 
Public Campaign_Entrepreneurship
Public Campaign_EntrepreneurshipPublic Campaign_Entrepreneurship
Public Campaign_Entrepreneurship
 
Israel Through Maps - D. Ackerman - Website TEACHERS
Israel Through Maps - D. Ackerman - Website TEACHERSIsrael Through Maps - D. Ackerman - Website TEACHERS
Israel Through Maps - D. Ackerman - Website TEACHERS
 
Quality assurance in practice - coffee meeting, January, DIGIT
Quality assurance in practice - coffee meeting, January, DIGITQuality assurance in practice - coffee meeting, January, DIGIT
Quality assurance in practice - coffee meeting, January, DIGIT
 
Yanommi
YanommiYanommi
Yanommi
 
Молчанов д
Молчанов дМолчанов д
Молчанов д
 
Trilo food
Trilo foodTrilo food
Trilo food
 
Can we irrigate the sahara
Can we irrigate the saharaCan we irrigate the sahara
Can we irrigate the sahara
 
Презентація до комітетських слухань
Презентація до комітетських слуханьПрезентація до комітетських слухань
Презентація до комітетських слухань
 
Teaching Holy Land - Website TEACHERS
Teaching Holy Land - Website TEACHERSTeaching Holy Land - Website TEACHERS
Teaching Holy Land - Website TEACHERS
 
Desmania design Packaging & Product Design Profile
Desmania design Packaging & Product Design ProfileDesmania design Packaging & Product Design Profile
Desmania design Packaging & Product Design Profile
 

Similar to Why NextCMS: Layout Editor

GWT training session 2
GWT training session 2GWT training session 2
GWT training session 2SNEHAL MASNE
 
Tips and Tricks for LiveWhale Development
Tips and Tricks for LiveWhale DevelopmentTips and Tricks for LiveWhale Development
Tips and Tricks for LiveWhale DevelopmentNaomi Royall
 
New CSS Layout Meets the Real World
New CSS Layout Meets the Real WorldNew CSS Layout Meets the Real World
New CSS Layout Meets the Real WorldRachel Andrew
 
Html 5, a gentle introduction
Html 5, a gentle introductionHtml 5, a gentle introduction
Html 5, a gentle introductionDiego Scataglini
 
Html5, a gentle introduction
Html5, a gentle introduction Html5, a gentle introduction
Html5, a gentle introduction Diego Scataglini
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersAlkacon Software GmbH & Co. KG
 
Documentation For Tab Setup
Documentation For Tab SetupDocumentation For Tab Setup
Documentation For Tab Setupvkeeton
 
An Event Apart Seattle - New CSS Layout Meets the Real World
An Event Apart Seattle - New CSS Layout Meets the Real WorldAn Event Apart Seattle - New CSS Layout Meets the Real World
An Event Apart Seattle - New CSS Layout Meets the Real WorldRachel Andrew
 
Bootstrap PPT by Mukesh
Bootstrap PPT by MukeshBootstrap PPT by Mukesh
Bootstrap PPT by MukeshMukesh Kumar
 
An Event Apart DC - New CSS Layout meets the Real World
An Event Apart DC - New CSS Layout meets the Real WorldAn Event Apart DC - New CSS Layout meets the Real World
An Event Apart DC - New CSS Layout meets the Real WorldRachel Andrew
 
Drupal For Dummies
Drupal For DummiesDrupal For Dummies
Drupal For DummiesKoen Delvaux
 
TinyMCE: WYSIWYG editor 2010-12-08
TinyMCE: WYSIWYG editor 2010-12-08TinyMCE: WYSIWYG editor 2010-12-08
TinyMCE: WYSIWYG editor 2010-12-08Andy Gelme
 
Unit g adobe dreamweaver cs6
Unit g adobe dreamweaver cs6Unit g adobe dreamweaver cs6
Unit g adobe dreamweaver cs6Krista Lawrence
 
6 Special Howtos for Drupal
6 Special Howtos for Drupal6 Special Howtos for Drupal
6 Special Howtos for DrupalWingston
 
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolAdriaan Venter
 
Responsive Design and Bootstrap
Responsive Design  and BootstrapResponsive Design  and Bootstrap
Responsive Design and BootstrapMahmoudOHassouna
 
Integrate widgets into content pages (DX) - Developers Meetup - October 2016
Integrate widgets into content pages (DX) - Developers Meetup - October 2016Integrate widgets into content pages (DX) - Developers Meetup - October 2016
Integrate widgets into content pages (DX) - Developers Meetup - October 2016Jahia Solutions Group
 
A Guide to Creating a Great Custom Tailwind Sidebar
A Guide to Creating a Great Custom Tailwind SidebarA Guide to Creating a Great Custom Tailwind Sidebar
A Guide to Creating a Great Custom Tailwind SidebarRonDosh
 

Similar to Why NextCMS: Layout Editor (20)

Fewd week2 slides
Fewd week2 slidesFewd week2 slides
Fewd week2 slides
 
Master page
Master pageMaster page
Master page
 
GWT training session 2
GWT training session 2GWT training session 2
GWT training session 2
 
Tips and Tricks for LiveWhale Development
Tips and Tricks for LiveWhale DevelopmentTips and Tricks for LiveWhale Development
Tips and Tricks for LiveWhale Development
 
New CSS Layout Meets the Real World
New CSS Layout Meets the Real WorldNew CSS Layout Meets the Real World
New CSS Layout Meets the Real World
 
Html 5, a gentle introduction
Html 5, a gentle introductionHtml 5, a gentle introduction
Html 5, a gentle introduction
 
Html5, a gentle introduction
Html5, a gentle introduction Html5, a gentle introduction
Html5, a gentle introduction
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containers
 
Documentation For Tab Setup
Documentation For Tab SetupDocumentation For Tab Setup
Documentation For Tab Setup
 
An Event Apart Seattle - New CSS Layout Meets the Real World
An Event Apart Seattle - New CSS Layout Meets the Real WorldAn Event Apart Seattle - New CSS Layout Meets the Real World
An Event Apart Seattle - New CSS Layout Meets the Real World
 
Bootstrap PPT by Mukesh
Bootstrap PPT by MukeshBootstrap PPT by Mukesh
Bootstrap PPT by Mukesh
 
An Event Apart DC - New CSS Layout meets the Real World
An Event Apart DC - New CSS Layout meets the Real WorldAn Event Apart DC - New CSS Layout meets the Real World
An Event Apart DC - New CSS Layout meets the Real World
 
Drupal For Dummies
Drupal For DummiesDrupal For Dummies
Drupal For Dummies
 
TinyMCE: WYSIWYG editor 2010-12-08
TinyMCE: WYSIWYG editor 2010-12-08TinyMCE: WYSIWYG editor 2010-12-08
TinyMCE: WYSIWYG editor 2010-12-08
 
Unit g adobe dreamweaver cs6
Unit g adobe dreamweaver cs6Unit g adobe dreamweaver cs6
Unit g adobe dreamweaver cs6
 
6 Special Howtos for Drupal
6 Special Howtos for Drupal6 Special Howtos for Drupal
6 Special Howtos for Drupal
 
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling Tool
 
Responsive Design and Bootstrap
Responsive Design  and BootstrapResponsive Design  and Bootstrap
Responsive Design and Bootstrap
 
Integrate widgets into content pages (DX) - Developers Meetup - October 2016
Integrate widgets into content pages (DX) - Developers Meetup - October 2016Integrate widgets into content pages (DX) - Developers Meetup - October 2016
Integrate widgets into content pages (DX) - Developers Meetup - October 2016
 
A Guide to Creating a Great Custom Tailwind Sidebar
A Guide to Creating a Great Custom Tailwind SidebarA Guide to Creating a Great Custom Tailwind Sidebar
A Guide to Creating a Great Custom Tailwind Sidebar
 

Recently uploaded

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Why NextCMS: Layout Editor

  • 1. Layout Editor Present by Nguyen Huu Phuoc, Founder of NextCMS thenextcms@gmail.com
  • 2.  NextCMS is a content management, built on top of zend framework, dojo toolkit, and jquery  It is free and open source software  This slide tell you one of many reasons why you should choose NextCMS instead of other one
  • 3. We need a Layout Editor (or Template Builder, or whatever you say) which is:  Easy to use for both end-users and developers  Easy to customize the layout of page
  • 4. We are going to create a page as the following
  • 5. Layout is organized by border containers top container center container bottom container
  • 6. grid containers: placed inside border containers left column grid container (2 columns) right column
  • 7. widgets, main content pane: placed inside grid column menu editor bread crumb search box main content categories url shortener banners banners google adsense comments menu
  • 8.  Step 1: Splitting page to border containers Method 1: right-click on node, choose Insert border container
  • 9.  Step 1: Splitting page to border containers Method 2: drag and drop containers
  • 10.  Step 2: Inserting grid container
  • 11.  Step 2: Setting the grid columns
  • 12.  Step 3: Inserting widgets Method 1: drag widget and drop on the target column
  • 13.  Step 3: Inserting widgets Method 2: drag widget and drop on the target node
  • 14.  Step 4: Inserting main content pane main content pane: the main content of page without widgets, such as the content of article, etc.
  • 15. Drag and drop widgets/main content pane between grid columns
  • 16. It is also possible to insert tab containers
  • 17. We need to mofify the content, such as:  Replace special characters with emotion icons in the article’s content  Replace bad word with pre-defined characters in the article’s content  Create a slideshow consisting of all images taken from the article’s content  etc. Content modifiers are called as FILTERS
  • 18.  Applying filters to given element:
  • 19. Using available and/or additional filters drag and drop to change filter’s position
  • 20. Example of filter: Slideshow - Showing a slideshow of all images taken from the content
  • 21. Example of filter: Navigator - Creating a table of content based on headings
  • 22.  Setting id, class, style attributes for div tags that show layout elements <div class="container top_container" id="topContainer" style="height: 30px; width: 100%"> ... </div>
  • 23.  Cloning layout by copying ...
  • 24.  ... and pasting
  • 25. It is possible to define the layout in a XML file:  Template providers can package the template with pre- defined layouts  Community can share the layout with each other  Administrator can backup and restore the layout
  • 26. XML structure: <?xml version="1.0" encoding="UTF-8"?> <layout> ... </layout>
  • 27.  Inserting a border container <layout> <borderContainer region="top"> ... </borderContainer> </layout> region: top, bottom, left, right, center
  • 28.  Inserting a grid container <borderContainer region="center"> <gridContainer> ... </gridContainer> </borderContainer>
  • 29.  Inserting a grid column <gridContainer> <zone cssClass="leftContainer"> ... </zone> <zone cssClass="rightContainer"> ... </zone> </gridContainer>
  • 30.  Inserting a tab container <zone cssClass="rightContainer"> <tabContainer> <gridContainer title="Top viewed"> ... </gridContainer> <gridContainer title="Top commented"> ... </gridContainer> </tabContainer> </zone>
  • 31.  Inserting the main content pane <zone cssClass="leftContainer"> <mainContentPane /> </zone>
  • 32.  Inserting a widget <zone> <widget module="content" name="articles" title="Latest articles"> <params> <param name="data_source"> <value><![CDATA[...]]></value> </param> <param name="template" value="list" /> <param name="limit" value="4" /> <param name="category_id" value="__AUTO__" /> </params> </widget> </zone>
  • 33.  Styling page elements: id, cssClass, cssStyle attributes <borderContainer region="top" id="topContainer"> <gridContainer cssStyle="border: 1px solid #ccc"> <zone cssClass="leftContainer"> <widget module="..." name="..." cssClass="searchBoxContainer"> </widget> </zone> </gridContainer> </borderContainer>
  • 34.  Defining a filter <mainContentPane> <filters> <filter module="util" name="slideshow" /> <filter class="Util_Services_HiddenLink" /> </filters> </mainContentPane>
  • 35.  Importing layout from a XML file
  • 36.  Exporting layout to a XML file
  • 37. Customizing the dashboard dashboard: where displays the data you care most  Latest unactivated articles/comments  Latest unread private messages  Uncompleted todo list  etc.
  • 39. Have you ever wished?  Place a poll inside an article’s content  Place a photo slideshow at the end of article’s content  Place a Google Adsense banners inside an article’s content  etc.
  • 40. Placing any widget at any position of article’s content Example: inserting a poll inside the content
  • 41. Example: inserting a poll inside the content
  • 42. Example: inserting an album at the bottom of content
  • 43. We listen to you! On social networks  twitter.com/thenextcms  facebook.com/nextcms  youtube.com/thenextcms  slideshare.net/thenextcms  github.com/thenextcms Email thenextcms@gmail.com
  • 44. nextcms.org nextcms.tv © 2012 Nguyen Huu Phuoc thenextcms@gmail.com