Joomla 3.x Как сделать превью с фото материалов на главной странице

Тема в разделе "K2", создана пользователем Magi, 10.12.2014.

  1. Offline

    Magi Недавно здесь

    Регистрация:
    03.10.2007
    Сообщения:
    23
    Симпатии:
    0
    Пол:
    Мужской
    Имеются K2 2.6.9 и Joomla 3.3.6 в которых большой архив новостей, в свое время импортированных из контента Joomla и ежедневно пополняемых путем создания статей с текстом и фото непосредственно внутри документа. Судя по отображению через phpmyadmin текст материала попадает в introtext в таблице k2_items.

    На главной выводятся новости из нескольких категорий K2. Хотя я указал в Параметрах K2 в разделе Контент отображение вводного текста и ограничение в 30 слов, но на отображении это никак не сказывается. По прежнему на главной отображается полный текст материала с уменьшенной картинкой.

    С помощью этого хака в шаблоне вывода категорий удалось сделать ограничение в отображении слов
    http://joomlaforum.ru/index.php/topic,237362.msg1228331.html#msg1228331
    Но при этом пропала картинка из материала.

    Каким образом можно сделать чтобы отображалась картинка и было ограничение вывода материала на главной? Может быть есть такой модуль?
     
  2.  
  3. DKraev
    Offline

    DKraev <i>(aka gft)</i>

    Регистрация:
    16.08.2008
    Сообщения:
    1 627
    Симпатии:
    216
    Пол:
    Мужской
    Теоретически нужно получить сначала изображение, примерно так:
    Код (PHP):
    1. <?php
    2. preg_match_all('/<img[^>]+src=([\'"])?((?(1).+?|[^\s>]+))(?(1)\1)/', $this->item->introtext, $matches);
    3. $img = $matches[2]; // наша картинка
    4. ?>


    Ну и вывести: <?php echo $img; ?>

    А вообще посмотрите что содержится в $this->item:

    <?php print_r($this->item); ?>

    Может быть там уже есть путь к изображению
     
  4. Offline

    Magi Недавно здесь

    Регистрация:
    03.10.2007
    Сообщения:
    23
    Симпатии:
    0
    Пол:
    Мужской
    Гм, т.е. стандартными средствами или дополнительными модулями никак? Я, к сожалению не силен в программировании, подскажите пожалуйста, куда можно вносить эти исправления? В тот же шаблон? \components\com_k2\templates\default\category_item.php
     
  5. DKraev
    Offline

    DKraev <i>(aka gft)</i>

    Регистрация:
    16.08.2008
    Сообщения:
    1 627
    Симпатии:
    216
    Пол:
    Мужской
  6. Offline

    Magi Недавно здесь

    Регистрация:
    03.10.2007
    Сообщения:
    23
    Симпатии:
    0
    Пол:
    Мужской
    Вот такой кусок кода в \components\com_k2\templates\default\category_item.php
    Не могу сказать точно, но возможно он отвечает за вывод изображения из поля изображения в K2, а в моем случае изображение - ссылка на внешний сервер в тексте материала.
    Код (PHP):
    1. <?php if($this->item->params->get('catItemImage') && !empty($this->item->image)): ?>
    2.     <!-- Item Image -->
    3.     <div class="catItemImageBlock">
    4.       <span class="catItemImage">
    5.       <a href="<?php echo $this->item->link; ?>" title="<?php if(!empty($this->item->image_caption)) echo K2HelperUtilities::cleanHtml($this->item->image_caption); else echo K2HelperUtilities::cleanHtml($this->item->title); ?>">
    6.          <img src="<?php echo $this->item->image; ?>" alt="<?php if(!empty($this->item->image_caption)) echo K2HelperUtilities::cleanHtml($this->item->image_caption); else echo K2HelperUtilities::cleanHtml($this->item->title); ?>" style="width:<?php echo $this->item->imageWidth; ?>px; height:auto;" />
    7.       </a>
    8.       </span>
    9.       <div class="clr"></div>
    10.     </div>
    11.     <?php endif; ?>
     

Поделиться этой страницей

Загрузка...