7 Replies Latest reply on Apr 10, 2015 3:41 PM by Justin Norris

    Extreme Dynamic Landing Page

    Katie DenHollander
      I'm trying to solve for a complicated situation and not sure of the best way to tackle it.
      • We are trying to make available pdfs for 5 different products (one for each product).
      • It is important that people only see or receive the pdf for the product they have purchased.
      • A person could have purchased any combination of the 5 different products (resulting in 120 different possible combinations)
      • We would like to have each person only receive 1 email from us, instead of up to 5 if they have purchased all 5 products.
      • We are synced with Salesforce.
      We have considered sending one email with a link to a landing page that is dynamic and ideally, we would like to set up the landing page so if a person is in the SF campaign for product A, they will see the link for product A's pdf, etc. However, since a person could own any combination of the 5 products, it seems likE we would need to build out a dynamic page for each combination possible (120!).

      I am looking for any suggestions on how we could do this without the end user having to receive a separate email for each product or having us create 120 of anything.

      Thanks!
       
        • Re: Extreme Dynamic Landing Page
          Geoffrey Krajeski
          Could you try "blocks" on the page that show dynamically based on the campaign membership?

          So, as I'm thinking, you would have your 5 potential product blocks, and show/hide them (CSS or via HTML printout), based on the logic of the person being a member of the campaign.
          • Re: Extreme Dynamic Landing Page
            Katie DenHollander
            Thanks for your answer Geoff!

            Do you suggest editing the HTML of the rich text box or adding an HTML box on the landing page edit screen? Or is it something you would add into the landing page template HTML?

            I'm not very familiar with HTML or CSS.
            • Re: Extreme Dynamic Landing Page
              Justin Norris
              Building on Geoff's excellent idea, you could create 5 text fields in Marketo, one for each product.

              Make the default value for these fields be the string "none".

              When someone purchases the product, use a change data value flow step to change the value of the field to "initial".

              Now on your landing page, wrap each product section in a div.

              Use some CSS with a display property on each div and specifiy the token for the lead field you just created.

              E.g.,

              <div style="display: {{lead.product field 1}};">Product 1 content here</div>

              If the person has purchased the product, the value is "initial" which is the default display value, it should display normally.

              If the person has not purchased the product, the value is "none", and "display:none" hides that content with CSS.

              This should work in emails too, I think.

              It's a pretty good solution if you have these 5 main products -- it's less elegant if you need to keep creating more fields for additional products. But still better than a 120 segment segmentation!
               
              • Re: Extreme Dynamic Landing Page
                Sanford Whiteman
                Cool suggestions, guys!

                @Katie D If you can store the purchased products in a single space-delimited field -- so it holds "product1 product3 product5" or "product2 product5" or "product4" then that field can be directly used as a CSS class:

                  class="productList {{Lead.Purchased Products List}}"

                Or if you have a different field for each product you can accomplish the same with:

                  class="productList {{Lead.Purchased Products 1}} {{Lead.Purchased Products 2}} {{Lead.Purchased Products 3} {{Lead.Purchased Product 4}} {{Lead.Purchased Product 5}}"

                Then you can use that class to manage visibility of your blocks, as in http://jsfiddle.net/sanford/oe3x2nco/
                • Re: Extreme Dynamic Landing Page
                  Geoffrey Krajeski
                  All great suggestions!  
                  As you can see there are many options here @Katie D
                  • Re: Extreme Dynamic Landing Page
                    Geoffrey Krajeski
                    To add to @Sanford W's response.... 

                    I prefer the single space-delimited option.

                    If a user were to come back and purchase another item at a later time, you could append the current value in your flow such as via:
                    Change Data Value -- > Attribute: {{Lead.Purchased Products List}}  New Value: {{Lead.Purchased Products List}} [New Product Value(s)]

                    Be sure to have a space between the value(s)

                    Because it is a space separated list, the CSS class definitions should work no matter which order they are in.  This allows you the most flexibility and least setup in my opinion.
                    • Re: Extreme Dynamic Landing Page
                      Justin Norris
                      I agree! Sanford's suggestion is a lot more technically savvy and is a lot more flexible to add new products without cluttering things up with new fields.

                      I really like this approach.

                      Super smart!