Делаем статистику форума, как на IP.Board

Hope

Premium
Сообщения
48,305
Решения
22
Реакции
71,877
Баллы
40,905
Создаём новый шаблон, называем его footer_stats, и вставляем в него такое содержимое:
Код:
<xen:require css="footer_stats.css" />
<div id="board_stats" class="breadBoxBottom">
    <ul class="ipsType_small ipsList_inline">
        <span class="value">{xen:number $boardTotals.discussions}</span>{xen:phrase discussions}
        <span class="value">{xen:number $boardTotals.messages}</span>{xen:phrase messages}
        <span class="value">{xen:number $boardTotals.users}</span>{xen:phrase members_count}
        <span class="value"><xen:username user="$boardTotals.latestUser" /></a></span>{xen:phrase latest_member}
    </ul>
</div>

<div class="borderwrapper">
    <div class="stats_body">
        <h3 class="stats_title_right"><a href="online/" class="Tooltip" title="Посмотреть всех онлайн пользователей">{xen:phrase online_now_x_members_y_guests_z, 'total={xen:number $onlineUsers.total}', 'members={xen:number $onlineUsers.members}', 'guests={xen:number $onlineUsers.guests}'}</a></h3>
            <div id="stats_content">
            <xen:if is="{$onlineUsers.records}">
            <ol class="listInline">
            <xen:foreach loop="$onlineUsers.records" value="$user" i="$i">
                <xen:if is="{$i} <= {$onlineUsers.limit}">
                    <li>
                    <xen:if is="{$user.user_id}">
                        <a href="{xen:link members, $user}"
                            class="username{xen:if '!{$user.visible}', ' invisible'}{xen:if {$user.followed}, ' followed'}">{$user.username}</a><xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>
                    <xen:else />
                        {xen:phrase guest}<xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>
                    </xen:if>
                    </li>
                </xen:if>
            </xen:foreach>
            <xen:if is="{$onlineUsers.recordsUnseen}">
                <li class="moreLink">... <a href="{xen:link online}" title="{xen:phrase see_all_visitors}">{xen:phrase and_x_more, 'count={xen:number $onlineUsers.recordsUnseen}'}</a></li>
            </xen:if>
            </ol>
            </xen:if>
        <br />
        <ul>
            <li>
                <span style="font-weight: bold; color: red;">Администратор</span></a> |
                <span style="font-weight: bold; color: green;">Модератор</span> |
                <span style="color: black; font-weight: bold;">Пользователи</span> |
            </li>
        </ul>
        </div>
    </div>
</div>

Или такой код, если хотим цветные ники в блоке онлайн.
Код:
<xen:require css="footer_stats.css" />
<div id="board_stats" class="breadBoxBottom">
    <ul class="ipsType_small ipsList_inline">
        <span class="value">{xen:number $boardTotals.discussions}</span>{xen:phrase discussions}
        <span class="value">{xen:number $boardTotals.messages}</span>{xen:phrase messages}
        <span class="value">{xen:number $boardTotals.users}</span>{xen:phrase members_count}
        <span class="value"><xen:username user="$boardTotals.latestUser" /></a></span>{xen:phrase latest_member}
    </ul>
</div>

<div class="borderwrapper">
    <div class="stats_body">
        <h3 class="stats_title_right"><a href="online/" class="Tooltip" title="Посмотреть всех онлайн пользователей">{xen:phrase online_now_x_members_y_guests_z, 'total={xen:number $onlineUsers.total}', 'members={xen:number $onlineUsers.members}', 'guests={xen:number $onlineUsers.guests}'}</a></h3>
            <div id="stats_content">
            <xen:if is="{$onlineUsers.records}">
            <ol class="listInline">
            <xen:foreach loop="$onlineUsers.records" value="$user" i="$i">
                <xen:if is="{$i} <= {$onlineUsers.limit}">
                    <li>
                    <xen:if is="{$user.user_id}">
                        <a href="{xen:link members, $user}"
                            class="username{xen:if '!{$user.visible}', ' invisible'}{xen:if {$user.followed}, ' followed'}">{xen:helper richUserName, $user}</a><xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>
                    <xen:else />
                        {xen:phrase guest}<xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>
                    </xen:if>
                    </li>
                </xen:if>
            </xen:foreach>
            <xen:if is="{$onlineUsers.recordsUnseen}">
                <li class="moreLink">... <a href="{xen:link online}" title="{xen:phrase see_all_visitors}">{xen:phrase and_x_more, 'count={xen:number $onlineUsers.recordsUnseen}'}</a></li>
            </xen:if>
            </ol>
            </xen:if>
        <br />
        <ul>
            <li>
                <span style="font-weight: bold; color: red;">Администратор</span></a> |
                <span style="font-weight: bold; color: green;">Модератор</span> |
                <span style="color: black; font-weight: bold;">Пользователи</span> |
            </li>
        </ul>
        </div>
    </div>
</div>

Снова создаём новый шаблон, называем его footer_stats.css и вставляем в него следующий код:
Код:
#board_stats ul {
    text-align: center;
}
#board_stats li {
    margin-right: 20px;
}
#board_stats .value {
    background: none repeat scroll 0 0 url(rgba.php?r=0&g=0&b=0&a=25); background: none repeat scroll 0 0 rgba(0, 0, 0, 0.1); _filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#19000000,endColorstr=#19000000);
    border-radius: 3px 3px 3px 3px; -webkit-border-radius: 3px 3px 3px 3px; -moz-border-radius: 3px 3px 3px 3px; -khtml-border-radius: 3px 3px 3px 3px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) inset, 0 1px 0 #FFFFFF; -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) inset, 0 1px 0 #FFFFFF; -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) inset, 0 1px 0 #FFFFFF; -khtml-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) inset, 0 1px 0 #FFFFFF;
    color: #222222;
    display: inline-block;
    font-weight: bold;
    margin-right: 3px;
    padding: 3px 7px;
    text-shadow: 0 0 0 transparent, 0 1px 0 rgba(255, 255, 255, 0.6);
}
.borderwrapper {
    overflow: hidden;
    border: 1px solid
    rgb(215, 215, 215);
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -khtml-border-radius: 10px;
    padding: 5px;
}
.stats_body {
    width: 100%;
    float: left;
}
.stats_title_left, .stats_title_center, .stats_title_right {
    overflow: hidden;
    background:
    #F7F7F7;
    border-bottom: 1px solid
    #E0E0E0;
    color:
    rgb(100,100,100);
    text-align: left;
    margin: 0px;
    font-size: 11px;
    font-weight: bold;
    padding: 3px 10px;
}
#stats_content {
    font-size: 11px;
    padding: 5px 10px;
}


Открываем шаблон forum_list и в нём находим:
Код:
<xen:hook name="forum_list_nodes">
<xen:if is="{$renderedNodes}"><xen:include template="node_list" /></xen:if>
</xen:hook>

И ниже добавляем:
Код:
<xen:include template="footer_stats" />
 
Последнее редактирование:
online_now_x_members_y_guests_z так и отображается, как есть :)
 
Ну так конечно, в 1.2 она изменилась и стала такой:
Код:
online_now_x_members_y_guests_z_robots_a
 
Да, так лучше, но роботов: {robots} :)

Добавляем ещё 'robots={xen:number $onlineUsers.robots}'
Всё понял, спасибо!
 
  • Мне нравится
Реакции: Hope
Ну Вы блин даёте. :)

Строку:
Код:
<h3 class="stats_title_right"><a href="online/" class="Tooltip" title="Посмотреть всех онлайн пользователей">{xen:phrase online_now_x_members_y_guests_z, 'total={xen:number $onlineUsers.total}', 'members={xen:number $onlineUsers.members}', 'guests={xen:number $onlineUsers.guests}'}</a></h3>


Замените на:
Код:
<h3 class="stats_title_right"><a href="online/" class="Tooltip" title="Посмотреть всех онлайн пользователей">{xen:phrase online_now_x_members_y_guests_z_robots_a, 'total={xen:number $onlineUsers.total}', 'members={xen:number $onlineUsers.members}', 'guests={xen:number $onlineUsers.guests}', 'robots={xen:number $onlineUsers.robots}'}</a></h3>
 
А есть какая-то возможность добавить рекорд посещений и тех кто недавно посетил форум?
Что-то ковырял плагин, пытался по аналогии сделать, не выдаёт данные...
 
Нет, нельзя. Это нужно подключать дополнительные шаблоны и писать много кода.
 
а чтобы цвет группы отображался тоже, как это пофиксить . А то ищу ищу не могу найти((
 
Код:
<li>
                <span style="font-weight: bold; color: red;">Администратор</span></a> |
                <span style="font-weight: bold; color: green;">Модератор</span> |
                <span style="color: black; font-weight: bold;">Пользователи</span> |
            </li>

Или что нужно?
 
Код:
<li>
                <span style="font-weight: bold; color: red;">Администратор</span></a> |
                <span style="font-weight: bold; color: green;">Модератор</span> |
                <span style="color: black; font-weight: bold;">Пользователи</span> |
            </li>

Или что нужно?
Код:
<li>
                <span style="font-weight: bold; color: red;">Администратор</span></a> |
                <span style="font-weight: bold; color: green;">Модератор</span> |
                <span style="color: black; font-weight: bold;">Пользователи</span> |
            </li>

Или что нужно?
нет, когда в группе пользователей правишь css (добавить цвет ника) , так вот этот цвет не отображается, но на форуме в целом цвет ника есть . Может какойто инклуд не подключен?
 
А это разве поддерживалось в данном моде? Если нет, то и не поддерживается по сей день. :)Хотя, попробуйте эту строку:
Код:
class="username{xen:if '!{$user.visible}', ' invisible'}{xen:if {$user.followed}, ' followed'}">{$user.username}</a><xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>


Заменить на такую:
Код:
class="username{xen:if '!{$user.visible}', ' invisible'}{xen:if {$user.followed}, ' followed'}">{xen:helper richUserName, $user}</a><xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>
 
сорри за предыдущее сообщение, пишу с телефона и инет тормозит ((( поэтому случайно два раза процетировал
 
Господа, а плиз-пожалуйста. Можно посмотреть это произведение на действике, или более полный скрин?
 
susu, что там не ясно? Просто в подвале отображается статистика, которая на скрине и всё.
 
я не знаю можно ли тут выкладывать ссылки на другие ресурсы, а скрин могу предоставить через минут 30-40 когда дома буду
 
  • Мне нравится
Реакции: susu
Примерно вот такого плана, я не стал возвращать стандартную css.
test12.PNG
И еще вот фикс от Hope
А это разве поддерживалось в данном моде? Если нет, то и не поддерживается по сей день. :-)[DOUBLEPOST=1382722322,1382722028][/DOUBLEPOST]Хотя, попробуйте эту строку:
Код:
class="username{xen:if '!{$user.visible}', ' invisible'}{xen:if {$user.followed}, ' followed'}">{$user.username}</a><xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>


Заменить на такую:
Код:
class="username{xen:if '!{$user.visible}', ' invisible'}{xen:if {$user.followed}, ' followed'}">{xen:helper richUserName, $user}</a><xen:if is="{$i} < {$onlineUsers.limit}">,</xen:if>
 

Вложения

  • likkk.PNG
    likkk.PNG
    5.9 KB · Просмотры: 250
Последнее редактирование:
Hope, помоги
 

Вложения

  • IKiIjXb.png
    IKiIjXb.png
    10.8 KB · Просмотры: 167
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу