Новости Joomla

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

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

Davidich

  • Захожу иногда
  • 179
  • 7 / 1
Здравствуйте. Модуль новостей из категории имеет такую структуру, если настроить его по горизонтали:
Код: html4strict
<div class="latest-new">
<ul class="newsflash-horiz">
  <li>
    <h4 class="newsflash-title">  Материал </h4>
     <p>
        <img alt="image005" src="/images/image005.jpg">
    </p>
     <p>Текст материала.</p>
   <a class="readmore" href="/index.php/8-blog/1-material">Подробнее...</a>
 <span class="article-separator"> </span>
 </li>
</ul>
</div>

Вот у меня вопрос: Есть ли возможность переписать его в такой вид?
Код: html4strict
<div class="latest-new">
  <img alt="image005" src="/images/image005.jpg">
   <div class="mystyle">
      <h4 class="newsflash-title">  Материал </h4>
        <p>Текст материала.</p>
       <a class="readmore" href="/index.php/8-blog/1-material">Подробнее...</a>
   </div>
</div>
Если конкретнее сказать, мне нужно вывести  картинку за таблицу.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Хмм... а Вы разве его уже не переписали?
Переопределяйте модуль в шаблоне и модифицируйте, как Вам будет угодно.
*

Davidich

  • Захожу иногда
  • 179
  • 7 / 1
Хмм... а Вы разве его уже не переписали?
Переопределяйте модуль в шаблоне и модифицируйте, как Вам будет угодно.
Нет я его не переписывал, я еще вчера переопределил и со вчерашнего дня не могу модифицировать как не старался <img alt="image005" src="/images/image005.jpg"> и вывести его за  <li>. li поменять на div - это без проблем, а вывести никак не могу...
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Что мешает? опишите подробно.
*

Davidich

  • Захожу иногда
  • 179
  • 7 / 1
Что мешает? опишите подробно.
А выше разве не очень подробно...)
Подробнее: вывожу с бутстрапом 3 изображения по ширине:
Код: php
<div class="row<?php echo $params->get('moduleclass_sfx'); ?>">
<?php for ($i = 0, $n = count($list); $i < $n; $i ++) :
$item = $list[$i]; ?>
<div class="col-md-4">
<?php require JModuleHelper::getLayoutPath('mod_articles_news', '_item');

if ($n > 1 && (($i < $n - 1) || $params->get('showLastSeparator'))) : ?>

<span class="article-separator"> </span>

<?php endif; ?>
</div>
<?php endfor; ?>
</div>
Картинка попадает под col-md-4, а мне не нужно, чтобы она не входила в него. Структуру написал выше.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Код: php
<?php require JModuleHelper::getLayoutPath('mod_articles_news', '_item');

У вас тут подшаблон подключается. В нём нужно переопределять.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Правильно, картинка принадлежит итему, и выводится вместе с итемом, в отдельном шаблоне для итема _item.php
*

fbr

  • Завсегдатай
  • 1660
  • 206 / 7
В стандартном модуле выводится изображение, содержащееся в тексте вступления, т.е вот здесь:
Код: php
$item->introtext;
и вытащить его достаточно проблематично.
Если вы в переопределенном макете выводите изображение для вступительного текста (вставили самостоятельно) - тогда можно
*

Davidich

  • Захожу иногда
  • 179
  • 7 / 1
Код: php
<?php require JModuleHelper::getLayoutPath('mod_articles_news', '_item');

У вас тут подшаблон подключается. В нём нужно переопределять.
В _item.php. А как? Можете помочь...
В стандартном модуле выводится изображение, содержащееся в тексте вступления, т.е вот здесь:
Код: php
$item->introtext;
и вытащить его достаточно проблематично.
Если вы в переопределенном макете выводите изображение для вступительного текста (вставили самостоятельно) - тогда можно
Вот именно на этом я и остановился, надо как-то отделить картинку от текста...
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Скорее всего файл называется default_item.php и находится там же, где и default.php. Выложите его листинг.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Как переделать структуру mod_articles_news?
« Ответ #10 : 01.05.2014, 10:16:50 »
Вот именно на этом я и остановился, надо как-то отделить картинку от текста...
Получаете в отдельную переменную значение записи (итема) $aitem = $item->introtext; выковыриваете регуляркой из $aitem картинку и уже потом выводите остаток во фронт. Как ковырять - не подскажу, только теоретически представляю ((

Файл называется _item.php, лежит рядом с default.php. оригинальное содержимое:

<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_articles_news
 *
 * @copyright   Copyright (C) 2005 - 2014 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;
$item_heading $params->get('item_heading''h4');
?>
<?php 
if ($params->get('item_title')) : ?>

	
<<?php echo $item_heading?> class="newsflash-title<?php echo $params->get('moduleclass_sfx'); ?>">
	
<?php if ($params->get('link_titles') && $item->link != '') : ?>
	
	
<a href="<?php echo $item->link;?>">
	
	
	
<?php echo $item->title;?></a>
	
<?php else : ?>
	
	
<?php echo $item->title?>
	
<?php endif; ?>
	
</<?php echo $item_heading?>>

<?php endif; ?>

<?php if (!$params->get('intro_only')) :
	
echo 
$item->afterDisplayTitle;
endif; 
?>

<?php echo $item->beforeDisplayContent?>

<?php echo $item->introtext?>

<?php if (isset($item->link) && $item->readmore != && $params->get('readmore')) :
	
echo 
'<a class="readmore" href="'.$item->link.'">'.$item->linkText.'</a>';
endif; 
?>
*

fbr

  • Завсегдатай
  • 1660
  • 206 / 7
Re: Как переделать структуру mod_articles_news?
« Ответ #11 : 01.05.2014, 10:17:45 »
посмотрите здесь, может пригодится
http://www.wantweb.ru/mod-articles-news/mod-articles-news-date-image
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Как переделать структуру mod_articles_news?
« Ответ #12 : 01.05.2014, 10:24:17 »
В стандартном модуле выводится изображение, содержащееся в тексте вступления, т.е вот здесь:
Код: php
$item->introtext;
и вытащить его достаточно проблематично.
Если вы в переопределенном макете выводите изображение для вступительного текста (вставили самостоятельно) - тогда можно

Первый раз только проблемно. Потом привыкаешь. ^-^

Код: php
/*сперва найдём первую картинку, вернее только её адрес:*/
$src_regex = '#src\s*=\s*(["\'])(.*?)\1#'; //регулярка для поиска src картинки
preg_match_all($src_regex, $item->introtext, $matches); //где $item->introtext — переменная, в которой ищем.
$item->imgsrc = $matches[2][0];

/*потом удалим все теги, в том числе картинки из текста. Выборочные, например <p> можно оставить*/
$item->introtext = strip_tags($item->introtext);

/*подчистим:*/
$item->introtext = trim($item->introtext);

/*ещё можно подрезать строку до нужного количества символов без кромсания слов:*/
$txtcut = 600;
$item->introtext = strip_tags($item->introtext);
$item->introtext = substr(
$item->introtext, 0, (
strripos(
substr($item->introtext, 0, $txtcut), ' '
)
)
);

/*Всё, теперь можно выводить:*/

//$item->introtext = чистый, готовый текст для вывода.
//$item->imgsrc = значение src первой картинки
*

Davidich

  • Захожу иногда
  • 179
  • 7 / 1
Re: Как переделать структуру mod_articles_news?
« Ответ #13 : 01.05.2014, 10:35:56 »
посмотрите здесь, может пригодится
http://www.wantweb.ru/mod-articles-news/mod-articles-news-date-image
Интересная статья. но у меня вышло по две картинки. От вставленного кода и от стандартного кода. Автор не объяснил как заменить подробно.
Первый раз только проблемно. Потом привыкаешь. ^-^

Спойлер
[свернуть]


Как правильно этот код вставить? А то я вставил и у меня картинки пропали  ::)
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Как переделать структуру mod_articles_news?
« Ответ #14 : 01.05.2014, 10:40:53 »
Картинку вывести так:

Код: php
echo '<img src="'.$item->imgsrc.'" / >';
*

Davidich

  • Захожу иногда
  • 179
  • 7 / 1
Re: Как переделать структуру mod_articles_news?
« Ответ #15 : 01.05.2014, 10:50:34 »
Если я правильно понял, то нужно <?php echo $item->introtext; ?> заменить на :
Код: php
<?php $src_regex = '#src\s*=\s*(["\'])(.*?)\1#';
preg_match_all($src_regex, $item->introtext, $matches);
$item->imgsrc = $matches[2][0];
 

$item->introtext = strip_tags($item->introtext);
 
/*подчистим:*/
$item->introtext = trim($item->introtext);
 

$txtcut = 600;
$item->introtext = strip_tags($item->introtext);
$item->introtext = substr(
$item->introtext, 0, (
strripos(
substr($item->introtext, 0, $txtcut), ' '
)
)
);
echo '<img src="'.$item->imgsrc.'" / >' ?>
Если так, то пропал вступительный текст...
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Как переделать структуру mod_articles_news?
« Ответ #16 : 01.05.2014, 10:54:45 »
Я же файл не вижу.

Код: php
//выводим картинку:
echo '<img src="'.$item->imgsrc.'" / >';

//ниже выводим текст:
echo $item->introtext;
*

Davidich

  • Захожу иногда
  • 179
  • 7 / 1
Re: Как переделать структуру mod_articles_news?
« Ответ #17 : 01.05.2014, 11:12:03 »
Я же файл не вижу.

Код: php
//выводим картинку:
echo '<img src="'.$item->imgsrc.'" / >';

//ниже выводим текст:
echo $item->introtext;
Файл стандартный, я не использую готовые шаблоны ^-^. Спасибо большое! Получилось по вашему коду!
Спойлер
[свернуть]
Не обязательно было из-под col-md-4 выводить картинку, а достаточно было под div засунуть остальное))
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться