SlideShare ist ein Scribd-Unternehmen logo
1 von 30
“To Inspire and Engage”


PASUG’s mission is to foster a community of Sitecore
enthusiasts in the Greater Philadelphia Region. PASUG is
focused on Sitecore developers, architects, administrators,
designers, business users, marketers and managers. Our
goal is to provide value to all members, regardless of their
role or level of experience with Sitecore. PASUG provides
an open environment for our members to share their
experiences, ask questions and network; unburdened by
SPAM. Like Sitecore itself, we strive to Inspire and Engage
our members so that the community can grow and be
better equipped to utilize Sitecore as a platform to its
fullest potential.
Debra Loggia, NorthPoint Digital
David Peterson, ISite Design
What We’ll Cover
• Architectural Overview
• Validation
• Save Actions
At a Glance
• Strengths
– Flexibility for Marketers
– Time to deployment
– Built-in Analytics support

• Limitations
– Front-End/CSS
– Some aspects difficult to extend
Presentation
Form Rendering
Form Template
Form Class Structure
Control Structure
• Control structure matches Form structure
in content.
• Each control responsible for its output.
– HTML formatting
– Naming conventions
Extending WFFM Classes
• Sections
– Internal class

• Form Top-Level Controls
– Protected internal setter for item context
– Includes intro, footer, submit button
Form Data Processing
Validation
• Field Validation
– Scope: Single Form Field
– Evaluated: First
– Returns: True/False

• Form Verification Actions
– Scope: All Form Fields
– Evaluated: Last
– Throw Exception on Failure
Extending Field Validators
• Cross-Field Validation via
Sitecore.Form.Core.Utility.WebUtil
Technical Considerations
• Advantages:
– Expands scope to all form fields.
– Evaluated first with other field validators.

• Disadvantages:
– Programmatically ties field validator to
another field.
– Content Editors can add/remove fields from
forms.
Validator Item
Validation Wire-Up
Form Verification Actions
• Define your own via BaseCheckAction.
– Access to all form fields
Form Verification Actions
• Raise validation failure by throwing an
Exception
Save Actions
• Custom Save Actions via ISaveAction
Q&A
• Twitter: @PetersonDave
• Blog: http://petersondave.wordpress.com
• ISITE Design: http://isitedesign.com
• Built With Sitecore:
http://www.isitedesign.com/sitecore
Jamie Stump, Perficient Inc.
Custom DMS Integration Case Study

• B2B E-Commerce Site Integrated with Sitecore
– 1 Million Unique Applications of Products
– Site Requires Paid Login to Access / SEO of No Concern

• Products Stored in Proprietary Homegrown Database
and Served to Website via Homegrown Web Services
• Single Sitecore Page Item Serves All Products via
Querystring Parameter
Challenges

• Client wants to use DMS capabilities to full extent;
including Analytics & Contextual Reports,
Personalization (by Persona), Multivariate Testing
• Need to be able to track Site Visitor information on a
per-product basis even though there’s a singular
Product Page Item
• Implicit Personalization for Visitors to be done across
multiple visits
External Data Integration Solution

Single Products Page
(w/ Querystring to
Identify Individual
Product)
Get Product Data
Display on Page via
Web Service

Products /
Companies
DB

Product ID
Foreign Key

Using DMS API – Write Individual
Product / Score Info to Analytics DB

Get Persona Scores
for Displayed
Product

New Products
/ Persona
Scores DB

Sitecore
Analytics
DB
(Personas)

Persona GUID
Foreign Key
DMS Customization Solutions

• Connect Users with Particular Visitor Record
– Ensures Greatest Data Accuracy
– Reduces DB Load

• Created Customized Reports
– Profile-Centric Across Visitors
– Product-Centric Across Visitors

• Custom Conditions Allowing Personalization over
Timespan (Cross-Visit)
– Rolling and Set Time Periods
Lessons Learned

• Sitecore Visits can be finicky – don’t always end when you
expect them to
• Adjusting Visitor may cause Sitecore to think viewer is a Robot
– may decrease session timeout to 1 minute
• Stimulsoft Web Report Designer that ships with Sitecore has
some bugs – Customization of Reports is better done with
Stimulsoft Reports .NET
– Does carry additional cost

• API Properties can behave un-intuitively
– Example: VisitsRow.Profiles returns Profiles for Visitor not just for current
Visit.
Questions?
For Further Information

• Twitter: @jstump29
• Email: Jamie.Stump@Perficient.com
• Blog: http://blogs.perficient.com/microsoft/author/jstump/
• http://www.Perficient.com

