Управление сеансами Wordpress

Я поднимаю сайт с помощью Wordpress, и я хотел бы осуществить контрейлерные перевозки на его сессиях. Но я не нахожу плагинов или даже документации. Какие-либо предложения или ссылки, прежде чем я начну взламывать его?

Примечание: Я спрашиваю о том, если и как WP использует стандартные сессии PHP сама, не, как добавить сессии PHP, например, использующий session_start (). По-видимому, любой WP состояния поддерживает, выполняется другими средствами. Таким образом, если я хочу использовать сессии PHP, я должен добавить и поддержать его сам полностью, с помощью методов как те, которые в потоке.

Спасибо все!

22
задан dkretz 14 August 2012 в 20:52
поделиться

3 ответа

WordPress, похоже, не вызывает session_start () , потому что он хочет быть без гражданства , и если register_globals определен, он автоматически уничтожает ваш $ _ SESSION

15
ответ дан 29 November 2019 в 04:29
поделиться

Wordpress, похоже, не использует никаких сеансов.

Лучший способ решить эту проблему - использовать предоставляемые им хуки действий.

2
ответ дан 29 November 2019 в 04:29
поделиться

For what I need to do, the best answer involves:

  1. To allow the cookie for wordpress to persist across subdomains, install the Root Cookie plugin.
  2. sub1.domain.com has wordpress; sub2.domain.com is another site. From the other site (sub2), I read the cookies to identify who the user is and if the user is logged in.

My cookies are as follows:

[wordpress_909bb230b32f5f0473202684d863b2e0] => mshaffer|1255298821|d0249fced9c323835c5bf7e84ad3ffea
[wordpress_logged_in_909bb230b32f5f0473202684d863b2e0] => mshaffer|1255298821|56e9c19541ecb596a1fa0995da935700

Using PHP, I can loop over the cookies, parse the key=>value pairs. These cookies let me know that [mshaffer] has a cookie stored on wordpress, and also is authenticated as logged_in. The expiry of the cookie is 1255298821.

In sub2, I can query the database of wordpress and grab the user info:

SELECT * FROM `wp_users` WHERE user_login = 'mshaffer' ... grab user_id, user_email from this query

SELECT * FROM `wp_usermeta` WHERE user_id = '$user_id' ... grab lots of other data from wp

With this info, I can add to my sub2 session variable / cookie and do what I want with the data. I can identify if I am logged in, and my username ... which let's me grab lots of different data. I can now use WordPress authentication in my sub2.domain.com and redirect accordingly.

monte

{x:

5
ответ дан 29 November 2019 в 04:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: