Bandicoot
@Bandicoot
Вась-программист

Как создать специальный раздел на сайте Joomla?

Поддерживаю сайт на Joomla 2.5, ранее опыта работы с ней не имел (работал с Django). Передо мной стоит задача сделать специальный раздел на сайте, а именно: вход в него должен быть запаролен, а пароль могут иметь только ограниченный круг лиц (т.е. обычная регистрация тут не подходит, пароль будет высылаться по почте). Как это можно сделать? Опишите пожалуйста порядок действий
  • Вопрос задан
  • 2901 просмотр
Решения вопроса 1
maxaon
@maxaon
Можете сделать отдельную группу пользователей и разрешить им доступ к соответствующим материалам(статьям). Перебрасывать пользователей в отдельную группу будете вручную.
Если не подходит - ищите какие-либо плагины.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
RainMEN
@RainMEN
HTML/STYLUS/JADE/JS/Laravel/Joomla/DLE и т.д.
Если же пароль будет одинаковый создавай нового пользователя, создавай раздел видный только ему, хотя даже если пароли будут разные, то суть не меняется просто немного усложнится условие на PHP.
1. Ну а дальше генеришь компонент содержащий нужную информацию.
2. А затем переходишь в редактирование компонента в представлении
(например:
C:\WebServers\home\dev.local\www\components\com_calctrans\views\calctrasform\tmpl\default.php)
--com_calctrans-название твоего компонента сгенерится самостоятельно
--calctrasform - это представление твоего шаблона(генерится вроде как 3 вида, список, атрибуты конкретного элемента, и форма заполнения)
3. Добавляешь PHP условие на проверку пароля.
Для доступа к БД можешь использовать код:
<?php
    class ConnectDB{
        public static function  getListBD(){
            // Подключаемся к базе данных
            $db = JFactory::getDbo();

            // Создаем новый объект запроса
            $query = $db->getQuery(true);
            // Добавляем сортировку
            $query->select(array('from_city', 'to_city', 'price'));
            $query->from('#__calctrans');
            // Устанавливаем запрос
            $db->setQuery($query);

            // Загружаем результат как список объектов
            return $result = $db->loadObjectList();
        }
    }
?>

4. Затем пробегаешься по всем объектам и проверяешь соответствуют ли поля, что то типа
foreach ($results as $item) {
            if ($p_from == $p_to){
                $p_price = 'Извините доставкой по городу не осуществляем.';
            } else{
                if (($p_from == $item->from_city) && ($p_to == $item->to_city)){
                    $p_price =$item->price . ' тысяч рублей';
                   /* break;*/
                } else{
                    $p_price = 'Извините доставкой по городу не осуществляем.';
                }
            }
        }

5. Ну а дальше банальное условие Если пароль совпал, то показывать, то что было у тебя в файлике default.php до твоих изменений
6. А дальше Меню-> Новый пункт меню -> Выбираешь тип меню Согласно названию твоего компонента и выбираешь представление.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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