Новости Joomla

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+). При отображении форм компонента в админке раньше разработчикам нужно было описывать скрытые поля в лейаутах. И выглядело это так:

<?php     // Это файл в /layouts/components/com_component/your_layout.php?><input type="hidden" name="task" value=""><input type="hidden" name="return" value="<?php echo $input->getBase64('return'); ?>"><input type="hidden" name="forcedLanguage" value="<?php echo $input->get('forcedLanguage', '', 'cmd'); ?>"><?php echo HTMLHelper::_('form.token'); ?>
Начиная с Joomla 5.3 добавлен новый способ добавления таких полей (их называют control fields) - программно. И теперь это можно сделать просто в Controller / View.
// В Controller/View добавляем поля$this->form  ->addControlField('task', '')  ->addControlField('return', $input->getBase64('return', ''))  ->addControlField('forcedLanguage', $forcedLanguage);
А в layout'е просто используем метод
renderControlFields()
// В layout формыecho $this->form->renderControlFields();
Многие компоненты ядра уже используют этот подход. Соответствующий PR был принят в Joomla 5.3 осенью 2024г.Смотреть
Pull Request@joomlafeed#joomla #разработка #php

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

Новая итерация компонента продолжает развиваться, ведь с v.4.x компонент был переписан практически с нуля.

v.4.1.0. Что нового?

Редактирование метаданных изображений. Теперь метаданные можно не только читать, но и напрямую редактировать и записывать обратно в изображение JPG. Поддерживаются данные EXIF ​​и IPTC.

Полная совместимость с Joomla! 4.x, 5.x и 6.x. Компонент почистили от устаревших методов в коде.

Заметно ускорили загрузку больших галерей. Списки в админке, особенно для очень больших галерей ( >30 000 изображений), теперь загружаются значительно быстрее.

Несколько сеток lightGallery на одной странице. Будь то плагины контента или модули изображений: теперь вы можете отображать несколько галерей или категорий на одной странице без каких-либо ограничений.

Множество мелких исправлений ошибок и оптимизаций.

Сайт проекта

GitHub расширения

Скачать

0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 3312 Просмотров
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Использую JComments 2.3.0 и решил доп поля не создавать и просто немного изменил поле "Тема", изменил его таким образом что теперь там радио кнопка с возможностью выбора: Ну например мужской или Женский пол.
выглядит это следующим образом в файле tpl_form.php вот это:

Код
<?php
                }
                if ($this->getVar('comments-form-title', 0) == 1) {
                        $text = ($this->getVar('comments-form-title-required', 1) == 0)? JText::_('FORM_TITLE') : JText::_('FORM_TITLE_REQUIRED');
?>
<p>
        <span>
<input class="radioviote1" type="radio" name="title" value="Man" checked="checked"/><span class="green">Man</span><br />
                <label for="comments-form-title1"></label>
<input class="radioviote2" type="radio" name="title" value="Women" /><span class="red">Women</span><br />
                <label for="comments-form-title2"></label>
        </span>
</p>



Теперь при использовании радио кнопки вместо титла мы видим Мужчина или Женщина все выводится хорошо, но мне нужно задать разные цвета для этих полей
а теперь не могу сделать так что бы чтобы в форме вывода в файле tpl_comment.php где тот сообщить Joomla что есть не просто тайтл а есть 1 и 2-ой вариант для того чтобы прописать слили для кождого отдельно

Код
<a class="comment-anchor" href="<?php echo $thisurl; ?>#comment-<?php echo $comment->id; ?>" id="comment-<?php echo $comment->id; ?>">#<?php echo $comment_number; ?></a>
<?php
                                if (($this->getVar('comment-show-title') > 0) && ($comment->title != '')) {
?>

<span class="comment-title"><?php echo $comment->title; ?></span> &mdash;
<?php
                                }
                                if ($this->getVar('comment-show-homepage') == 1) {
?>
 

или может у кого нибудь есть другое решение этого вопроса?
« Последнее редактирование: 16.06.2014, 19:52:31 от BHy4eK »
*

ABTOP

  • Захожу иногда
  • 493
  • 33 / 4
Re: Вывод текста из radio кнопки CSS
« Ответ #1 : 17.06.2014, 15:17:53 »
Ну так подвесьте цвет прямо на class="radioviote1" и class="radioviote2"
типа
Код
.radioviote1{color: blue;}
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Re: Вывод текста из radio кнопки CSS
« Ответ #2 : 17.06.2014, 16:15:41 »
этот .radioviote1{color: blue;} подсвечивает все в порядке, но он подсвечивает их в форме для заполнения, а мне нужно при выводе их подсвечивать я могу присвоить стиль для title, что по сути и является данная форма вывода, там нет, как бы это сказать, разделения для вывода, при помощи файла tpl_comment.php и переменной title он просто выводит титул и он будет 1 цветом, потому что выглядит это после публикации как:

<span class=​"comment-title">​Man​</span>​   
<span class=​"comment-title">​Women​</span>​

а мне нужно чтобы титул Man был зеленым, а титул Women красным, О! :)   
Помогите разобраться а я допилю и выложу попозже сюда файлы для замены может кому пригодиться форма которая подсвечивает отписавшихся мужчин красным а женщин зеленым , также можно использовать как положительные или отрицательные отзывы...
« Последнее редактирование: 17.06.2014, 16:28:23 от BHy4eK »
*

Hishchnik

  • Захожу иногда
  • 253
  • 19 / 1
  • ©
Re: Вывод текста из radio кнопки CSS
« Ответ #3 : 17.06.2014, 17:47:28 »
а что Вам мешает выводить:
Код: html4strict
<span class="comment-title <?php echo $comment->title; ?>"><?php echo $comment->title; ?></span>

у Вас тогда будет:
Код: html4strict
<span class="comment-title Man">Man</span>  
<span class="comment-title Women">Women</span>
и на них уже повесить цвет
1. Помог? Благодарность выражается кнопочкой "+" ;)
2. Остановите землю я сойду!
3.
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Re: Вывод текста из radio кнопки CSS
« Ответ #4 : 17.06.2014, 18:50:46 »
Если в форму вывода прописать вместо:
Код
<span class="comment-title <?php echo $comment->title; ?>"><?php echo $comment->title; ?></span>
Вот это:
Код
<span class="comment-title Man">Man</span>   
<span class="comment-title Women">Women</span>

То публикуются обе переменные, а как сделать чтобы выводилась только одна переменная?

Ну вот как я это понимаю: радио кнопкой мы выбираем man или women, после чего выбранное значение становиться title и просто побликуется. а вот как сделать чтобы он понимал что это не просто титул а титул man или women


« Последнее редактирование: 17.06.2014, 19:39:37 от BHy4eK »
*

Hishchnik

  • Захожу иногда
  • 253
  • 19 / 1
  • ©
Re: Вывод текста из radio кнопки CSS
« Ответ #5 : 17.06.2014, 20:46:37 »
скорей всего вы меня Неправильно поняли.
я говорил вообще то про замену:
Код: html4strict
<span class="comment-title"><?php echo $comment->title; ?></span>
заменить на:
Код: html4strict
<span class="comment-title <?php echo $comment->title; ?>"><?php echo $comment->title; ?></span>
« Последнее редактирование: 17.06.2014, 20:55:13 от Hishchnik »
1. Помог? Благодарность выражается кнопочкой "+" ;)
2. Остановите землю я сойду!
3.
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Re: Вывод текста из radio кнопки CSS
« Ответ #6 : 17.06.2014, 22:34:35 »
нет возможности сейчас проверить, только завтра, Простите меня, за скорее всего глупость :) но в последнем варианте :
Код
<span class="comment-title <?php echo $comment->title; ?>"><?php echo $comment->title; ?></span>
также как и в предпоследнем :
Код
<span class="comment-title"><?php echo $comment->title; ?></span>
выводится просто title а под этим значением выводится и Man и Women и опять вопрос как их разделить чтобы слили присвоить.

Завтра буду пробовать по-другому ... просто создам 2 дополнительных поля Man и Women и сделаю для них разные стили...
*

Hishchnik

  • Захожу иногда
  • 253
  • 19 / 1
  • ©
Re: Вывод текста из radio кнопки CSS
« Ответ #7 : 17.06.2014, 23:32:00 »
если вы значение заносите в базу, при добавлении материала
а потом выводите из базы, то у вас переменная $comment->title будет содержать 1 вариант из 2х возможных
и лучше бы вам
Код: html4strict
<input class="radioviote1" type="radio" name="title" value="Man" checked="checked"/>
поменять на
Код: html4strict
<input class="radioviote1" type="radio" name="gender" value="Man" checked="checked"/>
так же для Woman
так как title заголовок, возможен конфликт...

А разделяться они будут так:
Код: html4strict
<span class="comment-title <?php echo $comment->title; ?>"><?php echo $comment->title; ?></span>
переменная $comment->title = man
значение
Код: html4strict
<span class="comment-title Man">Man</span>
переменная $comment->title = Woman
значение
Код: html4strict
<span class="comment-title Woman">Woman</span>
« Последнее редактирование: 17.06.2014, 23:38:52 от Hishchnik »
1. Помог? Благодарность выражается кнопочкой "+" ;)
2. Остановите землю я сойду!
3.
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Re: Вывод текста из radio кнопки CSS
« Ответ #8 : 18.06.2014, 16:48:22 »
Ну что тут скажешь, большое человеческое спасибо! +1
*

Hishchnik

  • Захожу иногда
  • 253
  • 19 / 1
  • ©
Re: Вывод текста из radio кнопки CSS
« Ответ #9 : 18.06.2014, 16:55:24 »
BHy4eK, Всегда пожалуйста  ;)

Тему можно закрывать
1. Помог? Благодарность выражается кнопочкой "+" ;)
2. Остановите землю я сойду!
3.
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Re: Вывод текста из radio кнопки CSS
« Ответ #10 : 18.06.2014, 17:25:26 »
только 1 момент ещё :)

А вот если не сложно еще подскажите: для переменной Man легко можно присвоить стиль потому что Man прикручивается к
Код
class="comment-title Man"

и тут вопросов нет, просто
Код
.Man{ color:green;font-size: 18px;}
А как быть если например есть необходимость написать там "Мужчина" через ini файл <?php echo JText::_('Man'); ?>
и тогда получается:
Код
class="comment-title Мужчина"
как можно к этому стиль прикрутить ?

Спасибо в кубе :)
*

Hishchnik

  • Захожу иногда
  • 253
  • 19 / 1
  • ©
Re: Вывод текста из radio кнопки CSS
« Ответ #11 : 18.06.2014, 18:34:14 »
Спойлер
[свернуть]
А вот это уже другой вопрос  ;)
делай так:
Код: html4strict
<span class="comment-title <?php echo $comment->title; ?>"><?php echo JText::_($comment->title); ?></span>
при условии, что $comment->title у тебя либо Man, либо Woman
И будет тебе счастье )))))
Да еще:
Спойлер
[свернуть]
« Последнее редактирование: 18.06.2014, 18:43:58 от Hishchnik »
1. Помог? Благодарность выражается кнопочкой "+" ;)
2. Остановите землю я сойду!
3.
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Re: Вывод текста из radio кнопки CSS
« Ответ #12 : 18.06.2014, 19:17:32 »
Я тут знаете что придумал сейчас если думаю не получится ничего с выводом русских букв, просто изменю в CSS кодировку на win-1252, и поф :) и было бы у меня вот так:
Код
.РџРѕР»РѕР¶РёС {color:green;font-size: 18px;}
- Это шутка не советую так делать

А можно мне Вашу голову? сори за фоотоп :) 
Всё... Победа! :)
« Последнее редактирование: 19.06.2014, 11:00:24 от BHy4eK »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод счетчика комментариев Jcomments в определенном месте шаблона материала

Автор aleksandrozz

Ответов: 16
Просмотров: 8836
Последний ответ 11.03.2021, 17:19:50
от dron
Отсутствие кнопки отправить

Автор mrfruze

Ответов: 10
Просмотров: 2230
Последний ответ 05.08.2015, 16:37:38
от SeBun
Как убрать надпись вверху "Комментарии" и две кнопки "RSS" и "Обновить список комментариев"?

Автор quazy

Ответов: 1
Просмотров: 1964
Последний ответ 06.10.2014, 11:15:03
от quazy
Ширина формы ввода текста в комментариях

Автор Elimelech

Ответов: 4
Просмотров: 2310
Последний ответ 09.09.2014, 11:31:45
от Elimelech
Вывод комментариев после модуля похожих меток в Joomla 3.2

Автор Roinmana

Ответов: 1
Просмотров: 2081
Последний ответ 08.01.2014, 01:23:31
от smart