08.08.13

7
Philadelphia Area Sitecore User Group Meetup - October 2013

Weitere ähnliche Inhalte

Was ist angesagt?

Sitecore xDB - How it works
Sitecore xDB - How it worksSitecore xDB - How it works
Sitecore xDB - How it works
Thomas Eldblom
 
Migration to sharepoint 0.1
Migration to sharepoint 0.1Migration to sharepoint 0.1
Migration to sharepoint 0.1
Shashank EL
 

Was ist angesagt? (19)

BrightGen's Winter 14 Salesforce Release Webinar
BrightGen's Winter 14 Salesforce Release WebinarBrightGen's Winter 14 Salesforce Release Webinar
BrightGen's Winter 14 Salesforce Release Webinar
 
In Transit Images Drives Online Photography Business Forward with DAM
In Transit Images Drives Online Photography Business Forward with DAMIn Transit Images Drives Online Photography Business Forward with DAM
In Transit Images Drives Online Photography Business Forward with DAM
 
Filamente SharePoint Mobile Client for iPad, iPhone and iPod Touch
Filamente SharePoint Mobile Client for iPad, iPhone and iPod TouchFilamente SharePoint Mobile Client for iPad, iPhone and iPod Touch
Filamente SharePoint Mobile Client for iPad, iPhone and iPod Touch
 
SharePoint as a Digital Presence Platform
SharePoint as a Digital Presence PlatformSharePoint as a Digital Presence Platform
SharePoint as a Digital Presence Platform
 
SharePoint Development
SharePoint DevelopmentSharePoint Development
SharePoint Development
 
Local SEO Webinar
Local SEO WebinarLocal SEO Webinar
Local SEO Webinar
 
Sitecore enhancing content author experience
Sitecore enhancing content author experienceSitecore enhancing content author experience
Sitecore enhancing content author experience
 
Emgage intro
Emgage introEmgage intro
Emgage intro
 
Sitecore xDB - How it works
Sitecore xDB - How it worksSitecore xDB - How it works
Sitecore xDB - How it works
 
Emerging leaders web redesign proposal
Emerging leaders web redesign proposalEmerging leaders web redesign proposal
Emerging leaders web redesign proposal
 
Website personalization with Sitecore Experience Platform
Website personalization with Sitecore Experience PlatformWebsite personalization with Sitecore Experience Platform
Website personalization with Sitecore Experience Platform
 
Filamante SharePoint Mobile Client for iPad, iPhone and iPod Touch
Filamante SharePoint Mobile Client for iPad, iPhone and iPod TouchFilamante SharePoint Mobile Client for iPad, iPhone and iPod Touch
Filamante SharePoint Mobile Client for iPad, iPhone and iPod Touch
 
Local SEO
Local SEOLocal SEO
Local SEO
 
Insights and marketing automation with sitecore 8
Insights and marketing automation with sitecore 8Insights and marketing automation with sitecore 8
Insights and marketing automation with sitecore 8
 
Leveraging Sitecore to Create a Completely Connected Customer Experience
Leveraging Sitecore to Create a Completely Connected Customer ExperienceLeveraging Sitecore to Create a Completely Connected Customer Experience
Leveraging Sitecore to Create a Completely Connected Customer Experience
 
Migration to sharepoint 0.1
Migration to sharepoint 0.1Migration to sharepoint 0.1
Migration to sharepoint 0.1
 
SEO and Social Media
SEO and Social MediaSEO and Social Media
SEO and Social Media
 
Overview of SharePoint 2013 by Amin Houssamy
Overview of SharePoint 2013 by Amin HoussamyOverview of SharePoint 2013 by Amin Houssamy
Overview of SharePoint 2013 by Amin Houssamy
 
SharePoint hub sites in Office 365
SharePoint hub sites in Office 365SharePoint hub sites in Office 365
SharePoint hub sites in Office 365
 

Andere mochten auch (8)

Build. Better. Content!
Build. Better. Content!Build. Better. Content!
Build. Better. Content!
 
Tags strategy
Tags strategyTags strategy
Tags strategy
 
Erlang
ErlangErlang
Erlang
 
Virtualization - Dan Shearer
Virtualization - Dan ShearerVirtualization - Dan Shearer
Virtualization - Dan Shearer
 
Change Can Be Delight-ful: Digital Strategy at Harvard
Change Can Be Delight-ful: Digital Strategy at HarvardChange Can Be Delight-ful: Digital Strategy at Harvard
Change Can Be Delight-ful: Digital Strategy at Harvard
 
Why Python
Why PythonWhy Python
Why Python
 
Digital Disruption: From Zero to Sixty
Digital Disruption: From Zero to SixtyDigital Disruption: From Zero to Sixty
Digital Disruption: From Zero to Sixty
 
Google Analytics Meetup: Auto Event Tracking
Google Analytics Meetup: Auto Event TrackingGoogle Analytics Meetup: Auto Event Tracking
Google Analytics Meetup: Auto Event Tracking
 

Ähnlich wie Philadelphia Area Sitecore User Group Meetup - October 2013

Managing Multiple Store Fronts on Magento
Managing Multiple Store Fronts on MagentoManaging Multiple Store Fronts on Magento
Managing Multiple Store Fronts on Magento
Geoffrey Mobisson
 
Managing Multiple Store Fronts on Magento
Managing Multiple Store Fronts on MagentoManaging Multiple Store Fronts on Magento
Managing Multiple Store Fronts on Magento
Geoffrey Mobisson
 

Ähnlich wie Philadelphia Area Sitecore User Group Meetup - October 2013 (20)

Increasing Website Engagement with Sitecore CMS
Increasing Website Engagement with Sitecore CMSIncreasing Website Engagement with Sitecore CMS
Increasing Website Engagement with Sitecore CMS
 
The Sitecore Marketing Technology Ecosystem
The Sitecore Marketing Technology EcosystemThe Sitecore Marketing Technology Ecosystem
The Sitecore Marketing Technology Ecosystem
 
Alite 120809
Alite 120809Alite 120809
Alite 120809
 
Managing Multiple Store Fronts on Magento
Managing Multiple Store Fronts on MagentoManaging Multiple Store Fronts on Magento
Managing Multiple Store Fronts on Magento
 
Wordpress 2016
Wordpress 2016Wordpress 2016
Wordpress 2016
 
Introducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience PlatformIntroducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience Platform
 
Activating massive omnichannel personalization
Activating massive omnichannel personalizationActivating massive omnichannel personalization
Activating massive omnichannel personalization
 
Magento presentatie
Magento presentatieMagento presentatie
Magento presentatie
 
Sitecore Commerce Analytics
Sitecore Commerce AnalyticsSitecore Commerce Analytics
Sitecore Commerce Analytics
 
Social In SharePoint 2010
Social In SharePoint 2010Social In SharePoint 2010
Social In SharePoint 2010
 
The Global Marketing Center: A Crafter CMS and Alfresco Case Study
The Global Marketing Center: A Crafter CMS and Alfresco Case StudyThe Global Marketing Center: A Crafter CMS and Alfresco Case Study
The Global Marketing Center: A Crafter CMS and Alfresco Case Study
 
eCommerce Strategy In-a-Box
eCommerce Strategy In-a-BoxeCommerce Strategy In-a-Box
eCommerce Strategy In-a-Box
 
eCommerce with Magento
eCommerce with MagentoeCommerce with Magento
eCommerce with Magento
 
Product Catalog and IT Service Management
Product Catalog and IT Service ManagementProduct Catalog and IT Service Management
Product Catalog and IT Service Management
 
Sitecore Product Updates from Minneapolis DX Summit
Sitecore Product Updates from Minneapolis DX SummitSitecore Product Updates from Minneapolis DX Summit
Sitecore Product Updates from Minneapolis DX Summit
 
Nikki rae Google Analytics Audit at BrightonSEO
Nikki rae Google Analytics Audit at BrightonSEONikki rae Google Analytics Audit at BrightonSEO
Nikki rae Google Analytics Audit at BrightonSEO
 
MSP Marketing Update: Tips to Turn Your Website Into Your Best Performing Sal...
MSP Marketing Update: Tips to Turn Your Website Into Your Best Performing Sal...MSP Marketing Update: Tips to Turn Your Website Into Your Best Performing Sal...
MSP Marketing Update: Tips to Turn Your Website Into Your Best Performing Sal...
 
Business 2.0 with WordPress
Business 2.0 with WordPressBusiness 2.0 with WordPress
Business 2.0 with WordPress
 
Designing your SharePoint Internet site: The basics
Designing your SharePoint Internet site: The basicsDesigning your SharePoint Internet site: The basics
Designing your SharePoint Internet site: The basics
 
Managing Multiple Store Fronts on Magento
Managing Multiple Store Fronts on MagentoManaging Multiple Store Fronts on Magento
Managing Multiple Store Fronts on Magento
 

Mehr von ISITE Design is now Connective DX

