0

我希望将我的 facebook 粉丝数量添加到我的 prestashop 模板中。作为一个 smarty 变量,所以它每次都会更新。

我在 php 中找到了一些代码:

<?php
require_once('facebook.php');
$facebook = new Facebook(array(
'appId'  => 'your_app_id',
'secret' => 'your_app_secret',
'cookie' => true,
));
$result = $facebook->api(array(
'method' => 'fql.query',
'query' => 'select fan_count from page where page_id = your_page_id;'
));
$fb_fans = $result[0]['fan_count'];
?>

或更简单:

<?php
        $page_id = "XXXXXXXXXXXX";
        $xml = @simplexml_load_file("http://api.facebook.com/restserver.php?method=facebook.fql.query&query=SELECT%20fan_count%20FROM%20page%20WHERE%20page_id=".$page_id."") or die ("a lot");
        $fans = $xml->page->fan_count;
        echo $fans;
?>

将 PHP 添加到 smarty 模板 .tpl 的最佳方法是什么?

谢谢你的帮助

4

1 回答 1

0

所以,来自 Prestashop 论坛的 Vekia 帮助我,这是我问题的最佳答案:

(注意:将其添加到footer.tpl时有效)

转到文件:

类/控制器/FrontController.php

在类的某处添加此函数:

public static function fbcount($idpage){
        $ch = curl_init("http://graph.facebook.com/$idpage");
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
        $raw = curl_exec($ch);
        curl_close($ch);

        $data = json_decode($raw);
        return $data->likes;
}

然后在 footer.tpl 文件中你可以使用这个:

{FrontController::fbcount('399888213399907')}

其中 399888213399907 是您页面的 id

请享用!

于 2013-06-04T14:29:01.443 回答