Profruit banner

Умен звънец в openHAB

16 декември 2023

Телефонът е винаги с мен и сега, където и да се намирам получавам известие от openHAB, че някой е позвънил и чака пред вратата. А ако ме няма вкъщи става ясно часа и датата на последното позвъняване.

Tasmota Multipress

30 септември 2023

Идеята е Sonoff Touch T1 US 2 в салона, да управлява освен своето осветление и това в кухнята, а още вентилатора.

DIY 12V 1A WiFi Router UPS

22 април 2023

При поредно прекъсване на захранването вкъщи, батерията на нoтбука и двата UPS автоматично превключват на аварийно захранване и едновременно полита съобщение за конфуза

Zigbee2MQTT клониране

21 януари 2023

... как да клонираме съществуваща настройка на Zigbee2MQTT без да се налага последвало интервю на zigbee-устройствата.

LD2410 - бюджетен датчик присъствие в openHAB

11 февруари 2023

Цената на HLK-LD2410 зададе име на поредната тема в моя блог. С негова помощ се постига "народен" датчик присъствие в домашната автоматизация. . ...





Joomla! предлага в арсенала си редица варианти като форуми. Много от тях имат възможността, да се интегрират в скелета на Joomla! и позволяват ползване на идентично на сайта потребителско име и парола.
Иво Апостолов в авторската му статия "Форумите и Джумла!" разглежда особеностите на всеки един вариант.

На практика най-добрия вариант от разгледаните в статията за мен е форум Kunena. Форумът се отличава с добър дизайн и отлично сработване с Joomla 1.5.x. Минусите са изброени от Иво Апостолов, но главен за мен е отсъствието на личните съобщения и това налага инсталация на допълнения като JomSocial или Community Builder.

На днешен ден голям пазарен дял е завоювал форум phpBB3, защото е безплатен и се доближава по функционалност до лидера IP.Board. Интеграцията на phpBB3-форум в Joomla!-сайт е актуален и многострадален въпрос за редица притежатели на подобен сайт. Подобна интеграция става с помощта на "мост". Мостът обезпечава връзка между сайта и форума, и на практика позволява на потребителя да се идентифицира на двете места с едно и също потребителско име и парола - авторизацията на сайта дава автоматически login на форума, и обратно.

Цел на публикацията е практическото изпълнение на задачата. Визуалната интеграция е друга тема и тя няма да се разглежда тук.


Авторът на статията не носи отговорност за каквито и да било вреди, възникнали в следствие от ползване или невъзможност за ползване описани и предоставени тук. Статията се предлага каквато е и тя е без поддръжка. Ползвайте на ваш риск и страх!


Интеграцията на phpBB3-форум в CMS Joomla! става с помощта на компонента RokBridge.
Особеностите на RokBridge са следните.
Форумът трябва да бъде инсталиран в каталог, намиращ се в корена на Joomla!. В последствие ще се появи друг каталог от RokBridge. Това е бъдещият мост. Това определя два реални адреса, водещи към форума:

- чрез каталога на форума;
- чрез каталога на моста.

Двата варианта са функционално идентични. Обръщение чрез каталога на моста и съответна настройка на .htaccess позволява включване на вътрешни SEF връзки от контролния панел на RokBridge. Това обяснява странния на пръв поглед път при инсталация на RokBridge: distribution – за форума и forum – за моста. Той предполага, че вие ще ползвате път "forum" за доспъп до форума.

Препоръчвам нещата да се проведат на локален сървър първоначално, за да се схване идеята на RokBridge. В моя случай аз ползвам за локален сървър - джентълменски комплект - Denwer3. Съвет е да не ползвате в качеството на адрес домейн от първо ниво. По-добре имитирайте реален адрес. В моя случай ползвам наставка .local. Например, ползвайте за адрес не просто http://site/, а http://site.local/ . Не е желателно в името на адреса употреба на долна черта. Възможни са проблеми с "бисквитките".

Ход на действията

