<ul><li><strong>woo_ad_200_adsense</strong> - </li><li><strong>woo_ad_200_image</strong> - </li><li><strong>woo_ad_200_url</strong> - </li><li><strong>woo_ad_content_adsense</strong> - </li><li><strong>woo_ad_content_disable</strong> - false</li><li><strong>woo_ad_content_image</strong> - http://www.woothemes.com/ads/woothemes-468x60-2.gif</li><li><strong>woo_ad_content_url</strong> - http://www.woothemes.com</li><li><strong>woo_ad_top_adsense</strong> - </li><li><strong>woo_ad_top_disable</strong> - true</li><li><strong>woo_ad_top_image</strong> - http://www.woothemes.com/ads/woothemes-468x60-2.gif</li><li><strong>woo_ad_top_url</strong> - http://www.woothemes.com</li><li><strong>woo_alt_stylesheet</strong> - dark.css</li><li><strong>woo_auto_img</strong> - false</li><li><strong>woo_cat_menu</strong> - true</li><li><strong>woo_custom_css</strong> - </li><li><strong>woo_custom_favicon</strong> - </li><li><strong>woo_embed</strong> - false</li><li><strong>woo_feedburner_id</strong> - </li><li><strong>woo_feedburner_url</strong> - </li><li><strong>woo_get_image_height</strong> - 142</li><li><strong>woo_get_image_width</strong> - 190</li><li><strong>woo_google_analytics</strong> - <script type=\"text/javascript\">

  var _gaq = _gaq || [];
  _gaq.push([\'_setAccount\', \'UA-17858108-1\']);
  _gaq.push([\'_trackPageview\']);

  (function() {
    var ga = document.createElement(\'script\'); ga.type = \'text/javascript\'; ga.async = true;
    ga.src = (\'https:\' == document.location.protocol ? \'https://ssl\' : \'http://www\') + \'.google-analytics.com/ga.js\';
    var s = document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script></li><li><strong>woo_home</strong> - false</li><li><strong>woo_home_content</strong> - true</li><li><strong>woo_home_featured</strong> - true</li><li><strong>woo_logo</strong> - http://johnleonardfitness.com/wp-content/woo_uploads/3-header.png</li><li><strong>woo_manual</strong> - http://www.woothemes.com/theme-documentation/wootube/</li><li><strong>woo_nav_exclude</strong> - </li><li><strong>woo_resize</strong> - true</li><li><strong>woo_shortname</strong> - woo</li><li><strong>woo_themename</strong> - WooTube</li><li><strong>woo_twitter</strong> - </li><li><strong>woo_uploads</strong> - http://johnleonardfitness.com/wp-content/woo_uploads/3-header.png</li><li><strong>woo_video_browser_init</strong> - 10</li></ul>