2012-01-04 9 views
5

マゼンタのビュー(ヒット)の数をカウントするにはどうすればよいですか?マゼンタで利用可能なメソッドがありますか?マゼンタのヒットカウンタ

コメントの編集:

私はサイト全体の合計ビューが必要です。私はオンラインのユーザーがこのコードから数えました:

$visitor_count = Mage::getModel('log/visitor_online') 
        ->prepare() 
        ->getCollection() 
        ->count(); 
if(!empty($visitor_count) && $visitor_count > 0) { 
    $cnt = $visitor_count; 
    echo 'Visitors online :'.$cnt; 
} 
+0

サイト全体の合計ビュー、または1ページのビュー?何時?自分自身で試したことがありますか? – Bojangles

+5

これはあなたが求めているものではないかもしれませんが、Google Analyticsを使用する方が良いとは思わないでしょうか? – Max

答えて

0

あなたがそうlog_visitor を使用することができ、メインテーブルには、ここのコードです:

$totalUser = Mage::getSingleton('core/resource')->getConnection('core_write'); 
$queryTotal=$totalUser->query("SELECT * FROM log_visitor ORDER BY visitor_id DESC LIMIT 1 "); 
// the result will give you maximum visitor_id 
0

あなたが入れたコードに問題がそれはあなたがおそらく望んでいないテーブルスキャンになるということです。さらに、SQLを記述したくない場合もあります。だから、ブロッククラスでこれを試してみたいかもしれません。

$model = Mage::getModel('log/visitor_online'); 
$select = $model->getCollection()->getSelect(); 
/* @var $select Varien_Db_Select */ 
$select->reset(Varien_Db_Select::COLUMNS); 
$select->columns(
    new Zend_Db_Expr(
     sprintf('count(%s)', $model->getIdFieldName()) 
    ) 
); 
echo $select->query()->fetchColumn(0); 
0

使用このコードview.phtml

<?php 
if (!is_dir('clickcounter')) { 
         @mkdir('clickcounter', 0777,true); 
        }  
        $filename=$_product->getSku().'.txt';    
        $dir='clickcounter' ;    

        if(!file_exists($dir.'/'.$filename)){ 
         file_put_contents($dir.'/'.$filename, '0'); 
        } 
        if(isset($_GET['click']) == 'yes'){ 
         file_put_contents($dir.'/'.$filename, ((int) file_get_contents($dir.'/'.$filename)) + 1); 
header('Location: ' . $_SERVER['SCRIPT_NAME']); 

?> 

/////アヤックス更新///

にこのコードを配置し、製品ページ上のボタンのような製品ごとの場所のようにカウントします

  function myAjax() {     
       jQuery.ajax({ 
       type: "POST", 
       url: '?click=yes', 
       data:{action:'call_this'}, 
       cache: false, 
       success: function (html) { 
        //location.reload(true); 
        jQuery(".favourite-img").replaceWith(jQuery('.favourite-img', jQuery(html))); 
        jQuery('#likeme').addClass('disabled'); 

       } 

      }); 
     } 

    </script> 

//// HTMLコード///

<a id="likeme" class="disabled" href="javascript:void(0)" > 
        <div class="favourite-product"> 
        <div class="favourite-img"><?php echo file_get_contents($dir.'/'.$filename); ?></div> 
        </div> 
        </a> 
関連する問題