Intereting Posts
Хранение контента в пользовательской таксономии Лучший способ загрузить содержимое страницы в всплывающем окне Fancybox? wp_list_comments отображает неправильно вложенные <ul> Можно ли переписать URL-адрес страницы, не устанавливая постоянные ссылки на «Имя по почте»? Крюк на публикацию сообщения не срабатывает правильно (или так я думаю) Отображение разбиения на страницы не отображается в пользовательском терминологическом архиве Пользовательские контуры типа сообщения и Disqus Как отфильтровать запрос по дате в коротком коде? Подготовка плагинов для многоязычной поддержки Страница администратора Widget и Javascript enqueuing функция выпадающих состояний us и echo в файлах шаблонов тем Миниатюры для следующих / предыдущих ссылок в пользовательском типе сообщений single.php Усиление моей игры с помощью WordPress хостинга Pull 'Популярные сообщения' в течение определенного периода времени Включить заголовок сообщения в ссылку readmore?

Членство в Woocommerce синхронизировано по нескольким мультисайтам

У меня установлен WordPress Multisite ( отдельный домен + вложенные папки – каждый экземпляр для другой страны – так много языков, но на данный момент единая валюта – евро)

Пользователи автоматически добавляются ко всем экземплярам (используя «Присоединиться к моему сайту»), поэтому вы можете использовать свой логин во всех экземплярах.

Теперь проблема заключается в следующем:

Мы хотим начать премиальное членство на основе подписки (которое будет тогда активно скидки).

Когда пользователь покупает подписку на одном сайте, ему предоставляется членский план. Теперь вопрос в том, как я могу автоматически активировать его во всех экземплярах?

Я думал, чтобы запустить какой-то код, когда он купил этот подарок для одного и того же пользователя во всех других случаях.

Но, может быть, для этого есть плагин? Или что-то подобное, что я мог бы использовать в качестве основы для построения?

Или какой-нибудь API-документ, который может быть полезен? Я немного не знаю, как начать здесь.

Solutions Collecting From Web of "Членство в Woocommerce синхронизировано по нескольким мультисайтам"

Я частично исправил эту проблему, написав плагин, в котором я создаю короткий код, который я могу использовать для прогаммически после членства, если пользователь вошел в систему.

function wp_add_missing_membership ( $user_id, $plan_id ) { if ( ! function_exists( 'wc_memberships' ) ) { return; } $args = array( // Enter the ID (post ID) of the plan to grant at registration 'plan_id' => $plan_id, 'user_id' => $user_id, ); wc_memberships_create_user_membership( $args ); // Get the new membership $user_membership = wc_memberships_get_user_membership( $user_id, $args['plan_id'] ); // Add a note so we know how this was registered. $user_membership->add_note( 'Membership imported from other site' ); } function has_woocommerce_subscription($the_user_id, $the_product_id, $the_status) { $current_user = wp_get_current_user(); if (empty($the_user_id)) { $the_user_id = $current_user->ID; } if (WC_Subscriptions_Manager::user_has_subscription( $the_user_id, $the_product_id, $the_status)) { return true; } } function bb_fixmembership ( $atts){ $a = shortcode_atts( array('plan' => '0'), $atts ); $what_s_the_plan = $a['plan']; if ( is_user_logged_in() ) { $user_id = get_current_user_id(); if (wc_memberships_is_user_active_member($user_id, 'student')) { // do nothing - all is good } else { wp_add_missing_membership($user_id, $what_s_the_plan); } } } add_shortcode( 'fixmembership', 'bb_fixmembership' ); 

Теперь мне нужно синхронизировать это с подписками через сайты, которые я могу сделать, используя перехватчики и метаданные пользователя.

Я просто отправляю ответ, так как я не вижу ответа на большинство сообщений :), поэтому я подумал, что это может помочь кому-то еще …

Будет опубликован, когда я исправлю это полностью.