2011-08-11 9 views
1

Google Analyticsコードをそのデータベースに移動したいと考えています。リテラルのSmartyとjavascript

は、もともと私は手動でテンプレートのこの内側行うだろう:

<script type="text/javascript"><!-- 
{literal} 
    var _gaq = _gaq || []; 
    _gaq.push(['_setAccount', 'UA-19807844-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); 
    })(); 
{/literal} 
--></script> 

をどのように私は、ユーザーが自分の分析データベースに入力することができますよう、以下のような何かをしますか

<script type="text/javascript"><!-- 
{literal} 
{$portal.google_analytics} 
{/literal} 
--></script> 
+1

*リテラルを出力します* '{$ portal.google_analytics} ' 'literal'タグを削除して試してみてください。 – Piskvor

答えて

2
<script type="text/javascript"><!-- 

{$portal.google_analytics} 

--></script> 

か、自分のアカウントを入力したい場合:

<script type="text/javascript"><!-- 

    var _gaq = _gaq || []; 
    _gaq.push(['_setAccount', {$portal.google_analytics_account}]); 
    _gaq.push(['_trackPageview']); 

{literal} 
    (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); 
    })(); 
{/literal} 
--></script> 

又は

<script type="text/javascript"><!-- 
{literal} 
    var _gaq = _gaq || []; 
    _gaq.push(['_setAccount', {/literal}{$portal.google_analytics_account}{literal}]); 
    _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); 
    })(); 
{/literal} 
--></script> 
1
<?php 
    // assuming your Smarty object is $smarty 
    $smarty->assign('ga_id','UA-xxxxxx-x'); 
    $smarty->display('ga.tpl'); 
?> 

ga.tpl(イン間ga_idliteralブロックがあることに注意):

<script type="text/javascript"><!-- 
{literal} 
    var _gaq = _gaq || []; 
    _gaq.push(['_setAccount', '{/literal}{$ga_id}{literal}']); 
    _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); 
    })(); 
{/literal} 
--></script>