Login / Sign Up


Enter site:
Login: 
Password: 


First time here?
 
Register [?]:
Registering allows you:
  • Purchase products from the product catalog and access them any time.
  • Ask questions to another specialists in IT
  • Publish your own Joomla extensions, soft or other products if you are developer or distributor
  • Add interesting weblinks and access them from any place
  • Watch the updates of the site and have special abilities that guests don't have
  • Watch the news of the service and new articles and get knowledge
Choose login:
Your Email:
Enter the result of operation (in digits):
22 + 9 = ? Update

Joomla Development
Разработка для Joomla - как подключить в коде расширения ресурсы в зависимости от текущего языка сайта PDF Print E-mail
Written by Максим   
Monday, 24 June 2013 14:19
Liked:
2


Did not like: 0
Добрый день, друзья. Сегодня очередная статья для разработчиков расширений Joomla, и я вкратце расскажу в ней о том, как решить задачу подключения определенных ресурсов в зависимости от текущего языка Вашего сайта. Подразумевается, что сайт поддерживает более одного языка. Управление многоязыковой средой для такого сайта может осуществляться каким-либо популярным расширением. Например, я использую замечательный и известный компонент JoomFish для этих целей.
 
Речь в этой заметке вот о чем: бывает ситуация, когда в коде некоторого плагина/модуля/компонента необходимо определять текущий язык сайта. А далее, в зависимости от текущего языка сайта, подключать определенный ресурс, соответствующий этому языку. Предположим, мы активно используем jQuery на сраницах нашего Joomla-сайта. И у нас возникла необходимость выводить на JavaScript сообщения на каждом из поддерживаемых сайтом языке.
Last Updated on Wednesday, 03 July 2013 09:16
Read more...
 
Как создать свою позицию для шаблона Joomla PDF Print E-mail
Written by Максим   
Saturday, 22 June 2013 22:59
Liked:
16


Did not like: 1

Доброго времени суток, друзья. В сегодняшней статьей я расскажу о том, как создать свою позицию в шаблоне для модуля Joomla. Тема не сложная, зато будет полезна всем тем, кто использует готовый шаблон Joomla, но текущее количество и/или расположение модулей в нем не устраивает.

Итак, что нам нужно:

  1. Открыть сайт в браузере и определить место в текущем шаблоне сайта, куда мы хотим добавлять модули.
  2. Определить с помощью специальных инструментов разработчика - "ближайшее окружение" нашей будущей позиции, т.е. какие-нибудь элементы HTML-разметки, которые расположены близко к месту предполагаемого добавления новой позиции. Это поможет нам найти нужное место в коде шаблона, куда добавить код для новой позиции.
  3. Изменить индексный файл шаблона - обычно это файл index.php в корневом каталоге шаблона
  4. Изменить специальный файл с названием templateDetails.xml, который содержит описание всех доступных позиций в шаблоне Joomla
Last Updated on Wednesday, 03 July 2013 09:14
Read more...
 
Как в Joomla получить ID добавленной в таблицу записи PDF Print E-mail
Written by Максим   
Tuesday, 07 August 2012 16:15
Liked:
7


Did not like: 1

Иногда при разработке для Joomla нужно получить ID для записи, вставляемой в определенную таблицу. Например, чтобы потом вставить во вторую таблицу запись, ссылающуюся на запись в первой таблице (т.е. использовать значение ID из 1-й таблицы в качестве внешнего ключа во 2-й таблице). Для этого существует специальный метод - insertid(). Он доступен при получении ссылки на объект для работы с базой данных через вызов JFactory::getDBO(). Сейчас я покажу, как это делается на практике:

Last Updated on Saturday, 29 June 2013 16:06
Read more...
 
Как в Joomla проверить пользователя на администратора? PDF Print E-mail
Written by Максим   
Thursday, 02 August 2012 19:13
Liked:
9


Did not like: 3

При разработке расширений для Joomla Вы можете столкнуться с необходимостью проверки, является ли залогиненный в джумла пользователь администратором. Недавно передо мной встала именно такая задача. И в сегодняшнем кратком очерке я расскажу, как проверить пользователя на администратора для версии Joomla 1.5. Основным классом, который нам понадобится, будет класс фреймворка джумлы JFactory. С его помощью мы получим сначала текущего пользователя, а затем специальный объект - JAuthorization. Текущего пользователя получаем с помощью вызова:

Last Updated on Saturday, 29 June 2013 16:06
Read more...
 
Полезные сниппеты для Joomla PDF Print E-mail
Written by Максим   
Friday, 24 June 2011 14:05
Liked:
19


