This lesson is a collection of enhancements you can add to your landing page. These can be used on landing pages in any niche, on any traffic source. In some cases there are multiple ways to accomplish something. I've tried to sum up the easiest to implement examples.

Call Out the Keyword/Target

What this does is place the bidded target or keyword on your landing page. This is great for adding stuff like 'Welcome visitors of sitename.com! We have a special offer for you!'

This can be done a few ways depending on the tracking solution you use.

In CPV Lab, add

<?php echo($_GET["target"]) ?>

to the source of your landing page where you want the target to be shown.
In Prosper 202 put this code on your landing page:

<?
if(isset($_GET['t202kw']))    
{$keyword = $_GET['t202kw'];}
else{$keyword = '';}      
?>

Then wherever you want the keyword to be shown, put:

<? echo $keyword; ?>

Countdown Timers

A countdown timer is great for things like 'This deal will expire in...'.

Add this code where you want the countdown timer

<form name="counter" style="margin: 0px;">
            <span style="font-size: 20px;">Offer Ends In 
            <input value="103.2" name="d2" style="border: 0px none; 
background-color: rgb(255, 255, 255); font-size: 28px; color: blue; 
font-weight: bold; width: 77px; padding-top: 5px;" type="text">
            Seconds
              </span>
          </form>
          <script>
<!--
//
 var milisec=0
 var seconds=120
 document.counter.d2.value='120'
function display(){
 if (milisec<=0){
    milisec=9
    seconds-=1
 }

You can also do a 'sporadic' countdown timer. This would be good for saying 'We currently have 10 items left in stock' then having it drop by a random number every so often. Code from CTR Tard:

<html> <head> <title>Landing Page</title> <style> .timer {     color:red;     border:none;     font-family:verdana;     font-size:16pt;     font-weight:bold;     border-right-color:#FFFFFF } </style> </head>  <script> // Random Countdown Timer Script, by http://ctrtard.com var timer; function startCount() {     timer = setInterval(count,200); // 200 = 200ms delay between counter changes. Lower num = faster, Bigger = slower. } function count() {     var rand_no = Math.ceil(9*Math.random()); // 9 = random decrement amount. Counter will decrease anywhere from 1 - 9.     var el = document.getElementById('counter');     var currentNumber =    parseFloat(el.innerHTML);     var newNumber = currentNumber - rand_no;     if (newNumber > 0) {         el.innerHTML = newNumber;     } else {         el.innerHTML = "Sold Out";  // This message is displayed when the counter reaches zero.     } } </script>  <body onLoad="startCount();">  <span class="timer"><span id="counter">431</span></span>  </body>  </html>

You can also add an even more sporadic effect like this:

<html> <head> <title>Landing Page</title> <style> .timer {     color:red;     border:none;     font-family:verdana;     font-size:16pt;     font-weight:bold;     border-right-color:#FFFFFF } </style> </head>  <script> // Random Countdown Timer Script Sporadic Effect Version, by http://ctrtard.com var timer; function startCount() {     timer = setInterval(count, 100); // 200 = 200ms delay between counter changes. Lower num = faster, Bigger = slower. } function count() {     var do_wait = Math.ceil(4*Math.random()); // for "sporadic effect", we generate a random number between 1 and 4     if (do_wait == 4) { // now, we only decrement the counter if the random number = 4 --- otherwise we don't do anything.         var rand_no = Math.ceil(9*Math.random()); // 9 = random decrement amount. Counter will decrease anywhere from 1 - 9.         var el = document.getElementById('counter');         var currentNumber =    parseFloat(el.innerHTML);         var newNumber = currentNumber - rand_no;         if (newNumber > 0) {             el.innerHTML = newNumber;         } else {             el.innerHTML = "Sold Out";  // This message is displayed when the counter reaches zero.         }     } } </script>     <body onLoad="startCount();">  <span class="timer"><span id="counter">431</span></span>  </body>  </html>

Add Audio

Audio is a great way to get the users attention. Niftyplayer is a simple way to add audio to your landing pages.

Download Niftyplayer here and upload it with your landing page.

http://www.varal.org/media/niftyplayer/

Add this code before the </head> tag in your landing page:

<script type="text/javascript" language="javascript" src="/niftyplayer.js"></script>

Then, add this at the bottom of your page (usually where you place the player)

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="165" height="38" id="niftyPlayer1" align=""> <param name=movie value="niftyplayer.swf?file=youraudio.mp3&as=1"> <param name=quality value=high> <param name=bgcolor value=#FFFFFF> <embed src="/niftyplayer.swf?file=youraudio.mp3&as=1" quality=high bgcolor=#FFFFFF width="165" height="38" name="niftyPlayer1" align="" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"> </embed> </object>

Change the file name (in red) to the name of your audio file. If you want to make the player invisible, you can set the width and height to '0'. 

Call out city/state

What this does is put the visitors city/state on your landing page. With this, you can say stuff like 'get auto insurance quotes in cityname'.
Place this code before the </head> tag

*Please note* You must install the Maxmind DB on your own server for this to work. Read how to do that here.

<script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>

Place this where you want the location to show on your LP

<script language="JavaScript">document.write(geoip_city())</script>

The above will show the city. You can also show other elements by using the code below:
Country Code: US 

<script language="JavaScript">document.write(geoip_country _code());</script>

Country Name: United States 

<script language="JavaScript">document.write(geoip_country _name());</script>

City: Torrance

<script language="JavaScript">document.write(geoip_city())  ;</script>

Region: CA

<script language="JavaScript">document.write(geoip_region( ));</script>

Region Name: California

<script language="JavaScript">document.write(geoip_region_ name());</script>

Latitude: 33.8403 

<script language="JavaScript">document.write(geoip_latitude());</script>

Longitude: -118.3539 

<script language="JavaScript">document.write(geoip_longitude());</script>

Postal Code: 90503

<script language="JavaScript">document.write(geoip_postal_code());</script>

You can use more than one at the same time like this:

<script language="JavaScript">document.write(geoip_city());</script>, <script language="JavaScript">document.write(geoip_region());</script>

Dashed Borders

This is a much sought after effect, especially suited to making something look like a 'coupon'. To do this, add this code:

<div style="width:565px; height:450px; border-width: 6px; border-style: dashed;  border-color: red; font-family: Arial, Helvetica, sans-serif;  font-size: 24px; font-weight: bold; text-align: center; color:  #00F;"><p>TEXT HERE</p></div>

Into Pop/Alert Message


This is very effective, but most traffic sources don't allow it. Use at your own risk. What this does is open a small dialog box in the middle of your LP when it loads.

Add this to the <head> section of your LP

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/ui-lightness/jquery-ui.css" type="text/css" media="all" />
<script type="text/javascript">
    $(document).ready( function () {           
           //Example 1. This will trigger the dialog on page load
           $('#myDialog').dialog();
           //applying jQuery CSS to buttons
           $('button').button();
    });
 </script>

Now in the <body> section of your HTML add this

<div id="myDialog" title="Sample Dialog" style="display:none; padding:20px;">
  <p>Check out our special offers!</p>
 </div>

Flashing Borders

Flashing borders work just like they sound

Add this to the <head> section of your LP

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script>
  <style type="text/css">
   .ImageBorder
   {
       border-style: solid;
       border-width: 4px;
       border-color: Red;       
       padding: 5px;
   } </style>
 <script type="text/javascript">
    $(document).ready( function () {
      // Self-executing recursive animation
      (function pulse(){ 
         $('.ImageBorder').delay(500).animate({ 'border-color': 'Transparent'}, 100).delay(500).animate({ 'border-color': 'Red'}, 100, pulse);
      })(); 
    });
 </script>

You can change the values in red above.
- The 'border-style' can be changed to 'dotted' or 'dashed' for example to created a 'dashed' border.
- The border width is how thick the border is.
- The padding is how far away from the image the border will be

The numbers towards the end of the code can be changed to make the animation faster (the delay value).

Next, you need to add an image to put a border around like so (this goes in your HTML)

<img class="ImageBorder" src="/linktoyourimage.jpg"  />

That should cover most of the requested LP enhancements. I'll add more as I think of them