@ligisayan

Как совместить функционал темы и плагина wordpress?

Всем привет! Есть магазин на wordpress+woocommerce с темой flatastic. Хочу сделать так, чтобы человек залогинивался через всплывающее модальное окно, которое сейчас и используется в исходной теме, а личный кабинет пользователя дополнить возможностью изменять поля и менять аватарку (не через админку wordpress!), что позволяет сделать плагин Theme My Login. Все бы хорошо, но этот плагин подменяет страницу логина и вместо того, чтобы логинится через всплывающее окно - пользователя перебрасывает на страницу плагина - как увязать между собой эти 2 разных функционала?
Функционал логина темы, котором вызывается шорткод [woocommerce_my_account]
/* 	Login
/* --------------------------------------------------------------------- */
	class MAD_FORM_LOGIN {

		public $href;

		function __construct($href) {
			$this->href = $href;
		}

		public function html() {

			$accountPage = get_permalink( get_option('woocommerce_myaccount_page_id') );

			?>
			<div id="modal-login" class="modal-inner-content modal-login">
				<button class="popup-close"></button>
				<div class="custom-scrollbar modal-product">
					<div class="row">
						<?php echo do_shortcode('[woocommerce_my_account]'); ?>
						<footer class="foot-modal-login">
							<h3 class="foot-modal-title"><?php _e('New Customer?', 'flatastic'); ?></h3>
							<a class="foot-modal-button" href="<?php echo esc_url($accountPage) ?>"><?php _e('Register', 'flatastic'); ?></a>
						</footer><!--/ .foot-modal-login-->
					</div><!--/ .row-->
				</div><!--/ .custom-scrollbar-->
			</div><!--/ .modal-inner-content-->
		<?php
		}
	}

		public function mad_ajax_form_login() {
			if (function_exists('check_ajax_referer')) {
				check_ajax_referer($this->action_login, '_madnonce_ajax');
			}

			$form = new MAD_FORM_LOGIN($_POST['href']);
			echo $form->html();
			wp_die('exit');
		}

add_action('wp_ajax_nopriv_' . $this->action_login, array(&$this, 'mad_ajax_form_login'), 30);
  • Вопрос задан
  • 515 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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