Posted 24 октября, 20177 yr comment_138290 Ребят, подскажите, куда копнуть. Хочу сменить на главной странице Таблице лидеров количество их, сделать вместо стандартных 4-х восемь. Казалось бы простая задача, в настройках выставляю количество на основной странице - 8 и оставляю только по репутации, что бы мне не показывала публикации. Настройки применяются, но при этом на самой странице Лидеров не меняется ни чего. Проверил на двух сайтах, на одном лицензия, на другом мафиевский нуль. Заранее спасибо.
24 октября, 20177 yr Author comment_138292 Конечно На дефолтном скрине тож проверял, результат одинаков скине Странность в том, что на обоих сайтах как написал такая хрень
24 октября, 20177 yr Author comment_138294 последняя на лицензии и предпоследняя на нуле Все, можно закрывать. Сам понял. Это все относится к ТОП пользователей, а не к Лидерам а мне надо как раз лидеров сделать 8 штук а не 4
24 октября, 20177 yr comment_138295 11 минут назад, VladOr сказал: последняя на лицензии и предпоследняя на нуле Все, можно закрывать. Сам понял. Это все относится к ТОП пользователей, а не к Лидерам а мне надо как раз лидеров сделать 8 штук а не 4 Ковырять файл на вывод 8ми лидеров
25 октября, 20177 yr Author comment_138332 Видимо, утратил я уже сакральные знания. Гуру, помогите разобраться. Код построения строки из 4-х лидеров: {{if count( $topContributors)}} {{$count = 0;}} <ol class="ipsPad ipsStream ipsList_reset cStream_members ipsGrid ipsGrid_collapsePhone" data-ipsGrid data-ipsGrid-minItemSize='230' data-ipsGrid-maxItemSize='500' data-ipsGrid-equalHeights='row'> {{foreach $topContributors as $memberId => $rep}} {{$count++;}} {{$member = \IPS\Member::load( $memberId );}} {template="memberRow" group="popular" app="core" params="$member, $rep, $count"} {{endforeach}} </ol> {{else}} <p class='ipsAreaBackground_light ipsType_center ipsPad ipsType_reset ipsType_light ipsType_normal'> {lang="popular_no_member_results"} </p> Собственно, весь код из файла шаблона PopularWrapper: {{if \IPS\Content\Search\Query::isRebuildRunning()}} <div class="ipsMessage ipsMessage_info">{lang="popular_rebuild_is_running"}</div> {{endif}} {{$now = \IPS\DateTime::ts( time() );}} {{$thisUrl = \IPS\Request::i()->url();}} <div> <div class="ipsAreaBackground_light"> <div class="ipsReputationFilters ipsPad_half ipsClearfix ipsClear"> {{if count( $dates )}} <ul class="ipsButtonRow ipsPos_right ipsClearfix"> <li> <a href='#elLeaderboard_app_menu' id="elLeaderboard_app" data-ipsMenu>{{if isset( \IPS\Request::i()->in ) and isset( $areas[ \IPS\Request::i()->in ] )}}{lang="leaderboard_in_app" sprintf="$areas[ \IPS\Request::i()->in ][1]"}{{else}}{lang="leaderboard_in_all_apps"}{{endif}} <i class="fa fa-caret-down"></i></a> <ul id="elLeaderboard_app_menu" class="ipsMenu ipsMenu_selectable ipsMenu_normal ipsHide"> <li class="ipsMenu_item {{if ! isset( \IPS\Request::i()->in )}}ipsMenu_itemChecked{{endif}}"><a href="{$thisUrl->stripQueryString( 'in' )}">{lang="leaderboard_all_apps"}</a></li> {{foreach $areas as $key => $data}} <li class="ipsMenu_item {{if isset( \IPS\Request::i()->in ) and \IPS\Request::i()->in == $key}}ipsMenu_itemChecked{{endif}}"><a href="{$thisUrl->setQueryString( array( 'in' => $key ) )}">{$data[1]}</a></li> {{endforeach}} </ul> </li> <li> <a href='#elLeaderboard_time_menu' id="elLeaderboard_time" data-ipsMenu> {{if isset( \IPS\Request::i()->custom_date_start ) or isset( \IPS\Request::i()->custom_date_end )}} {lang="custom_date"} {{elseif isset( \IPS\Request::i()->time ) and isset( $dates[ \IPS\Request::i()->time ] ) and $setTime = \IPS\Request::i()->time}} {lang="leaderboard_time_$setTime"} {{else}} {lang="leaderboard_time_oldest"} {{endif}} <i class="fa fa-caret-down"></i> </a> <ul id="elLeaderboard_time_menu" class="ipsMenu ipsMenu_selectable ipsMenu_normal ipsHide"> {{foreach $dates as $human => $timeObject}} <li class="ipsMenu_item {{if ( ! isset( \IPS\Request::i()->time ) and ( ! isset( \IPS\Request::i()->custom_date_start ) and ! isset( \IPS\Request::i()->custom_date_end ) ) and $human == 'oldest' ) or ( ! isset( \IPS\Request::i()->custom_date_start ) and ( isset( \IPS\Request::i()->time ) and \IPS\Request::i()->time == $human ) )}}ipsMenu_itemChecked{{endif}}"> <a href="{$thisUrl->stripQueryString( array('custom_date_start', 'custom_date_end') )->setQueryString( array( 'time' => $human ) )}"> {lang="leaderboard_time_$human"} <p class="ipsTruncate ipsTruncate_line ipsType_reset ipsType_light"> {$timeObject->dayAndMonth()} {$timeObject->format('Y')}{{if $now->localeDate() != $timeObject->localeDate()}} - {$now->dayAndMonth()} {$now->format('Y')}{{endif}} </p> </a> </li> {{endforeach}} <li class="ipsMenu_item {{if isset( \IPS\Request::i()->custom_date_start ) or isset( \IPS\Request::i()->custom_date_end )}}ipsMenu_itemChecked{{endif}}"> <a href="#" data-ipsDialog data-ipsDialog-size='narrow' data-ipsDialog-content='#elDateForm' data-ipsDialog-title="{lang="custom_date"}">{lang="custom_date"} {{if isset( \IPS\Request::i()->custom_date_start ) or isset( \IPS\Request::i()->custom_date_end )}} <p class="ipsType_reset ipsType_light"> {{if isset( \IPS\Request::i()->custom_date_start )}} {datetime="\IPS\Request::i()->custom_date_start" dateonly="true"} {{if isset( \IPS\Request::i()->custom_date_end )}} - {{endif}} {{endif}} {{if isset( \IPS\Request::i()->custom_date_end )}} {datetime="\IPS\Request::i()->custom_date_end" dateonly="true"} {{endif}} </p> {{endif}} </a> </li> <div class="ipsHide" id="elDateForm"> {$form|raw} </div> </ul> </li> </ul> {{endif}} </div> {{if count( $topContributors)}} {{$count = 0;}} <ol class="ipsPad ipsStream ipsList_reset cStream_members ipsGrid ipsGrid_collapsePhone" data-ipsGrid data-ipsGrid-minItemSize='230' data-ipsGrid-maxItemSize='500' data-ipsGrid-equalHeights='row'> {{foreach $topContributors as $memberId => $rep}} {{$count++;}} {{$member = \IPS\Member::load( $memberId );}} {template="memberRow" group="popular" app="core" params="$member, $rep, $count"} {{endforeach}} </ol> {{else}} <p class='ipsAreaBackground_light ipsType_center ipsPad ipsType_reset ipsType_light ipsType_normal'> {lang="popular_no_member_results"} </p> </div> {{endif}} </div> <hr class='ipsHr'> <section class='ipsSpacer_top' data-controller='core.front.core.ignoredComments'> <h2 class='ipsType_sectionTitle ipsType_reset'>{lang="popular_results_title"}</h2> <div class='ipsAreaBackground_light ipsPad'> <div data-role='popularBody'> <p class="ipsType_reset ipsType_medium ipsSpacer_bottom"><i class='fa fa-calendar'></i> {$description}</p> <div data-role='popularResults'> <ol class='ipsStream ipsList_reset' data-role='popularContent'> {template="popularItems" group="popular" app="core" params="$results"} </ol> </div> </div> </div> </section> {{if $tzOffsetDifference !== NULL}} <div class='ipsPad ipsType_center ipsType_light ipsType_small'> {lang="popular_timezone" sprintf="\IPS\Member::loggedIn()->language()->addToStack('timezone__' . \IPS\Settings::i()->reputation_timezone), $tzOffsetDifference"} </div> {{endif}} Есть подозрение, что количество лидеров передается переменной $topContributors и просто правкой шаблона не обойтись. Прошу помощи.
25 октября, 20177 yr comment_138335 Рискну предположить /applications/core/modules/front/discover/popular.php 434 строка foreach( \IPS\Db::i()->select( 'member, rep', array( $innerQuery, 'in' ), NULL, 'rep DESC', 4 )->setKeyField('member')->setValueField('rep') as $member => $rep ) замените 'rep DESC', 4 на 'rep DESC', 8
25 октября, 20177 yr Author comment_138336 Очень похоже, щас проверю. Да, это оно. Проверено, работает. Спасибо!
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.