BMC Case Study: How to Take a Content-First Approach and Measure the Success ...
BMC Case Study: How to Take a Content-First Approach and Measure the Success ...BMC Case Study: How to Take a Content-First Approach and Measure the Success ...
BMC Case Study: How to Take a Content-First Approach and Measure the Success ...
ISITE Design is now Connective DX
 

Mehr von ISITE Design is now Connective DX (20)

BMC Case Study: How to Take a Content-First Approach and Measure the Success ...
BMC Case Study: How to Take a Content-First Approach and Measure the Success ...BMC Case Study: How to Take a Content-First Approach and Measure the Success ...
BMC Case Study: How to Take a Content-First Approach and Measure the Success ...
 
Designing for Surprise in UX & CX
Designing for Surprise in UX & CXDesigning for Surprise in UX & CX
Designing for Surprise in UX & CX
 
Principles of Agility
Principles of AgilityPrinciples of Agility
Principles of Agility
 
Digital Disruption: Uncovering the Next Thing Your Customer Wants
Digital Disruption: Uncovering the Next Thing Your Customer WantsDigital Disruption: Uncovering the Next Thing Your Customer Wants
Digital Disruption: Uncovering the Next Thing Your Customer Wants
 
Building a Design Discipline in a Hyper-Growth Startup
Building a Design Discipline in a Hyper-Growth StartupBuilding a Design Discipline in a Hyper-Growth Startup
Building a Design Discipline in a Hyper-Growth Startup
 
Unleashing the Next Wave of Innovation
Unleashing the Next Wave of InnovationUnleashing the Next Wave of Innovation
Unleashing the Next Wave of Innovation
 
Data and Design: BFFs or Frenemies?
Data and Design: BFFs or Frenemies?Data and Design: BFFs or Frenemies?
Data and Design: BFFs or Frenemies?
 
Everything is Better in Community
Everything is Better in CommunityEverything is Better in Community
Everything is Better in Community
 
Design As If Your Life Depended On It! Pioneering the Future of Experiential ...
Design As If Your Life Depended On It! Pioneering the Future of Experiential ...Design As If Your Life Depended On It! Pioneering the Future of Experiential ...
Design As If Your Life Depended On It! Pioneering the Future of Experiential ...
 
Being Human in a Digital World
Being Human in a Digital WorldBeing Human in a Digital World
Being Human in a Digital World
 
Sitecore’s Federated Experience Manager: Keeping the Customer at the Center o...
Sitecore’s Federated Experience Manager: Keeping the Customer at the Center o...Sitecore’s Federated Experience Manager: Keeping the Customer at the Center o...
Sitecore’s Federated Experience Manager: Keeping the Customer at the Center o...
 
Personalization in Higher Education: Start Small and Think Big
Personalization in Higher Education: Start Small and Think BigPersonalization in Higher Education: Start Small and Think Big
Personalization in Higher Education: Start Small and Think Big
 
Experience Optimization is a Party
Experience Optimization is a PartyExperience Optimization is a Party
Experience Optimization is a Party
 
Isite Design Path To Personalization
Isite Design Path To PersonalizationIsite Design Path To Personalization
Isite Design Path To Personalization
 
Making Experiences Better with Personalization and Testing
Making Experiences Better with Personalization and TestingMaking Experiences Better with Personalization and Testing
Making Experiences Better with Personalization and Testing
 
Google Analytics December 2013 Meetup: Advanced Segments
Google Analytics December 2013 Meetup: Advanced SegmentsGoogle Analytics December 2013 Meetup: Advanced Segments
Google Analytics December 2013 Meetup: Advanced Segments
 
Digital Pulse Summit 2013 - The Road to Delight in the Age of the Customer
Digital Pulse Summit 2013 - The Road to Delight in the Age of the CustomerDigital Pulse Summit 2013 - The Road to Delight in the Age of the Customer
Digital Pulse Summit 2013 - The Road to Delight in the Age of the Customer
 
Delight 2013 - Jared Spool of UIE
Delight 2013 - Jared Spool of UIEDelight 2013 - Jared Spool of UIE
Delight 2013 - Jared Spool of UIE
 
Delight 2013 - Daniel Romano of Disney
Delight 2013 - Daniel Romano of DisneyDelight 2013 - Daniel Romano of Disney
Delight 2013 - Daniel Romano of Disney
 
Building a Culture of Content -- How to Build Your Team & Craft a Strategy
Building a Culture of Content -- How to Build Your Team & Craft a Strategy Building a Culture of Content -- How to Build Your Team & Craft a Strategy
Building a Culture of Content -- How to Build Your Team & Craft a Strategy
 

