↓ реклама на блоге ↓
Чтение блога по RSS
Счётчик RSS-подписчиков
Блог FeAlSe
Главная страница блога Обратная связь с автором блога XML-карта блога Добавить блог в избранное
РегистрацияNew | ?
  • Рекомендую

    • SAPESAPE » Всем биржам ссылок биржа ссылок! ~ $1000/мес.
    • GoGetLinksGoGetLinks » Вечные ссылки с гарантией индексации ПС!
    • AdvegoAdvego » Дешёвый контент и отличные журналисты!
    • RotaPostRotaPost » Заработок для начинающего блоггера ;-)
    • SEOPultSEOPult » Быстрое продвижение по НЧ и СЧ запросам!
  • Написано: 5 мая 2011 Прочитано: 13 769

    Ограничение количества символов в теге custom на DLE

    Ограничение количества символов в теге custom на DLE

    А вот решил писать в блог даже небольшие, но полезные заметки, которые не помещаются в twitter и могут пригодится мне самому в будущем.

    И так, дорабатывая и шлифуя сайт iPadis.ru про новости iPad, с которым я участвую в конкурсе, мне понадобилось сделать ограничение на количество символов в блоке "Обзоры игр и приложений для iPad". Этот блок выводится тегом custom, который отвечает за выборку публикаций из любых категорий. Пример тега, используемого на iPadis.ru:
    {custom category="3,5,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" template="anonce" aviable="global" from="0" limit="5" cache="yes"}

    В теге custom можно настроить:
    category - ID категорий из которых будут показываться публикации (через запятую);
    template - шаблон для вывода одной публикации (без расширения .tpl);
    aviable - раздел в котором будет работать тег (global - выводить везде);
    from - от какой записи начинать выборку;
    limit - количество выводимых публикаций;
    cache - возможность кешировать блок (yes or no).
    С тегом custom и его возможностями разобрались. Теперь собственно о сабже. Для того, что бы обрезать количество символов в описании выводимой публикации ({short-story}), откроем файл /engine/modules/show.custom.php, найдём код (примерно 341 строка):
    $tpl->set( '{short-story}', stripslashes( $row['short_story'] ) );
    и заменим на
    if( dle_strlen( stripslashes( $row['short_story'] ), $config['charset'] ) > 145 ) $shortstory = dle_substr( stripslashes( $row['short_story'] ), 0, 145, $config['charset'] ) . "... <a href=\"" . $full_link . "\">&raquo;</a>";
        else $shortstory = stripslashes( $row['short_story'] );

        $tpl->set( '{short-story}', $shortstory );
    , где 145 (в двух местах) - максимальное количество символов описания.

    Аналогичным образом можно выставить ограничение на кол-во символов в заголовке публикации. В том же файл, найдём (примерно 312 строка):
    $tpl->set( '{title}', stripslashes( $row['title'] ) );
    и заменим на
    if( dle_strlen( stripslashes( $row['title'] ), $config['charset'] ) > 30 ) $title = dle_substr( stripslashes( $row['title'] ), 0, 30, $config['charset'] ) . "...";
        else $title = stripslashes( $row['title'] );

        $tpl->set( '{title}', $title );
    , где 30 (в двух местах) - максимальное количество символов в заголовке.

    На этом всё fellow Я уверен, этот небольшой хак кому-нибудь, да пригодится. Удачи!
    Что бы ничего не пропустить, я рекомендую подписаться на блог по RSS, либо по E-Mail.
    А так же советую следовать за мной в микроблоге на Twitter и добавить меня ВКонтакте.
  • DLE
  • Хаки
  • Конкурсы

ОлегПочитатели

1-й комментарий от Олег 9 июля 2011 03:27

Спасибо, пригодилось.
Идеально, конечно было если обрезал до конца слова.
Хотя, и так нормально ))
sitl.byПочитатели

2-й комментарий от sitl.by 24 октября 2011 15:43

А еще можно сделать немного по другому, тобишь:

http://sitl.by/web/13-rasshirennyy-vyvod-related-i-custom.html

что гораздо проще тем, что можно сразу устонавливать кол-во символав, не лазая постоянно в ПХП файлы!
Наверх не seo блога

Реклама