Gravatar图片仍未加载Open Cart Admin

时间:2014-02-10 13:55:49

标签: php opencart

您好我正在尝试让我的gravatar api使用我的开放式购物车管理员/ controller / common / header.php以及我的admin / view / template / common / header.tpl

还没有工作在之前给了它一些人给了我建议,但现在没有工作?所以想到以前用另一种方式给它,但没有。

admin / controller / header。 php

这只是修剪版本

<?php 
class ControllerCommonHeader extends Controller {
protected function index($get_gravatar) {

}

function get_gravatar( $email, $s = 80, $d = 'mm', $r = 'g', $img = false, $atts = array() ) {
$url = 'http://www.gravatar.com/avatar/';
$url .= md5( strtolower( trim( $email ) ) );
$url .= "?s=$s&d=$d&r=$r";
if ( $img ) {
$url = '<img src="' . $url . '"';
foreach ( $atts as $key => $val )
$url .= ' ' . $key . '="' . $val . '"';
$url .= ' />';
}
return $url;
}

admin / view / template / common / header.tpl

<?php 
$email = $user_info['email']; // Not Working "Need it to pick up who ever logins"
$email = "your@rmail.com"; // Works
$default = "http://www.somewhere.com/homestar.jpg";
$size = 150;
?>
<li>
<a href="" class="text-center">
<img src="<?php echo $grav_url = "http://www.gravatar.com/avatar/" . md5( strtolower( trim( $email ) ) ) . "?d=" . urlencode( $default ) . "&s=" . $size;; ?>" alt="" />
</a>
</li>

2 个答案:

答案 0 :(得分:0)

您是否尝试过为您的网址添加扩展程序=&gt; www.gravatar.com/avatar/far512q3tgfqwe*.jpg*例如,快速谷歌搜索,我想出了这个网址,请查看更多信息: http://en.gravatar.com/site/implement/images/

在header.php中尝试这段代码,以获取当前登录用户的电子邮件:

    $this->load->model('user/user');
    $email_data = $this->model_user_user->getUser($this->user->getId());
    $email = $email_data['email'];

如果您想为所有用户收到电子邮件,则需要对其进行不同的处理。

答案 1 :(得分:0)

在header.tpl中获取gravatar图像的更改

更新system/library/user.php,如下所示:

之后:$this->username = $user_query->row['username'];

添加:$this->email = $user_query->row['email'];


之前:public function getUserName() {

添加:

  public function getUserEmail() {
    return $this->email;
  }

更新admin/controller/common/header.php,如下所示:

之后:$this->data['logged'] = sprintf($this->language->get('text_logged'), $this->user->getUserName());

添加:$this->data['email'] = $this->user->getUserEmail();


更新admin/view/template/common/header.tpl,如下所示:

<div class="img-circle"> <img src="http://www.gravatar.com/avatar/<?php echo md5(strtolower(trim($email))); ?>"> </div>

请让我知道这些变化的结果。

注意:在opencart中,您需要为控制器文件中的变量分配值:$this->data['variable_name'],并使用模板文件,例如:$variable_name