Смекни!
smekni.com

Побудова компонент та модулів для системи управління контентом Joomla (стр. 5 из 6)

Плюс до всього, найчастіше параметри плагінів CB змінюються теж у блоках, які створюються цими плагінами під час їхньої установки.

Налаштування блоків:

Title- заголовок блоку, що будевідображатися.

Description -опис блоку.

Publish –опублікованийчині.

Position - позиція блоку (якщо цей блок взагалі повинен виводитися). Приміром, у нас є чотири блоки. Перший повинен виводитися вгорі на всю ширину екрана, два наступних блоки - один ліворуч (50%), другий праворуч (50%), четвертий - унизу, на всю ширину екрану. Тоді для першого блоку вибираємо позицію "Заголовок", для другого - "Ліва сторона", для третього - "Права сторона", для четвертого - "Головна область" або "Нижня область". Якщо потрібно, щоб лівий блок був завширшки 30%, а правий - 70%, тоді необхідно зайти в configuration CB, вибрати закладку "Профіль користувача" і в рядку "2 columns layout: widths:" вказати потрібний параметр для лівого блоку (правий сам розтягнеться).

Displaytypeзовнішнійвиглядблоку.

3. Field Management - розділ керування полями для введення інформації, які будуть показані під час реєстрації, а також в анкеті користувача.

Тут з'являється можливість редагувати як уже існуючі поля для введення інформації (textarea, radio button і т.п.), так і створювати свої, а також вказувати для них параметри їхнього показу користувачам.

Параметри:

Required? - якщо "так", те поле стає обов'язковим для заповнення.

Show on Profile? - якщо "так", те поле буде відображатися в анкеті користувача.

User Read Only? - якщо "так", те поле можна буде заповнити тільки один раз підчасреєстрації.

Show at Registration? - якщо "так", те поле буде видно під час реєстрації.

Published –включаєабовиключаєполе.

4. List Management - управління налаштуваннями списків користувачів.

5. Plugin Management - управління додатковими плагінами для CB. У цьому ж розділівідбувається встановлення цихплагинов.

6. Tools - додаткові інструменти CB. Після всановлення компоненти варто відразу ж виконати Synchronize Users, тоді інформація про вже зареєстрованих користувачів зістикується з нашою компонентою.

Якщо необхідно, щоб в Field Managered додалися поля зі стандартної компоненти "Контакти", то натиснемо на посилання Load Sample Data.

Встановлюємо 2 модулі:

– для реєстрації;

– для відображення зареєстрованих користувачів на сайті;

Перед тим як працювати, необхідно відключити системну компоненту для реєстрації яка вмонтована в саму Joomla, щоб не було ніяких проблем (Сайт – Загальні налаштування, Налаштування користувача – Дозволити реєстрацію користувача - Ні).

А потім налаштовуємо в CommunityBuilder , що реєстрація буде саме через цю компоненту (СВ – Менеджер конфігурації – Реєстрація - Дозволити реєстрацію користувача – Так, незалежно від глобальних налаштувань сайту).

Для того , щоб налаштувати нашу компоненту, спочатку налаштуємо модулі. В меню Менеджер модулів – CBLogin (налаштовуємо модуль, для реєстрації).

На вкладці Параметри можна задавати:

- що буде писати під заголовком,

- що писатиме при вході, при виході,

- необхідно задати посилання, куди перенаправлятиме зареєстрованого користувача (якщо необхідно, щоб користувача після реєстрації скеровувало в його профіль, то вводимо:

- index.php?option=com_comprofiler&task=userProfile),

- посилання, куди направлятиме користувача після виходу

- чи показувати посилання на : «Забув пароль»,

- яка може бути довжина логіну і пароля

- що показуватиме в якості привітання при вході

- чи показувати аватар біля привітання (і вибрати йому позицію),

- текст для посилання під привітання ( пишемо Ваш профіль тут)

- посилання для редагування профілю користувача ( пишемо Редагувати Ваш профіль),

- налаштування інтеграції плагінів (Так)

Включаємо цей модуль і ось він в нас (Рис.18) :

Рис.18

Необхідно відредагувати, тому в вихідному коді шукаємо форму реєстрації і її ідентифікатор (id=”mod_loginform”). Заходимо в Z:/home/localhost/kursova/modules/mod_cblogin/mod_cblogin.php. Зайшовши в файл, який відповідає за формування даного модуля, шукаємо необхідний ідентифікатор і дописуємо <divstyle="border:1pxsolidred"> - поставимо рамочку (Рис.19):

Рис.19


Як бачимо , нам необхідно додати лівий відступ приблизно на 20 пікселів (замість рамочки пишемо <divstyle="margin-left:20px;"> і зберігаємо) (Рис.20):