Инсталираме CMS Joomla! Към момента на публикация актуална версия е Joomla 1.5.15.
Създаваме каталог в корена на сайта - site.local/forum/** . За собствено удобство и нагледност към приложените снимки, моят е под име forum. В този каталог инсталираме форум phpBB3. Към момента на публикация актуална версия е phpBB 3.0.5.

По подразбиране на компонента RokBridge се преполага, че вие ще инсталирате форума в каталог distribution, но името може да бъде произволно по ваш избор (съвет - създавайте имена само в долния регистър на клавиатурата и избягвайте с главни букви). За RokBridge е без значение каква база се ползва при инсталация на системата и форума. С оглед на бъдещо им развитие аз ползвам самостоятелни бази за всеки един. Разработчикът информира, че базата може да бъде една и този избор е по ваш вкус.

Важно условие е администраторското име, парола и email за форума, да са идентични на тези от системата.

Инсталация на RokBridge

Изтегляме последната версия на RokBridge от станицата на автора. Към момента на публикация актуална версия е com_rokbridge-1.0rc9.

По познат начин в Extension Manager инсталираме архива в Joomla! - Extension > Install/Unistall > Upload Package File > Upload File & Install. Заедно с компонента автоматически се инсталират 2 plugin-а: Authentication – phpBB3 и User – phpBB3. Те ще отговарят за синхронизацията и авторизацията на ползвателя. По подразбиране RokBridge предлага имената на съвответните пътища да са forum и distribution. Особеното тук е да укажете името на каталога на инсталирания форум и името на бъдещия каталог на моста. В противен случай няма да са активни бутони Install. Сътветно преправяте според избраните от вас имена за каталози и съхранявате. Натиснете в таблицата бутон Install срещу пункт phpBB3 Bridge (мост на phpBB3).
Долният бутон Install инсталира phpBB3 Patch. Той служи да премахне грешките в phpBB3-форума при активна опция "Отбележи всички форуми прочетени" и грешките при опция "Разширено търсене". Това важи само за шаблон prosilver на форума. При друг шаблон отворете файл template/search_body.html и променете ред <form method="get" на <form method="post".

RokBridge


Ако всичко е настроено правилно ще протече инсталация и в корена на Joomla! - сайта ще се появи нов каталог. В него ще се копират  нужните за целта файлове. В моя случай той е под име bridge, зададен от параметър Bridge Path. Успешната предходна инсталация обуславя поява на нов пункт phpBB3 Authentication Plugin (plugin за идентификация в phpBB3 - форума). Изпълнете тази инсталация. В каталога на форума и неговия подкаталог ще бъде копиран файл auth_joomla.php.

RokBridge


С това нашата работа с RokBridge се изчерпва. Убедете се, че всичко е активно. Проверете plugin-и: Authentication – phpBB3 и User – phpBB3, дали са включени в секция Plugin Manager.

RokBridge

Настройка на форума

Извършваме авторизация на форуме по стандартен начин и преминаваме в администраторския раздел.
В раздел Authentication Select an authentication method: избираме от падащия селектор пункт Joomla.

RokBridge


Проверяваме настройките на cookies. Параметърът Cookie domain трябва да съвпада с адреса на сайта, в случая site.local. По принцип phpBB3 се държи интелегентно в присъствието на адреса на сайта с своя домейн от трето ниво. Пътят към cookie (Cookie path) трябва да бъде просто / (наклонена черта).

RokBridge


Ако сте с намерение да работите с форума чрез каталога на моста е желателно в раздел Настройки на сървъра (Server settings), да настроите параметър Път до форума (Script path). Укажете пътя до каталога на моста с дописване отпред на наклонена черта. В моя случай това означава /forum да бъде преправено на /bridge, а още превключете Принудителните настройки на сървъра (Force server URL settings) в позиция Yes.

RokBridge


В съответните администраторски раздели съгласувайте еднакви по време сесии. Настойката в Jommla! е зададена в минути, а настройката в phpbb3 - в секунди. Въпрос на математика.

RokBridge

Настройка на .htaccess

Aко решите да ползвате за работа с форума каталога на моста и опцията SEF Enabled следва да модифицирате файл .htaccess на Joomla!-сайта.
За целта се върнете в архива com_rokbridge-1.0rc9 на RokBridge. В него отворете текстови файл htaccess.txt. Копирайте съдържанието му. Сега отворете .htaccess файла на Joomla!-сайта и намерете ред ########## Begin - Joomla! core SEF Section. Преди него поставете предно-копираното. Съхранете изменението. Възможно е да се наложи да преправите името на каталога според избраното от вас. Погледенете конкретно копираната част RewriteRule ^/forum/ forum/index.php [L].
В администраторския панел на сайта преминете по път Components > Roscbridge и превключете стойностите показани на картинката долу. Съхранете измененията.

RokBridge


Последна част е да създадете в менюто връзка към форума. Тя може да сочи RokBridge или да бъде външна.

RokBridge


Настъпи вълнуващият момент. Да получим наградата от труда. Просто проверете работоспособността, като се авторизирате на сайта, а после на форума.

RokBridge

На всички желая успех!





до нови срещи   ^.^

14.11.2009 profruit 

0 Response to "Интеграция на phpBB3 в Joomla!"

Публикуване на коментар

Този блог е реинкарнация на първите ми опити за споделяне в нета. На времето започнах с къси разкази на преживяното. После се обезсмисли и превърнах блога си в системно радио. Пиша единствено неща, които карат душата ми да живее: openHAB, Ubuntu, Споделено и т.н. Това е моето системно радио, разбирате ли? Моята вълна и вие сте на нея сега.

Архив на блога