SlideShare a Scribd company logo
PITFALLS FOR CASCADE
      NEWBIES
      BY LISA HALL
AGENDA/OUTLINE

• 6 Potential Pitfalls
  •   Top Data Definition creation Pitfall
  •   Top CSS Pitfall
  •   Top 2 - Format/Velocity Pitfall
  •   Top Page Data Definition Pitfall
  •   The Most Dangerous Pitfall of All


• Content Render Times - Efficiency
DATA DEFINITION

• Content Render Depth
CSS/FILES

2 STEPS
• [system-asset] tags
• Check „Rewrite page links‟
Pitfalls to Avoid for Cascade Server Newbies by Lisa Hall
‘SOLVE THE PATH’

Incorrect path to Current Page Node -

#set($page = $_XPathTool.selectSingleNode ($contentRoot,
“index-page/calling-system/page-system/”)


Directions: Unscramble and Re-order the path above
SOLUTION

Correct path to Current Page Node -

#set($data = $_XPathTool.selectSingleNode($contentRoot,
“system-index-block/calling-page/system-page/”)
FORMATS-SCRIPTS

In addition to incorrect Path names, another
  common format issue is assigning values.

String
#set($item1 = $_XPathTool.selectSingleNode($page, "name").value)


Node
#set($item2 = $_XPathTool.selectSingleNode($page, "name"))
Pitfalls to Avoid for Cascade Server Newbies by Lisa Hall
POP QUIZ

Q1. Which item should be displayed here?

$_SerializerTool.serialize(“?")


#set($item1 = $_XPathTool.selectSingleNode($page,"name").value)

#set($item2 = $_XPathTool.selectSingleNode($page, "name"))
POP QUIZ

Q2. What will each of these display?

<h1>$item1</h1>

<h1>$item2</h1>

#set($item1 = $_XPathTool.selectSingleNode($page,"name").value)

#set($item2 = $_XPathTool.selectSingleNode($page, "name"))
TIDY UP…?

Background images from your CSS file not displaying
properly?
…OR NOT

     T WO O P T I O N S

• Page-level
• Admin -level
DON‟T LET THIS HAPPEN TO YOU!
…BUT IF IT DOES




      Go Back!!!
EFFICIENT RENDERING TIMES

Why should you care?
XML OUTPUT

<calling-page>
  <system-page>
       <dynamic-metadata>
          <name>topic</name>
          <value>Cascade Pitfalls</value>
       </dynamic-metadata>
       <dynamic-metadata>
          <name>speaker</name>
          <value>Lisa</value>
       </dynamic-metadata>
FORMATS - ADVANCED

A COMMON APPROACH
A COMMON APPROACH - CONT.

#foreach($metadata in $dynamic-metadata)

  #if(metadata.getChild("name") =="speaker")
      #set($item = metadata.getChild("value").value)

#end
A BETTER WAY

Efficient Programming:

#set($item = $_XPathTool.selectNode($page,
"dynamic-metadata[name='speaker']/value").value)
METRICS TO THE RESCUE!

T WO O P T I O N S
INDEX BLOCKS WEIGHING YOU DOWN?
THERE, THAT’S BETTER

SMALLER INDEX BLOCKS = FASTER RENDERING TIMES
WAYS TO CREATE SMALLER BLOCKS

   THE SKY IS THE LIMIT ON MAX ASSETS
IS THAT INLINE XML REALLY
       NECESSARY?
QUESTIONS?
IMAGE RESOURCES

                     http://blog.copdfoundation.org/questions-about-
insurance/c-users-sschlegel-pictures-question-mark-man/



                     http://www.instantlyfallasleep.com/looping-
dream.html

More Related Content

PDF
Pagination in PHP
PDF
Country State City Dropdown in PHP
PDF
Add edit delete in Codeigniter in PHP
PDF
CakeFest 2013 keynote
PDF
Advanced Querying with CakePHP 3
PPTX
PHP performance 101: so you need to use a database
KEY
Introduction à CoffeeScript pour ParisRB
PDF
Developing applications for performance
Pagination in PHP
Country State City Dropdown in PHP
Add edit delete in Codeigniter in PHP
CakeFest 2013 keynote
Advanced Querying with CakePHP 3
PHP performance 101: so you need to use a database
Introduction à CoffeeScript pour ParisRB
Developing applications for performance

What's hot (20)

PPTX
Tax management-system
PDF
Agile database access with CakePHP 3
KEY
Introducing CakeEntity
KEY
Introducing CakeEntity
TXT
My shell
PDF
Internationalizing CakePHP Applications
PDF
PHP and Rich Internet Applications
PPTX
Database performance 101
PDF
New in cakephp3
PDF
Pemrograman Web 8 - MySQL
PDF
Why Hacking WordPress Search Isn't Some Big Scary Thing
PDF
How else can you write the code in PHP?
PPTX
PHP Lecture 4 - Working with form, GET and Post Methods
PDF
Pemrograman Web 9 - Input Form DB dan Session
PPTX
Database Management - Lecture 4 - PHP and Mysql
KEY
Zf Zend Db by aida
ODP
Php 102: Out with the Bad, In with the Good
PDF
PDF
Tips of CakePHP and MongoDB - Cakefest2011 ichikaway
PDF
[WLDN] Supercharging word press development in 2018
Tax management-system
Agile database access with CakePHP 3
Introducing CakeEntity
Introducing CakeEntity
My shell
Internationalizing CakePHP Applications
PHP and Rich Internet Applications
Database performance 101
New in cakephp3
Pemrograman Web 8 - MySQL
Why Hacking WordPress Search Isn't Some Big Scary Thing
How else can you write the code in PHP?
PHP Lecture 4 - Working with form, GET and Post Methods
Pemrograman Web 9 - Input Form DB dan Session
Database Management - Lecture 4 - PHP and Mysql
Zf Zend Db by aida
Php 102: Out with the Bad, In with the Good
Tips of CakePHP and MongoDB - Cakefest2011 ichikaway
[WLDN] Supercharging word press development in 2018
Ad

Similar to Pitfalls to Avoid for Cascade Server Newbies by Lisa Hall (20)

PDF
Unit testing with zend framework tek11
KEY
Unit testing with zend framework PHPBenelux
PDF
Everything About PowerShell
PPT
Propel sfugmd
KEY
Unit testing zend framework apps
PDF
Drupal - dbtng 25th Anniversary Edition
PDF
Why is crud a bad idea - focus on real scenarios
PPTX
Drupal II: The SQL
PPTX
Creating Operational Redundancy for Effective Web Data Mining
PDF
Assetic (Symfony Live Paris)
PPT
06 Php Mysql Connect Query
PDF
Refactoring using Codeception
PPTX
Drupal7 dbtng
PDF
Separation of concerns - DPC12
PDF
Be lazy, be ESI: HTTP caching and Symfony2 @ PHPDay 2011 05-13-2011
PDF
Grok Drupal (7) Theming
DOC
Ex[1].3 php db connectivity
PPTX
DrupalCamp Foz - Novas APIs Drupal 7
PDF
DataMapper
PDF
The History of PHPersistence
Unit testing with zend framework tek11
Unit testing with zend framework PHPBenelux
Everything About PowerShell
Propel sfugmd
Unit testing zend framework apps
Drupal - dbtng 25th Anniversary Edition
Why is crud a bad idea - focus on real scenarios
Drupal II: The SQL
Creating Operational Redundancy for Effective Web Data Mining
Assetic (Symfony Live Paris)
06 Php Mysql Connect Query
Refactoring using Codeception
Drupal7 dbtng
Separation of concerns - DPC12
Be lazy, be ESI: HTTP caching and Symfony2 @ PHPDay 2011 05-13-2011
Grok Drupal (7) Theming
Ex[1].3 php db connectivity
DrupalCamp Foz - Novas APIs Drupal 7
DataMapper
The History of PHPersistence
Ad

More from hannonhill (20)