.

Рис.20

Пробуємо зайти (Рис.21):

Рис.21

Зайшовши, відредагуємо наш профіль (Рис.22):


Рис.22

Нам необхідно додати нові блоки.

Так як наш сайт спеціалізується на комп’ютерах, то можна додати блок «ПК користувача». Заходимо на вкладку Управління блоками – Новий блок. Задаємо заголовок нашого блоку, якщо необхідно, то описуємо цей блок в графі Коментар і зберігаємо. Для того, щоб наш блок виводився необхідно додати ще поля, які користувач заповнюватиме. Заходимо на вкладку Управління полями – Нове поле, де потрібно задати: тип (в нашому випадку просто текст); блок, до якого це поле відноситься; назву поля; заголовок; опис даного поля; чи відображатиметься це поле при реєстрації (ми обираємо Ні); розмір і максимальну довжину поля; слова, які заборонені при реєстрації і слова, які заборонені при редагуванні цього поля. Коли ми все необхідне ввели – зберігаємо. І одразу введемо наші дані в блок (Рис.23) :


Рис.23

В даному блоці лише одне поле, тому буде краще якщо ми змінимо йому позицію з закладок (Рис.24) :

Рис.24

Тепер попробуємо встановити зв’язок між користувачами.

Для цього необхідно додати ще одного користувача (Рис.25):


Рис.25

Після реєстрації одразу відредагуємо профіль другого користувача (Рис.26) :

Рис.26

На даний момент в нас уже є два користувачі, так що ми можемо попробувати налаштувати зв’язок між ними. Заходимо в меню Компоненти –CommunityBuilder – Зв’язки – Дозволити зв’язки – Так.

Зв’язки ми включили, тепер необхідно зробити так, щоб зареєстровані користувачі могли бачити одне одного. Для цього потрібно додати додаткове меню (посилання, яке відображатиме список всіх зареєстрованих користувачів). Додаємо один пункт меню, вибираємо тип – Зовнішнє посилання. Після цього включаємо модуль, який відповідає за це меню (Розширення – Менеджер модулів – Усі користувачі і вибираємо позицію – бачитимуть лише зареєстровані користувачі) (Рис.27):

Рис.27

Тепер зайдемо під другим користувачем (Ірина), там появилась вкладка Зв’язок і встановлюємо зв’язок з попереднім користувачем (Admin), який повинен буде підтвердити цей зв’язок. Можна спочатку переглянути сторінку, того хто просить встановити зв’язок і тоді вирішувати чи підтверджувати чи ні (Рис.28):


Рис.28

Якщо ми повернемось в наш профіль то побачимо що в нас є Зв’язок (1) (Рис.29):

Рис.29

Для зручності додамо окремий блок (Компоненти –CommunityBuilder – Управління блоками і включаємо блок Зв’язки) (Рис.30):

Рис.30

Так буде зручніше, тому що нам одразу буде видно з ким встановлений зв’язок, зможемо переглянути його профіль і надіслати повідомлення на e-mail.

Для простоти спілкування нам потрібно додати розширення, з допомогою якого користувачі зможуть обмінюватися миттєвими повідомленнями (не на e-mail ).

Спочатку встановлюємо компоненту Особистих повідомлень (по суті ця компонента є своєрідною поштовою скринькою для спілкування). Необхідно встановити модуль, який відображатиме панель з внутрішньою поштовою скринькою користувача (вхідні, вихідні, нове повідомлення). Після встановлення включаємо цей модуль.

Попробуємо написати нове повідомлення (Рис.31):


Рис.31

Зайдемо під другим користувачем і подивимось чи повідомлення одержано (Рис.32):

Рис.32

Для кращої зручності додамо два плагіни (Компоненти –CommunityBuilder – Управління плагінами і загружаємо наші плагіни) (Рис.33):


Рис.33

Зовнішній вигляд компоненти (Рис.34):

Рис.34

Міняємо шаблон для компоненти Особисті повідомлення (Рис.35):


Рис.35

На Рис.25 ми бачимо, що при реєстрації нових користувачів наш сайт є зовсім незахищеним, тому для безпеки від різних спамів, встановимо пагін Сaptcha , який іншими словами називають захищеним кодом.

Меню Компоненти - CommunityBuilder – Менеджер плагінів і встановлюємо наш пагін, потім його включаємо (Рис.36):

Рис.36


Встановимо компоненту Форум, яка повинна взаємодіяти з CommunityBuilder, щоб людина могла один раз зареєструватись, зайти на сайт і писати повідомлення на форумі від свого імені, не проходивши постійної процедури реєстрації чи входу.