Did not like: 2
Ниже приведу несколько кусков кода для решения задач, которые часто встречаются при разработке для Joomla.
Каждый сниппет снабжен комментариями краткими комментариями.
1. Подключение ресурсов к документу
// Получение документа
$doc = & JFactory::getDocument();
// Подключение к документу CSS-файла
$doc->addStylesheet("<a href="http://myexternalsite.com/css/myexternalcss.css">http://myexternalsite.com/css/myexternalcss.css</a>");
// Подключение внешнего JavaScript-файла
$doc->addScript("<a href="http://myexternalsite.com/js/myexternalscript.js">http://myexternalsite.com/js/myexternalscript.js</a>");
// Подключение к документу встроенного кода JavaScript.
// Строка, которую мы помещаем в addScriptDeclaration, будет автоматически обрамлена
// тегами <script> и </script>
$doc->addScriptDeclaration("
var msgHelloWorld = \"Hello, World!\";
alert (msgHelloWorld);
");
2. Получение значений переменных из запроса
// Получение значения переменной page GET-запроса с преобразованием к целому числу
// Если переменная в запросе не передавалась - присвоится значение по умолчанию 1
$page = JRequest::getInt('page', 1, 'get');

// Получение значения переменной task POST-запроса
// getCmd фильтрует значения, оставляя только символы из диапазона [A-Za-z0-9.-_]
$task = JRequest::getCmd('task', 'doDefaultThing', 'post');
3. Работа с базой данных
// Получение объекта бд.
$db = & JFactory::getDBO();
// Получение всех пользователей из таблицы jos_users
$db->setQuery("SELECT * FROM #__users");
// Получение результатов запроса в виде массива объектов.
// Каждый объект содержит аттрибуты с названием полей в базе данных
$listUsers = $db->loadObjectList();

// Печать на экран всех пользоваталей с их адресами E-mail
if (!empty($listUsers)) {
foreach ($listUsers as $user) {
echo "User: " . $user->username . ", E-mail: " . $user->email;
}
}
4. Получение текущего пользователя
$user = & JFactory::getUser();

if ($user->guest) {
// Пользователь не зашел на сайт, т.е. гость.
} else {
// Пользователь зашел на сайт
}
5. Получение текущей сессии JSession
$sess = & JFactory::getSession();
$username = $sess->get('username');

if (empty($username)) $username = "Гость";

// Сохранить в сессии переменную
$sess->set('username', $username);

// В сессии можно также хранить массивы:
$arrBooks = array();
$arrBooks['books'][] = array('title' => 'Война и мир', 'pages' => 1173 );
$arrBooks['books'][] = array('title' => 'Преступление и наказание', 'pages' => 560 );
$arrBooks['books_number'] = 2;

// Сохранили массив в сессии
$session->set('books', $arrBooks);

// ... выполняем какие-то действия

// Получили массив $arrBooks из сессии
$session->get('books');
6. Отправка электронной почты пользователю с помощью JUtility::sendMail
// Получение ID юзера из запроса
$userid = JRequest::getInt('userid', 0, 'get');

// Получение объекта бд.
$db = & JFactory::getDBO();

if ($userid > 0) {
// Получение пользователя по ID из таблицы jos_users
$db->setQuery("SELECT * FROM #__users WHERE id = " . $db->Quote($userid, true) );
// получаем результаты запроса в виде объекта (будет нулевой, если пользователь не найден)
$userObject = $db->loadObject();
if (!empty($userObject) && !empty($userObject->email)) {
$mail_topic = "Это тема письма";
$mail_text = "<p>Привет, " . $userObject->username . "! Это тестовое сообщение</p>";

// Отправляем письмо. Последний параметр - это режим отправки письма. Если true, то письмо будет HTML-документом,
// иначе обычный текст.
JUtility::sendMail("yourmail(0)yourdomain.ru", "Allineed.Ru", $userObject->email, $mail_topic, $mail_text, true);
} else {
// Пользователь не найден, либо у него не указан email - ошибка...
}
} else {
// ID пользователя <= 0 - это ошибка...
}
Ниже приведу несколько кусков кода для решения задач, которые часто встречаются при разработке для Joomla. Каждый сниппет снабжен комментариями краткими комментариями.
Last Updated on Friday, 24 June 2011 14:29
Read more...
 
<< Start < Prev 1 2 Next > End >>

Page 1 of 2

Found Error?

Система Orphus

Site Statistics

Яндекс.Метрика

Our Pages


Allineed.Ru © 2009-2012 - Allineed.Ru - ответы на IT вопросы, статьи о разработке, IT и программном обеспечении. При использовании материалов сайта ссылка обязательна. Использование данного сайта и любой его части означает принятие условий Пользовательского Соглашения.
Allineed.Ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters. The Joomla! name and logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries.