1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

xF-Wordpress Bridge

Тема в разделе "Интеграция XenForo с различными движками", создана пользователем dobrodukh, 11.08.2013.

Загрузка
  1. dobrodukh

    dobrodukh Местный

    Регистрация:
    29.04.13
    Сообщения:
    55
    Симпатии:
    5
    Версия XF:
    1.1.4
    Прикупил тут по случаю. Плагин не плох, хотя и не идеален. Всех пользователей вордпресс начинает считать как пользователей форума. То есть, если попробовать зарегистрироваться в вордпресс, то он перекинет регистрацию на форум.
    То же самое, если попробовать войти в базу данных в админке вордпресс, то перекинет в список пользователей форума.
    Думаю, могут возникнуть проблемы с плагинами использующими базы данных пользователей вордпресс. Например, в BaddyPress.
    Ну а так, вроде работает отлично.
    Официальная страничка плагина и поддержки.
     
  2. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    dobrodukh, можно вас попросить скинуть ссылку на готовый проект? Хочу у себя реализовать функционал плагина.

    Как там обстоят дела с администраторами ВП и форума? Они по идее должны быть раздельными.
    У общих пользователей аватар берется из загруженных в профиле форума? Если на форуме пользователь забанен, блокируется ли он на ВП?
     
  3. dobrodukh

    dobrodukh Местный

    Регистрация:
    29.04.13
    Сообщения:
    55
    Симпатии:
    5
    Версия XF:
    1.1.4
    Нет пока еще проекта. Когда будет точно не известно. Потестил немного на своем тестовом сайте с XF. Как я понял, все админы вп автоматом становятся и админами форума и наоборот. Плагин сначала объединяет пользователей с вп, а потом как бы считает, что есть одна только база пользователей - у форума. Аватар берется с форума.
     
  4. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    Спасибо за ответ, конечно было бы хорошо его протестировать более глубоко. Написал предложение в личку.
     
  5. ANGEL OF FIRE

    ANGEL OF FIRE Модератор

    Регистрация:
    06.11.11
    Сообщения:
    395
    Симпатии:
    180
    Версия XF:
    1.1.3
    Есть одна проблема. Попробуйте на вордпрессе включить
    define('WP_DEBUG', false);

    Автор плагина использует файл который в новом вордпрессе уже считается устаревшим.
     
  6. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    ANGEL OF FIRE, вы связывали вордпресс с форумом 1.1.5 или с 1.2.0?
    Что-то у меня даже близко не получилось связать, хотя настройки указал верные. Не показывается сопоставление пользователей. Вылетает ВП сразу после выхода из админского аккаунта. В ксене пользователи из вп не создаются.
     
  7. ANGEL OF FIRE

    ANGEL OF FIRE Модератор

    Регистрация:
    06.11.11
    Сообщения:
    395
    Симпатии:
    180
    Версия XF:
    1.1.3
    1.2.0

    Вы должны зайти в вордпресс настройках Xen

    И выставить абсолютный путь до форума, не тот что вы берёте в урл браузера.
     
  8. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    Так в том то и дело, что указал именно серверный путь без последнего слеша: /home/eurouniver/data/www/eurouniver.info

    Вообще там два поля: адрес форума и серверный путь до файлов форума. Больше ничего у меня не показалось.
     
    Последнее редактирование: 15.08.2013
  9. ANGEL OF FIRE

    ANGEL OF FIRE Модератор

    Регистрация:
    06.11.11
    Сообщения:
    395
    Симпатии:
    180
    Версия XF:
    1.1.3
    Сайт и форум находятся на одном домейне?

    Так как смотрите сами, у вас не до форума как вы показываете а до прямой директории.

    Обычно так

    /home/eurouniver/data/www/eurouniver.info/forum
     
  10. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    Я поставил форум и ВП на разные домены. Значит форум должен быть на субдомене и субдомен должен быть под тем же серверным пользователем?
     
  11. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    Поставил форум на субдомен (папка "форум" - domain.com/forum) - бридж заработал. Вывел таблицу сопоставлений. Хочу ещё постетировать вариант, когда форум будет на домене третьего уровня - forum.domain.com. По логике серверный пользователь для domain.com и forum.domain.com должен быть один.
     
  12. Гептилл

    Гептилл Активный пользователь

    Регистрация:
    03.03.13
    Сообщения:
    91
    Симпатии:
    41
    Версия XF:
    1.3.0
    Простите, но domain.com/forum - это не есть субдомен. forum.domain.com - вот это субдомен.
     
  13. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    Не суть терминология. Весь вопрос в том: "Заработает ли?"
     
  14. Гептилл

    Гептилл Активный пользователь

    Регистрация:
    03.03.13
    Сообщения:
    91
    Симпатии:
    41
    Версия XF:
    1.3.0
    Терминология как раз важна. Ибо первый вариант - это нахождение на одном домене. Второй - практически в разных ибо работает как самостоятельный корень.
    А к вопросу о "заработает" - почему нет? Просмотрите внимательно настройку сервера. Включено ли получение данных от сторонних серверов/баз данных?
     
  15. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    Замечания по админу. Сразу после активации бриджа в админку ВП можно зайти только через админа ксена. Админ ксена может спокойно публиковать запись в ВП. В списке пользователей ксена админа из ВП нет( Пришлось создать вручную.

    ВП я обновляю через XML-RPC - клиент Windows Live Writer. Под админом ксена я вообще не мог завести учетную запись - нет такого пользователя. Под админом ВП аккаунт создаётся нормально, всё посты публикуются без проблем.

    Комментируется шикарно!

    В общем под админом ксена в админке ВП можно делать практически всё, кроме деактивации бриджа. После последнего действия идет сразу вылет из админку на стандартную форму авторизации ВП. Зайти можно уже только под админом ВП.

    Интеграция очень достойная, если не считать скудной инструкции. Своих 20 долларов стоит!

    Теперь вопрос знатокам) В моём шаблоне ВП есть форма: логин/пароль/кнопка ввода.

    loginwp.jpg
    Без бриджа она работает шикарно - вход/выход пользователя с любой страницы. С включенным бриджем данные пользователя форма не принимает. Идет редирект на стандартную форму ксена domain.com/forum/login/. Соответственно после авторизации пользователь оказывается на главной ксена, а не странице ВП, где он решил зайти.

    Как сделать так, что бы пароль/логин передавался формой из ВП в ксен, а пользователь оставался там же, где захотелось ему войти в систему? Готов оплатить работу.

    --- добавлено : Aug 15, 2013 9:04 AM ---
    Вот мне в идеале именно второй и нужен. А как проверить получение данных от сторонних серверов?
    --- добавлено : Aug 15, 2013 9:23 AM ---
    Выловил баг, который описывали с другими бриджами. Если у пользователя ксена имя кириллицей, то ВП его просто не авторизирует. Даже через ввод эл.почты и пароля. Решается плагином Allow Cyrillic Usernames
     
    Последнее редактирование модератором: 23.08.2013
  16. Гептилл

    Гептилл Активный пользователь

    Регистрация:
    03.03.13
    Сообщения:
    91
    Симпатии:
    41
    Версия XF:
    1.3.0
    Эээ... какая версия WP? Ибо на 3.6 проблем с кириллицей нет.
     
  17. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    3.5.1. Сейчас попробую обновить до 3.6. По форме может быть есть идеи, предложения?
    --- добавлено : 15 авг 2013 в 15:48 ---
    В версии 3.6 всё равно требует плагин для поддержки кирилличных имен юзеров.
     
    Последнее редактирование модератором: 23.08.2013
  18. ANGEL OF FIRE

    ANGEL OF FIRE Модератор

    Регистрация:
    06.11.11
    Сообщения:
    395
    Симпатии:
    180
    Версия XF:
    1.1.3
    Это проблема вордпресс, не плагина. Это уже несколько раз обсуждалось и тут на форуме, и на форуме вордпресс.

    И эта проблема есть на любом вордпресс.
     
  19. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    Немного покопался и нашел замечательный сайт LPH про связку ксена и ВП: http://community.tuxreportsnetwork.com/resources/
    Там было готовое решение по моей форме авторизации. Кому нужно - настраивайте под себя и используйте. Вставляется в header.php вашей темы на ВП:

    Код:
    <?php
                    if ( is_user_logged_in() ) { // Если юзер зарега - скрываем форму и выводим аву и ссылки
                        $user = wp_get_current_user();
                        print get_avatar( $user->user_email, '35' ); // «35» — размер авы в пикселях ?>
                        <ul>
                            <li><strong><?php print $user->display_name; ?></strong></li>
                            <li><a href="ваш_урл">профиль</a></li>
                            <li><a href="<?php print wp_logout_url( site_url( $_SERVER['REQUEST_URI'] ) ); ?>">выйти</a></li>
                        </ul>
                    <?php
                    } else {
    
        echo '<a href="http://domain.com/forum/login/login">Регистрация</a>';
    ?>
    <div id="xenlogin">
        <form action="http://domain.com/forum/login/login" method="post" id="pageLogin">
      
            <div class="ctrlWrapper">
                <dl class="ctrlUnit">
                    <label for="LoginControl">Your name or email address:</label>
                    <input type="text" name="login" id="LoginControl" class="textCtrl" tabindex="101" />
      
                    <label for="ctrl_password">Password:</label></dt>
                    <input type="password" name="password" id="ctrl_password" class="textCtrl" tabindex="102" />
      
                    <input type="submit" class="button primary" value="log_in" checked="checked" tabindex="104" data-loginPhrase="log_in" data-signupPhrase="sign_up" />
                    <label for="ctrl_remember" class="rememberPassword">
                    <input type="checkbox" name="remember" value="0" id="ctrl_remember" tabindex="103" /> stay_logged_in</label>
            </div>
      
            <input type="hidden" name="cookie_check" value="1" />
            <input type="hidden" name="redirect" value="<?php header("Location:".$_SERVER['HTTP_REFERER']);?>" />
            <input type="hidden" name="_xfToken" value=" ' . $XF->visitor->get( 'visitor.csrf_token_page' ) . ' " />
    
        </form>
    </div>
      <? }  ?>
    Конечно, обязательно должен стоять бридж)
     
    fourgotten и Mirovinger нравится это.
  20. answersolid

    answersolid Местный

    Регистрация:
    15.06.12
    Сообщения:
    31
    Симпатии:
    8
    В процессе тестирования бриджа выяснилась ещё одна замечательная вещь. Если на ВП разрешены комментарии без авторизации, то бридж их не закрывает.
     

Поделиться этой страницей