7

以下のコードを使用して、prestashop で現在のユーザー ID を取得しようとしました。このコードをモジュール ディレクトリ内の別の php ファイルに配置し、モジュール ファイルから呼び出します。

 $id = $this->context->customer->id_customer;

しかし、それは私にとってはうまくいきません.. prestashop 1.5を使用しています..

4

4 に答える 4

12

私は確かに私のテストでもそれを動作させることができませんでした。ただし、試すことができます

$id = (int)$this->context->cookie->id_customer;

これは私のために働きます。ただし、これが最善の方法であるかどうかはまったくわかりません。

于 2013-04-26T20:32:15.623 に答える
7

最初に、ユーザーがログインしているかどうかを確認してから、ID を取得します$this->context->customer->id_customer

if ($this->context->customer->isLogged()) {

      echo $this->context->customer->id_customer;

}
else{
   echo 'Not LoggedIn';
}
于 2013-07-03T11:17:55.397 に答える
4

Prestashop 1.6 では、コントローラーでの最善の方法は、次を使用することです。

        $id_customer = null;
        if ($this->context->customer->isLogged()) {
            // code to execute if i am logued
             $id_customer = $this->context->customer->id;
        }
于 2014-07-23T08:42:13.010 に答える
3

Cookie を使用しないでください。

これを使用するだけです:

    $id=(int)$this->context->customer->id;

(int)を削除できますが、取得するコンテンツのタイプを指定するのが好きです。

BRの

于 2014-01-14T08:03:45.640 に答える