PPTX
Cascade + Bootstrap = Awesome
PPTX
Web Governance Crash Course: Creating a Sustainable Digital Transformation
PDF
Optimizing MySQL for Cascade Server
PPTX
Using Cascade technology to increase SEO/Landing Page Optimization
PDF
Information Architecture and User Experience: The Journey, The Destination, T...
PPTX
2 Men 1 Site
PPTX
Connecting Ecommerce & Centralized Analytics to Cascade Server
PDF
Data Modeling with Cascade Server and HighCharts JS
PDF
Modernizing Internal Communications with Cascade Server, WordPress and MailCh...
PDF
Fun with Cascade Server!
PPTX
Accessibility in Practice: Integrating Web Accessibility into Cascade Training
PPTX
Crowdsourced Maps: From Google Forms to Fusion Tables to Cascade Server
PPTX
Superautomatic! Data Feeds, Bricks, and Blocks, with Server-side Transformat...
PPTX
Climbing Migration Mountain: 200+ Sites from the Ground Up
PPTX
In Pursuit of the Grand Unified Template
PDF
Cusestarter or How We Built Our Own Crowdfunding Platform
PPT
Web Services: Encapsulation, Reusability, and Simplicity
PPTX
Cascade Server: Past, Present, and Future!
PPTX
Web Forms, or How I Learned to Stop Worrying and Love Web Services
PPTX
Outputting Their Full Potential: Using Outputs for Site Redesigns and Develo...
Cascade + Bootstrap = Awesome
Web Governance Crash Course: Creating a Sustainable Digital Transformation
Optimizing MySQL for Cascade Server
Using Cascade technology to increase SEO/Landing Page Optimization
Information Architecture and User Experience: The Journey, The Destination, T...
2 Men 1 Site
Connecting Ecommerce & Centralized Analytics to Cascade Server
Data Modeling with Cascade Server and HighCharts JS
Modernizing Internal Communications with Cascade Server, WordPress and MailCh...
Fun with Cascade Server!
Accessibility in Practice: Integrating Web Accessibility into Cascade Training
Crowdsourced Maps: From Google Forms to Fusion Tables to Cascade Server
Superautomatic! Data Feeds, Bricks, and Blocks, with Server-side Transformat...
Climbing Migration Mountain: 200+ Sites from the Ground Up
In Pursuit of the Grand Unified Template
Cusestarter or How We Built Our Own Crowdfunding Platform
Web Services: Encapsulation, Reusability, and Simplicity
Cascade Server: Past, Present, and Future!
Web Forms, or How I Learned to Stop Worrying and Love Web Services
Outputting Their Full Potential: Using Outputs for Site Redesigns and Develo...

Pitfalls to Avoid for Cascade Server Newbies by Lisa Hall

Editor's Notes

  • #2: Welcome to the presentation – mentionhannon hill team members in photos, keep count
  • #4: Demo 1 – Content Render Depth Example - index-dynamic (Home) , point out the other index page the difference (callout is missing) - Data Definition of index-dynamic (Home) (view in edit/system and navigate to it) - Callout block set to 0 - Set to Content Depth to 2 and watch it appear.
  • #5: System Asset tags are important because if you move the files around, Cascade will still know where they are, including if you change file names, etc.Demo 2 – System-asset tags - show how to add them (copy/paste – find/replace) - click save - Show on the page, no background image button - Check Rewrite links on the CSS file and then watch the buttons appear.
  • #7: Give time and ask them to raise their hands if they have the answer.
  • #13: You really shouldn’t use Inline styles, but for special circumstances or situations where you feel you have to:Demo 3 – INLINE STYLES - Show the styles in callout1 - click save - no changes in the code
  • #14: Demo 3 – iNLINE STYLES cont. - At the block/page level – uncheck Tidy HTML OR option 2 - global settings -&gt; content -&gt; uncheck enable HTML content
  • #15: Demo 4 – Saving Formats -Edit a format (archive) - open and edit another page - try to save, witness the red bar
  • #16: Demo 4 continued- Saving Format - Hit the Back button and save again
  • #17: Customers, coworkers, students, will appreciate being able to navigate quickly and efficiently. Long loading times, means people get bored or frustrated and move on. Perhaps missing valuable content on your website.
  • #18: Typical XML Output – dynamic metadata. What if there is a long list? What if you want to just get the speaker name, how do you do it?
  • #19: A common approach is a ForEach loop
  • #20: Takes a long time and will cause your page to load slowly
  • #21: Much Faster and more efficient
  • #22: Demo 5 – Metrics Show the SiteMap page – click metrics tag Show the slow region (Now we know where to speed up the page)
  • #23: Large index blocks which contain the information from many files and folders will slow down your page and keep you grounded
  • #24: Smaller index blocks (less assets) will keep you running and mobile
  • #25: Demo 6 – Max Assets - Show the number of assets in the Metrics Tab - Reduce the max assets, by unclicking unnecessary items, and limiting the number of assets returned - show the faster page render time
  • #26: Demo 6 – Inline XML - Show the speed time of the page - show the XML for the SiteMap page and all the inline data that you don’t need - go back to index block and uncheck show XML inline - show the faster page render time