Модуль с пользовательскими полями.
В модуле mod_jdvrecordsset можно сформировать нужные поля, потом добавить для них css форматирование в файл шаблона.
Формирование пользовательских полей удобно для организации на сайте различных слайдеров. В пакет модуля входят два шаблона для JQuery плагинов jCarousel и bxSlider.
Как настроить модуль.
Если мы будем использовать стандартные поля, которые есть в конфигурации default.json, то нам остается сделать переопределение вывода модуля в шаблоне сайта. Копируем файлы шаблона модуля в папку html шаблона сайта. Если ничего в файлах шаблона не меняем, то и переопределять вывод тоже не нужно.
Теперь, если мы хотим добавить какое-то новое поле, например, поле Цена. Создаем копию файла конфигурации, переименовываем ее и добавляем туда нужно нам поле.
Файл default.json
{ "record_name": {"label":"MOD_JDVRECORDSSET_NAME", "field":"input"}, "record_title": {"label":"MOD_JDVRECORDSSET_TITLE", "field":"textarea"}, "record_published": {"label":"MOD_JDVRECORDSSET_STATE", "field":"select", "options": [{"value": 0, "text": "JUNPUBLISHED"}, {"value": 1, "text": "JPUBLISHED"}]}, "record_image": {"label":"MOD_JDVRECORDSSET_IMAGE", "field":"media"}, "record_thumb": {"label":"MOD_JDVRECORDSSET_THUMB", "field":"media"}, "record_intro": {"label":"MOD_JDVRECORDSSET_INTRO", "field":"textarea"}, "record_readmore": {"label":"MOD_JDVRECORDSSET_READMORE", "field":"textarea"}, "record_readmore_href": {"label":"MOD_JDVRECORDSSET_READMORE_HREF", "field":"input"}, "record_readmore_target": {"label":"MOD_JDVRECORDSSET_READMORE_TARGET", "field":"select", "options": [{"value": 0, "text": "MOD_JDVRECORDSSET_READMORE_TARGET_SAME"}, {"value": 1, "text": "MOD_JDVRECORDSSET_READMORE_TARGET_BLANK"}]} }
И чтобы добавить поле цены, добавляем такой код:
"record_price": {"label":"MOD_JDVRECORDSSET_PRICE", "field":"input"},
Значение языковой константе MOD_JDVRECORDSSET_PRICE зададим в разделе меню админки Переопределение языковых констант.
В настройках модуля выберем созданную конфигурацию.
Файл шаблона модуля default.php
<?php // no direct access defined( '_JEXEC' ) or die( 'Restricted access' ); /*$thumbObj = new JdvRecordssetThumbs2; $thumbObj->set( 'quality', 90 ); $thumbObj->set( 'width', 290 ); $thumbObj->set( 'height', 200 ); $thumbObj->set( 'sizeon', 'both' ); $thumbObj->set( 'prefix', 'menu' );*/ ?> <div class="jdvrecordsset <?php echo "mid-{$module->id}"; ?>"> <?php foreach ($records as $key => $record) { if (!$record->record_published) continue; //$thumb = $thumbObj->doThumbnail( $record->record_image ); echo '<div class="jdvrecord-set' . ($key == ($numRecords-1) ? ' last': '') . '">'; echo '<h4>' . $record->record_title . '</h4>'; echo '<div class="jdvrecordsset-imagewrapper">'; echo '<a href="' . $record->record_readmore_href . '"' . ($record->record_readmore_target ? ' target="_blank"' : '') . ' />'; echo '<img src="' . $record->record_image . '" alt="' . $record->record_title . '" />'; echo '</a>'; echo '</div>'; echo '<div class="jdvrecordsset-intro">' . $record->record_intro . '</div>'; echo '<div class="jdvrecordsset-readmore">'; echo '<a href="' . $record->record_readmore_href . '"' . ($record->record_readmore_target ? ' target="_blank"' : '') . ' />'; echo $record->record_readmore; echo '</a>'; echo '</div>'; echo '</div>'; } ?> </div>
Переменной для поля цены будет
$record->record_price
Скачать модуль.
- Для Joomla 2.5 - mod_jdvrecordsset_v2_1_0.zip
- Для Joomla 3 - mod_jdvrecordsset_v3_2_0.zip