Kürzlich hochgeladen

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
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
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
Safe Software
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
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, ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
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
 
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
 
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...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
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
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
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
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

Philadelphia Area Sitecore User Group Meetup - October 2013

  • 1. “To Inspire and Engage”
  • 2.  PASUG’s mission is to foster a community of Sitecore enthusiasts in the Greater Philadelphia Region. PASUG is focused on Sitecore developers, architects, administrators, designers, business users, marketers and managers. Our goal is to provide value to all members, regardless of their role or level of experience with Sitecore. PASUG provides an open environment for our members to share their experiences, ask questions and network; unburdened by SPAM. Like Sitecore itself, we strive to Inspire and Engage our members so that the community can grow and be better equipped to utilize Sitecore as a platform to its fullest potential.
  • 5. What We’ll Cover • Architectural Overview • Validation • Save Actions
  • 6. At a Glance • Strengths – Flexibility for Marketers – Time to deployment – Built-in Analytics support • Limitations – Front-End/CSS – Some aspects difficult to extend
  • 11. Control Structure • Control structure matches Form structure in content. • Each control responsible for its output. – HTML formatting – Naming conventions
  • 12. Extending WFFM Classes • Sections – Internal class • Form Top-Level Controls – Protected internal setter for item context – Includes intro, footer, submit button
  • 14. Validation • Field Validation – Scope: Single Form Field – Evaluated: First – Returns: True/False • Form Verification Actions – Scope: All Form Fields – Evaluated: Last – Throw Exception on Failure
  • 15. Extending Field Validators • Cross-Field Validation via Sitecore.Form.Core.Utility.WebUtil
  • 16. Technical Considerations • Advantages: – Expands scope to all form fields. – Evaluated first with other field validators. • Disadvantages: – Programmatically ties field validator to another field. – Content Editors can add/remove fields from forms.
  • 19. Form Verification Actions • Define your own via BaseCheckAction. – Access to all form fields
  • 20. Form Verification Actions • Raise validation failure by throwing an Exception
  • 21. Save Actions • Custom Save Actions via ISaveAction
  • 22. Q&A • Twitter: @PetersonDave • Blog: http://petersondave.wordpress.com • ISITE Design: http://isitedesign.com • Built With Sitecore: http://www.isitedesign.com/sitecore
  • 24. Custom DMS Integration Case Study • B2B E-Commerce Site Integrated with Sitecore – 1 Million Unique Applications of Products – Site Requires Paid Login to Access / SEO of No Concern • Products Stored in Proprietary Homegrown Database and Served to Website via Homegrown Web Services • Single Sitecore Page Item Serves All Products via Querystring Parameter
  • 25. Challenges • Client wants to use DMS capabilities to full extent; including Analytics & Contextual Reports, Personalization (by Persona), Multivariate Testing • Need to be able to track Site Visitor information on a per-product basis even though there’s a singular Product Page Item • Implicit Personalization for Visitors to be done across multiple visits
  • 26. External Data Integration Solution Single Products Page (w/ Querystring to Identify Individual Product) Get Product Data Display on Page via Web Service Products / Companies DB Product ID Foreign Key Using DMS API – Write Individual Product / Score Info to Analytics DB Get Persona Scores for Displayed Product New Products / Persona Scores DB Sitecore Analytics DB (Personas) Persona GUID Foreign Key
  • 27. DMS Customization Solutions • Connect Users with Particular Visitor Record – Ensures Greatest Data Accuracy – Reduces DB Load • Created Customized Reports – Profile-Centric Across Visitors – Product-Centric Across Visitors • Custom Conditions Allowing Personalization over Timespan (Cross-Visit) – Rolling and Set Time Periods
  • 28. Lessons Learned • Sitecore Visits can be finicky – don’t always end when you expect them to • Adjusting Visitor may cause Sitecore to think viewer is a Robot – may decrease session timeout to 1 minute • Stimulsoft Web Report Designer that ships with Sitecore has some bugs – Customization of Reports is better done with Stimulsoft Reports .NET – Does carry additional cost • API Properties can behave un-intuitively – Example: VisitsRow.Profiles returns Profiles for Visitor not just for current Visit.
  • 29. Questions? For Further Information • Twitter: @jstump29 • Email: Jamie.Stump@Perficient.com • Blog: http://blogs.perficient.com/microsoft/author/jstump/ • http://www.Perficient.com 08.08.13 7