Как добавить настройку количество постов в теме
#11
Отправлено 03 Январь 2013 - 20:20
ну вот 3.1.4 в файле ipsRegistry есть такое упоминание
а в 3.2.3 упоминания о display_max_posts вообще нет в этом же файле.
//----------------------------------------- // Fix up some preferences //----------------------------------------- $ppu = 0; $tpu = 0; if ( isset( self::$data_store['view_prefs'] ) ) { list($ppu,$tpu) = explode( "&", self::$data_store['view_prefs'] ); } ipsRegistry::$settings[ 'display_max_topics'] = ($tpu > 0 ? $tpu : ipsRegistry::$settings['display_max_topics'] ); ipsRegistry::$settings[ 'display_max_posts' ] = ($ppu > 0 ? $ppu : ipsRegistry::$settings['display_max_posts'] ); //-----------------------------------------
а в 3.2.3 упоминания о display_max_posts вообще нет в этом же файле.
#12
Отправлено 03 Январь 2013 - 20:29
если мне в профиле создать дополнительное поле, и по нему уже регулировать.... вот что то типа такого... как это правильно записать? и вообще такое может проканать, если я добавлю этот код в файл.
if ( $this->memberData['field_14'] != '') { ipsRegistry::$settings[ 'display_max_posts' ] = $this->memberData['field_14']; } else { ipsRegistry::$settings[ 'display_max_posts' ] = 20; }
#13
Отправлено 03 Январь 2013 - 20:36
Если например в globalTemplate вставить в начало
то на главной страницы, где возле темы идет количество страниц, то они увеличились ровно в двое, то есть с учетом того что стало 10 постов в теме, но вот тему открываешь и все равно 20 постов.
<php> ipsRegistry::$settings[ 'display_max_posts' ] = 10; </php>
то на главной страницы, где возле темы идет количество страниц, то они увеличились ровно в двое, то есть с учетом того что стало 10 постов в теме, но вот тему открываешь и все равно 20 постов.
#14
Отправлено 04 Январь 2013 - 02:07
а в 3.2.3 упоминания о display_max_posts вообще нет в этом же файле.
Естественно нет, если эта настройка была убрана в 3.2.
Как все это работало - в таблице пользователей ibf_members было поле view_prefs, по умолчанию оно имел значение -1&-1. Первый -1 соответствовало display_max_posts, второй -1 display_max_topics. Пользователь в своем профиле мог изменять желаемое количество постов или тем на странице, так что первая части до амперсанда соответствовало количеству сообщений (display_max_posts), вторая части после амперсанда количеству тем. Как мы видим, в методе setUpMember старой версии переопределяются эти две настройки для конкретного пользователя если у него соответствующая часть больше нуля, если нет то оставались дефолтными.
если мне в профиле создать дополнительное поле, и по нему уже регулировать.... вот что то типа такого... как это правильно записать?
Проще было бы уже создать хук/мод по подобию старой версии.
#15
Отправлено 04 Январь 2013 - 06:28
probel 03 Январь 2013 - 20:36 сказал(а):
Если например в globalTemplate вставить в начало
то на главной страницы, где возле темы идет количество страниц, то они увеличились ровно в двое, то есть с учетом того что стало 10 постов в теме, но вот тему открываешь и все равно 20 постов.
<php> ipsRegistry::$settings[ 'display_max_posts' ] = 10; </php>
то на главной страницы, где возле темы идет количество страниц, то они увеличились ровно в двое, то есть с учетом того что стало 10 постов в теме, но вот тему открываешь и все равно 20 постов.
а если также на главной странице, при увеличевшимся количестве страниц в двое, шелкнуть например на второй странице темы из 15 постов, то формируется страница из 5 последних постов...
То есть часть идеи работает, но как полностью то это реализовать...