Новости Joomla

Вышли релизы безопасности Joomla 6.0.2 и Joomla 5.4.2

Релиз безопасности Joomla 6.0.2 и 5.4.2

Проект Joomla спешит сообщить о выпуске Joomla 6.0.2 и Joomla 5.4.2. Это релиз безопасности для серии Joomla 6.0 и релиз безопасности для серии Joomla 5.4.

JL Content Fields Filter 4.0.0

JL Content Fields Filter 4.0.0

JL Content Fields Filter - Это бесплатный модуль, который фильтрует материалы в категории Joomla согласно настраиваемым полям.

Данный крупный релиз включает полную совместимость с Joomla 6, критические исправления безопасности, полностью модернизированный интерфейс администратора и обширный рефакторинг кода.

Ключевые Особенности:

- Полная совместимость с Joomla 6: Полная миграция на PSR-4, удаление устаревших методов, исправления для PHP 8.2+ и современные взаимодействия с базой данных.

- Полностью переписанный интерфейс компонента:

- Современный JS стек (Native Fetch, ES6+, модальные окна Bootstrap 5)

- Новое поле FilterfieldsField для предварительного просмотра фильтров в реальном времени.

- Полный CRUD, улучшенные функции SEO и улучшенный UX.

- Критические исправления безопасности:

- 5 SQL-инъекций устранены в нескольких файлах.

- Добавлена защита от XSS, улучшены токены CSRF и проверки разрешений.

- Улучшения модуля и плагина: Улучшенная функциональность слайдера, лучшие сбросы форм, динамическое обнаружение контекста для плагинов и оптимизированная логика фильтрации.

Страница расширения:
https://joomline.ru/rasshirenija/moduli/jlcontentfieldsfilter.html

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

Ахмадинеджад

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
Приветствую вас народ трудовой :)
Возникла нужда, продублировать несколько раз: Опцию "Автор".
Добавить ещё пункт (либо Соавтор, либо Фотограф, либо и то и другое).

Вот так мне видится.
Это в статье:
("Фото Татьяны Бардиной" я сейчас просто пишу в теле статьи.)


А это вот в админке:


Превьюшки на главной и в категориях, троагть не хочу, пусть так и остаётся только Автор.


Надо сделать дополнительные пункты лишь в полной новости.
Спасибо всем кто откликнется.  *DRINK*
« Последнее редактирование: 18.09.2010, 18:04:29 от Ахмадинеджад »
*

Ахмадинеджад

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
*

valagoff

  • Давно я тут
  • 984
  • 110 / 0
а просто внизу/вверху статьи писать фото Ахмадинежада никак?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
если полей много, то имеет смысл заморочиться сторонним компонентом.
form2content глянь-оно паразитирует на стандартных статьях )
или можно на FLEXIcontent переехать.
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
если полей много, то имеет смысл заморочиться сторонним компонентом.
form2content глянь-оно паразитирует на стандартных статьях )
или можно на FLEXIcontent переехать.
:) из-за одного поля суетиться думаю не стоит.
Вообще в вашем случае если не задействовано поле псевдоним делается все гораздо просто.
Открываем {root}\components\com_content\views\article\tmpl\default.php копируем его в {root}\templates\{ВАШ шаблон}\html\com_content\article\default.php
и заменяем в нем
Код: php
<?php if (($this->params->get('show_author')) && ($this->article->author != "")) : ?>
<tr>
<td valign="top">
<span class="small">
<?php JText::printf( 'Written by', ($this->escape($this->article->created_by_alias)? $this->escape($this->article->created_by_alias) : $this->escape($this->article->author)) ); ?>
</span>
&nbsp;&nbsp;
</td>
</tr>
<?php endif; ?>
на
Код: php
<?php if (($this->params->get('show_author')) && ($this->article->author != "")) : ?>
<tr>
<td valign="top">
<span class="small">
<?php JText::printf( 'Written by', $this->escape($this->article->author)); ?>
</span>
&nbsp;&nbsp;
</td>
</tr>
<?php endif; ?>
<?php if ($this->article->created_by_alias): ?>
<tr>
<td>
<?php echo 'ФОТО: '. $this->escape($this->article->created_by_alias); ?>
</td>
</tr>
<?php endif; ?>
Сохраняем в UTF-8 без DOM.
Теперь если будет заполнено поле псевдоним под автором будет выводиться - ФОТО: То что в псевдониме.
Если нужно выбирать конкретного пользователя из списка, то там уже нужно лезть в код и никакой FLEXI наверное не поможет (хотя могу ошибаться :) ). Как это сделать, думаю, писать не имеет смысла.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
всё зависит от задачи.
списки во флекси как раз таки естью более того, там есть какая-то извратная их форма с выборкой из бд (сам не пробовал :) )
так что, вполне возможно, что и юзеров можно выбирать. но, на крайняк, создаём дополнтельное поле со списком фамилий и вот готовый выпадающий список.
в form2content вроде тоже списки есть. но там надо смотреть-я не помню.

а псевдоним автора не подходит. в задаче уже 2 поля и "etс" :)
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
а псевдоним автора не подходит. в задаче уже 2 поля и "etс" :)
да может быть и подошел, только я забыл про другие шаблоны вывода блога и т.д. :) там то он тоже учитывается.
Поэтому такой вариант не проканает, нужно либо поле дополнительно создавать либо параметр. Ну или твой вариант, я бы его правда поставил на последнее место, т.к. ставить эти монструозы для решения элементарной задачи думаю не имеет смысла :)
Вот чего-то подумал с параметром даже более изящно получается.
{root}\administrator\components\com_content\models\article.xml
меняем
Цитировать
...
<params group="advanced">
...
на
Цитировать
...
<params addpath="/administrator/components/com_content/elements" group="advanced">
   <param name="created_by_2" type="author" default=""  label="Author 2" />
...

И в шаблоне вывода добавляем
Код: php
<?php if (($this->params->get('show_author')) && ($this->article->author != "")) : ?>
<tr>
<td valign="top">
<span class="small">
<?php JText::printf( 'Written by', ($this->escape($this->article->created_by_alias)? $this->escape($this->article->created_by_alias) : $this->escape($this->article->author)) ); ?>
</span>
&nbsp;&nbsp;
</td>
</tr>
<?php endif; ?>

<?php /* это добавляем */ ?>
<?php if ($this->params->get('created_by_2', null)) :
$user2 = JFactory::getUser($this->params->get('created_by_2')); ?>
<?php if ($user2->name !== $this->article->author) : ?>
<tr>
<td>
Блаблабла: <?php echo $user2->name; ?>
</td>
</tr>
<?php endif ?>
<?php endif ?>

Получается вроде нормально. Если автор и второй автор не совпадают то будет выводиться 2 автора :) Правда будет один лишний запрос, но думаю от него никто не умрет.
*

Ахмадинеджад

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
спасибо друзья.
Я попробовал по последнему мануалу SmookerMan-a... Вышло как-то неправильно. Возможно в этом виноват шаблон. (Ja-Newsy)


Поясняю:
1. Поля "Автор" и "Блаблабла" - меняются значениями.
2. Поле в котором выводится "Автор" из списка, (в данном случае Блаблабла) - выводит первого пользователя из списка (В данном случае это Александра Светлова), какого бы пользователя  я не выбрал.
Думаю сперва надо научить этот код: не меняться значениями.

article.xml
Код
<params addpath="/administrator/components/com_content/elements" group="advanced">
   <param name="created_by_2" type="author" default=""  label="Author 2" />
        <param name="show_title" type="list" default="" label="Show Title" description="Show/Hide the items title">
            <option value="">Use Global</option>
            <option value="0">No</option>
            <option value="1">Yes</option>
        </param>... .etc

www\templates\news\html\com_content\article\default.php
Код
<?php if (($this->params->get('show_author') && ($this->article->author != "")) || ($this->params->get('show_page_title'))) : ?>
<p class="noticebottom clearfix">
    <?php if (($this->params->get('show_author')) && ($this->article->author != "")) : ?>
    <span class="createdby">
        <?php JText::printf('Written by', ($this->article->created_by_alias ? $this->article->created_by_alias : $this->article->author)); ?>
    </span>
    <?php endif; ?>
   
</p>
<?php endif; ?>

<?php /* это добавляем */ ?>
<?php if ($this->params->get('created_by_2', null)) :
    $user2 = JFactory::getUser($this->params->get('created_by_2')); ?>
    <p class="noticebottom clearfix">
    <?php if ($user2->name !== $this->article->author) : ?>
    <span class="createdby">
            Блаблабла: <?php echo $user2->name; ?>
    </span>
    <?php endif ?>
    </p>
<?php endif ?>
 
 
<?php echo $this->article->event->afterDisplayContent; ?>
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Думаю сперва надо научить этот код: не меняться значениями.
:) второй вариант псевдоним как раз не задействует, а добавляется просто дополнительный параметр. Потому что первый не совсем правильный.
В "Параметры - Расширенные" у вас появляется дополнительный параметр - список пользователей группы автор и выше, вот в нем и нужно выбирать пользователя.
*

Ахмадинеджад

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
Опс ) Сорри, действительно.
Спасибо большое. А можно этот список переместить в блок повыше?
Чтобы был под псевдонимом автора?
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Чтобы был под псевдонимом автора?
нет. Вернее можно все, но придется делать больше манипуляций
*

Ахмадинеджад

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
*

Ахмадинеджад

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
а можно сделать так,  что-бы по умолчанию ничего в графе блаблабла не было? То есть, если не выбираю ничего (вообще не трогаю), то она и не отображается на сайте.
А то сейчас во второй графе по умолчанию стоит первый пользователь в списке...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Проблема с авторизацией Invalid Token

Автор treX

Ответов: 100
Просмотров: 97508
Последний ответ 06.10.2019, 16:55:45
от PaLyCH
Как добавить статью в созданный новый раздел (меню)

Автор Lzrv

Ответов: 1
Просмотров: 1696
Последний ответ 16.11.2017, 09:00:15
от Lzrv
Как проверить форму обратной связи [Решено]

Автор mafiozzzza

Ответов: 8
Просмотров: 6927
Последний ответ 30.05.2017, 11:34:11
от darkghost
[Решено] Проблемка с якорями

Автор yarikk

Ответов: 6
Просмотров: 2066
Последний ответ 25.11.2016, 02:02:57
от yarikk
Как добавить новый модуль?

Автор kirill-juk

Ответов: 1
Просмотров: 1539
Последний ответ 02.02.2016, 22:11:41
от vipiusss