Модификация стиля

Статус
В этой теме нельзя размещать новые ответы.

Владимир Миронов

Проверенные
Сообщения
1,001
Реакции
769
Баллы
8,295
Есть раздел "Модификации шаблонов и файлов" но в нём не нашёл нужного материала, поэтому спрошу здесь. Может кто знает и поможет.

Как то не нравится мне когда статистика разделов: количество тем и сообщений находятся прямо под названием разделов. На мой взгляд там лучше разместить краткое описание раздела и под разделы, а статистику запихнуть куда подальше в угол, т.к. на неё не обращают внимание и она редко нужна. Как это было в Вобле 3 (Эх, настальгия :biggrin: )
Особенно статистика как бельмо на глазу, когда форум только открывается, т.к. нулей дофига )))

Вот и стало интересно, а как модифицировать шаблон, чтобы статистику сделать как в стареньких движках IPB 3, vBulletin 3 и IPB 2.

Разместил названия движков в порядке интересности сделать статистику как в их шаблонах.
Рассмотрим на примере картинок.

1) На Xenforo уже есть шаблон от IPB 3 . Интересно как перенести статистику на стандартном шаблоне точно также?
ipb-jpg.16


Увидел форум на движке vBulletin 3 и в нём статистику как на IPB 3.
Если кому интересно, вот картинка
2.jpg

Вот и на Xenforo захотелось попробовать сделать точно также.

2) На vBulletin 3 статистика спрятана подальше к углу, а последнее сообщение поближе к теме, что очень даже может правильно
3.jpg

3) И третий интересный вариант, это как на стареньком IPB 2. Там тоже статистика столбиками как и на Вобле, только она находится между разделами и последними сообщениями.
1.jpg

Очень хотелось бы попробовать сделать все 3 варианта для Xenforo и выбрать наиболее понравившийся. Подскажите пожалуйста кто знает, как изменить для этого шаблон?
 
Уууууууууууу. Нифига себе задачка. Это наверное нужно обращаться к тем, кто верстает стили. Я от такого далёк.

Хотя... Переходите в настройки стиля, выбирайте группу опций "Список разделов/узлов", там переходите на вкладку "Узел: статистика" и прописывайте Внешний отступ слева в пикселях.
 
Сделай 2 скрина на какойто категории с разделами.
На первом что бы было видно так как сейчас выглядит, а второй откорректируй (к примеру, через Paint) так как ты хочешь видеть.
Если это касается не только отображения разделов в категории, но и тем в разделе, то сделай ещё с ними 2 скрина.
А дальше я уже тебе подскажу где что подправить, а то с тех скриншотов не сильно ясно что тебе нужно.
 
  • Мне нравится
Реакции: Hope
Всего 3 варианта как должно получиться.
Изначальный скрин он у всех один, это классический стиль отображения статистики раздела (Темы, сообщения)
0.jpg

1) В первом варианте мы делаем статистику как на движке IPB 3. Реализацию можно посмотреть в шаблоне IPB для Xenforo
2.jpg

3.jpg

На иконку RSS в стандартном шаблоне не обращаем внимания, её просто скрою через css

2) Во втором варианте делаем статистику как на движке vBulletin 3 Там статистика спрятана подальше к углу, а последнее сообщение поближе к теме, что очень даже может правильно
4.jpg


3) В третьем варианте делаем статистику как на стареньком движке IPB 2. Там тоже статистика столбиками как и на Вобле, только она находится между разделами и последними сообщениями.
5.jpg


На этих скриншотах постарался выделить красным цветом как хочется, чтобы отображалась статистика на Xenforo. Подскажите пожалуйста как реализовать.
 
  • Мне нравится
Реакции: Hope
1-й вариант сделать просто. А со 2-м и 3-м вариантами посложнее, рассказываю почему.
Как видно на 2-м и 3-м скрине для категории с разделами используется табличная основа (возможно даже с возможностью сортировки по полям "Форум"/"Раздел", "Тем", "Сообщений", "Последнее сообщение").
А в XenForo для категории с разделами нет такой структуры, там построение абсолютно по другому реализовано, с помощью тегов "div".
В принципе, если поколупаться, то можно разделить (но не табличной основой, без сортировки).
Где именно колупаться: шаблон node_forum_level_2 (node_forum_level_1 не нужно редактировать, он ссылается на node_forum_level_2)
Что конкретно отвечает за блоки "Темы" и "Сообщения":
PHP:
                <dl>
                    <dt>{xen:phrase discussions}:</dt> <dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.discussion_count}}</dd>
                    <dt>{xen:phrase messages}:</dt> <dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.message_count}}</dd>
                </dl>
Какой css отвечает за стиль этого шаблона: node_list.css (но не факт, что он отвечает только за стиль в этом шаблоне).
 
Где и что искать - это и так понятно. ТС просит привести конкретный пример правки шаблонов для изменения отображения статистики.
Хехе, если бы мне так на ладоше сказали где что лежит, то я бы сам уже сразу переделал шаблон...
Томболее, а вдруг у автора не стандартный шаблон или стандартный измененный, а я ему тут напишу правки... он изменит, пропадут его личные правки в этом шаблоне. Буду я виноват. :confused:
Так что я подожду его ответа по этому поводу. :wink:
 
  • Мне нравится
Реакции: Hope
Наконец-то появилось свободное время и дошли этого руки. :biggrin:
Изменения делались на реальном сайте. На всё ушло около часа, так что может быть где-то и косяк, но их я не заметил.
Вот результат:
prtscr_26042013_1937.png
Важно:
- изменения делались только под стандартный шаблон XF;
- блок RSS возле каждой темы у меня до изменений уже был убран.

Инструкция по изменению.
В шаблоне node_forum_level_2 ЗАМЕНИТЬ:
PHP:
                <dl>
                    <dt>{xen:phrase discussions}:</dt> <dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.discussion_count}}</dd>
                    <dt>{xen:phrase messages}:</dt> <dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.message_count}}</dd>
                </dl>
на:
PHP:
<div class="nodeBlocks_DisMes">
    <div class="nodeBlock_Dis" title="{xen:phrase discussions}">{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.discussion_count}}</div>
    <div class="nodeBlock_Mes" title="{xen:phrase messages}">{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.message_count}}</div>
</div>

В шаблоне node_category_level_1 ПОСЛЕ фразы:
PHP:
        <div class="categoryText">
            <h3 class="nodeTitle"><a href="{xen:link categories, $category}">{$category.title}</a></h3>
            <xen:if is="{$category.description}"><blockquote class="nodeDescription baseHtml">{xen:raw $category.description}</blockquote></xen:if>
        </div>
    </div>
Вставить это:
PHP:
<div class="categoryNodeInfo_SecondBlocks">
    <div class="Info_SecondBlock_Title">{xen:phrase node_type_Forum}</div>
    <div class="Info_SecondBlock_Dis">{xen:phrase discussions}</div>
    <div class="Info_SecondBlock_Mes">{xen:phrase messages}</div>
    <div class="Info_SecondBlock_Last">{xen:phrase latest}</div>
</div>

В css-шаблоне node_list.css в самом начале добавить это:
HTML:
/* BEGIN - Info_SecondBlocks and nodeBlocks_DisMes */
.nodeBlocks_DisMes {
    position: absolute;
    top: 5px;
    right: {xen:calc '16 + @nodeLastPost.border-left-width + @nodeLastPost.padding-left + @nodeLastPost.width + @nodeLastPost.padding-right + @nodeLastPost.border-right-width + @nodeLastPost.margin-right'}px;
    padding: 0;
    margin: 0;
}
.nodeBlock_Dis, .nodeBlock_Mes {
    display: inline-block;
    margin: 0;
    padding: 15px 0 0 0;
    width: 35px;
    height: 32px;
    border-left: 1px solid @primaryLighterStill;
    font-size: 11px;
    text-align: center;
}
 
.categoryNodeInfo_SecondBlocks {
    width: 100%;
    display: block;
    position: relative;
    height: 15px;
    font-size: 9px;
}
.Info_SecondBlock_Title, .Info_SecondBlock_Dis, .Info_SecondBlock_Mes, .Info_SecondBlock_Last {
    display: block;
    position: absolute;
    top: 0;
}
.Info_SecondBlock_Title {
    padding-left: 4px;
    left: {xen:calc '@nodeText.margin-left - 4'}px;
    border-left: 1px solid @primaryLighterStill;
}
.Info_SecondBlock_Dis {
    width: 38px;
    right: {xen:calc '51 + @nodeLastPost.border-left-width + @nodeLastPost.padding-left + @nodeLastPost.width + @nodeLastPost.padding-right + @nodeLastPost.border-right-width + @nodeLastPost.margin-right'}px;
    border-left: 1px solid @primaryLighterStill;
    border-right: 1px solid @primaryLighterStill;
    text-align: center;
}
.Info_SecondBlock_Mes {
    width: {xen:calc '35 + 14'}px;
    right: {xen:calc '1 + @nodeLastPost.border-left-width + @nodeLastPost.padding-left + @nodeLastPost.width + @nodeLastPost.padding-right + @nodeLastPost.border-right-width + @nodeLastPost.margin-right'}px;
    text-align: center;
}
.Info_SecondBlock_Last { 
    padding-left: 10px;
    right: 186px;
    border-left: 1px solid @primaryLighterStill;
}
/* END - begin - Info_SecondBlocks and nodeBlocks_DisMes */
 
Dorius спасибо большое. :thumbsup: Будем тестить. Прости за наглость, можешь дополнить инструкцию как сделать в списке тем так же столбиком статистику? А то там в каждом блоке повторяются слова Просмотров и Сообщений. Тут намного лучше, вверху просто один раз указал и нет необходимости повторять.
 
Dorius спасибо большое. :thumbsup: Будем тестить. Прости за наглость, можешь дополнить инструкцию как сделать в списке тем так же столбиком статистику? А то там в каждом блоке повторяются слова Просмотров и Сообщений. Тут намного лучше, вверху просто один раз указал и нет необходимости повторять.
Ммм, ок. Я гляну, если будет свободное время)
 
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу