クッキーを設定および取得する方法は?


12

数日と数時間後、私はCookieが設定されたらどうするかに関する問題とパッチのみを見つけましたが、最初にCookieを設定する方法について言及していませんでした。

私たちの意図は、(すべてのユーザーロールに対して)ランディングページの(セッション)Cookieを設定し、アウトバウンドリンクのURLで使用するために、ビューを通じて特定のページでそのCookieを取得することです。これは標準プログラミングでは非常に簡単です(私が理解している場合でも)が、Drupalでこれが実際に可能かどうかはかなり疑問に思っています。

回答:


4

ユーザーがログインすると、DrupalはすでにセッションCookieを設定します。関数drupal_session_regenerate()を参照してください。

このセッションIDを目的に使用できますか?そうでない場合は、PHPで行うのと同じ方法で、Cookieに新しい値を作成する必要があります$_COOKIE['my_value'];。このコードをhook_init()カスタムモジュールのに配置しif()、ランディングページをフィルタリングするを追加します。

後で、それを取得してビューで使用します。必要に応じて、ビューフックの一部を使用できます。モジュールViews custom fieldを使用して、そこにPHPコードを埋め込むこともできます。


1
彼が必要とするのがセッション値だけの場合、$_SESSION[]セッションは常にDrupalから初期化されるため、彼も使用できます。
kiamlaluno

2

あなたはクッキーを設定することができます: setcookie('cookiename',$valueOfCookie);

Cookieの値は次の方法で取得できます。 $_COOKIE['cookiename']

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.