Хак Как сделать статьи в 2 колонки?

Тема в разделе "DLE", создана пользователем bomb1980, 18 дек 2011.

Информация :
Актуальная версия DataLife Engine 11.2
( Final Release v.11.2 | Скачать DataLife Engine | Скачать 11.2 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.1 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. bomb1980

    bomb1980

    Регистр.:
    24 апр 2008
    Сообщения:
    225
    Симпатии:
    56
    Собственно, мучает вопрос, как бы так сделать чтобы статьи шли в 2 колонки, но я видел хак он делает в две колонки но там если текста больше во второй новости то она получается больше чем первая а мне надо чтобы новости были одинаковые по высоте. Ну чтобы мод это все уравнивал и красиво это смотрелось. Спасибо за помощь.
     
  2. Ernest

    Ernest

    Регистр.:
    26 сен 2006
    Сообщения:
    238
    Симпатии:
    58
    На самом деле все очень элементарно:

    весь шортстори.тпл загоняем в div
    Код:
    <div class="moistyle"> </div>
    в css пишем
    Код:
    .moistyle{padding: 5px; margin: 5px; display:inline-block; vertical-align:top; width: 47%;}
    Для того что бы было все ровно и красиво лезем в файлы движка, в show.short после // Обработка дополнительных полей
    Код:
    $row['short_story'] = strip_tags(str_replace(array('<br>','<br />')," ",$row['short_story']));
        if (strlen($row['short_story'])>300) $row['short_story'] = substr($row['short_story'],0,300)."...";
        $tpl->set('{short-story}', stripslashes($row['short_story']));
    *300 максимальное кол-во символов в короткой новости.


    Из минусов обрезает так же картинки. С картинками можно тоже сделать "обрезание", но тогда все равно криво получается.
     
    bomb1980 нравится это.
  3. bomb1980

    bomb1980

    Регистр.:
    24 апр 2008
    Сообщения:
    225
    Симпатии:
    56
    В смысле из минусов так же обрезает картинки? Ну ладно щас попробую сделать погляжу что и как
     
  4. Ernest

    Ernest

    Регистр.:
    26 сен 2006
    Сообщения:
    238
    Симпатии:
    58
    вот так это выглядит:
    [​IMG]
     
    bomb1980 нравится это.
  5. bomb1980

    bomb1980

    Регистр.:
    24 апр 2008
    Сообщения:
    225
    Симпатии:
    56
    Я сделал, все ок, но а где картинки. Без картинок такой вариант не подходит. Есть еще предложения очень надо.
    Метод Ernest хорош, но надо чтобы и картинки были в новостях и чтобы они тоже обрезались по размеру.
     
  6. Ernest

    Ernest

    Регистр.:
    26 сен 2006
    Сообщения:
    238
    Симпатии:
    58
    С картинками таким способом будет криво, так как картинки обрезаются по одной из сторон либо вертикально, либо горизонтально. Что бы было ровно с картинками, надо юзать стандартные функции DLE тег custom
     
  7. Ernest

    Ernest

    Регистр.:
    26 сен 2006
    Сообщения:
    238
    Симпатии:
    58
    Хотя можно попробовать так:

    Открываем /engine/modules/show.short.php
    находим строчку:
    Код:
    $tpl->set( '{short-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . $row['short_story'] . "</div>" ) );
    Заменяем на:
    Код:
    $tpl->set( '{short-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . substr($row['short_story'], 0, 300) . " ...</div>" ) );
    весь шортстори.тпл опять же загоняем в div как написано в прошлом сообщении, а в css добавляем такую строку
    Код:
     img.moistyle {width:100px; height:100px;}
    картинки должны ограничиваться до размеров в 100px​

     
  8. bomb1980

    bomb1980

    Регистр.:
    24 апр 2008
    Сообщения:
    225
    Симпатии:
    56
    у меня нет такой строки $tpl->set( '{short-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . $row['short_story'] . "</div>" ) );

    Версия DLE 9.3
     
  9. Ernest

    Ernest

    Регистр.:
    26 сен 2006
    Сообщения:
    238
    Симпатии:
    58
    Код:
    $tpl->set( '{short-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . $row['short_story'] . </div>" ) );
     
    на
     
    $tpl->set( '{short-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . substr($row['short_story'], 0, 300) . " ...</div>" ) );
     
  10. bomb1980

    bomb1980

    Регистр.:
    24 апр 2008
    Сообщения:
    225
    Симпатии:
    56
     
Статус темы:
Закрыта.