Guest User

Untitled

a guest
Mar 25th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.18 KB | None | 0 0
  1. var data = {
  2. action: 'is_user_logged_in'
  3. };
  4.  
  5. jQuery.post(ajaxurl, data, function(response) {
  6. if(response == 'yes') {
  7. // user is logged in, do your stuff here
  8. } else {
  9. // user is not logged in, show login form here
  10. }
  11. });
  12.  
  13. function ajax_check_user_logged_in() {
  14. echo is_user_logged_in()?'yes':'no';
  15. die();
  16. }
  17. add_action('wp_ajax_is_user_logged_in', 'ajax_check_user_logged_in');
  18. add_action('wp_ajax_nopriv_is_user_logged_in', 'ajax_check_user_logged_in');
  19.  
  20. <body <?php body_class(); ?>>
  21. //your html code
  22. </body>
  23.  
  24. if ($('body').hasClass('logged-in')) {
  25. //execute your jquery code.
  26. }
  27.  
  28. // Simplified... please note, that all names/vars/etc. in my class got unique names.
  29. // ...the same goes for the script handler.
  30. class wpse69814_example
  31. {
  32. public $response;
  33.  
  34. public function __construct()
  35. {
  36. add_action( 'wp_enqueue_scripts', array( $this, 'enqueue' ) );
  37. add_action( 'wp_enqueue_scripts', array( $this, 'localize' ), 20 );
  38. }
  39.  
  40. public function enqueue()
  41. {
  42. wp_enqueue_script(
  43. 'wpse69814_handler',
  44. plugins_url( 'url/to/file.js', __FILE__ ),
  45. array( 'jquery' ),
  46. filemtime( plugins_dir_path( __FILE__ ).'/path/to/file.js' ),
  47. true
  48. );
  49. }
  50.  
  51. public function localize()
  52. {
  53. wp_localize_script( 'wpse69814_handler, 'wpse69814_object', array(
  54. 'ajaxurl' => admin_url( 'admin-ajax.php' ),
  55. 'ajax_nonce' => wp_create_nonce( 'wpse69814_nonce' ),
  56. 'action' => 'wpse69814-handler-action',
  57. 'data' => array(
  58. 'is_user_logged_in' => is_user_logged_in(),
  59. )
  60. )
  61.  
  62. }
  63. }
  64.  
  65. function login_function() {
  66. setcookie('wp_user_logged_in', 1, time() + 31556926, '/');
  67. $_COOKIE['wp_user_logged_in'] = 1;
  68. }
  69. add_action('wp_login', 'login_function');
  70.  
  71. function logout_function() {
  72. unset($_COOKIE['wp_user_logged_in']);
  73. setcookie('wp_user_logged_in', null, -1, '/');
  74. }
  75. add_action('wp_logout', 'logout_function');
  76.  
  77. if (document.cookie.indexOf('wp_user_logged_in') !== -1) {
  78. //do something when user logged in
  79. } else {
  80. //do something when user logged out
  81. }
Add Comment
Please, Sign In to add comment