Перейти к контенту
  • 0

IBFportal 4.0 фиксация новостей из определённого форума


Вопрос

Установлен IPB 1.3 и IBFPortal 4.0. Вопрос такой. В админке я задал вывод новостей из 8 форумов. Всё работает прекрасно. Вопрос таков. Нельзя ли вызвать новости только из определённого форума. Пример. Сеичас когда я захожу по "index.php?act=portal", вижу новости из всех 8 форумов.

 

Нельзя ли как то запросить в браузере чтоб выводился отдельный форум, примерно: "index.php?act=portal&showforum=2" . И тогра в портале будут видны новости только из форума #2?

 

Очень интересно если это возможно?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Не предусмотрено.

Но совсем не сложно это доделать.

Найти

function do_news()
{
global $DB, $ibforums, $std, $INFO;

// nothing inserted?
if ( $ibforums->vars['portal_newsforum'] == "" )
{
$forumid="t.forum_id=1";
}

// multiple forums
elseif ( $ibforums->vars['portal_newsforum'] == 0 )
{
if ( $ibforums->vars['portal_newsforum_expert'] == "" )
{
$forumid="t.forum_id=1";
}
else
{
$forums = explode(",", $ibforums->vars['portal_newsforum_expert']);

и добавить ниже:


if($ibforums->input['portal_news_forum'] and in_array($ibforums->input['portal_news_forum'],$forums))$forumid = "t.forum_id=".$ibforums->input['portal_news_forum'];
else

 

Теперь можно в адресной строке указывать только нужный подфорум для сбора новостей: index.php?act=portal&portal_news_forum=2

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Вот помог а. Спасибо большое. Я думал никто не ответит. Работает прекрасно. Я так думаю укоротить ссылку нелзя? Типа index.php?act=portal&forum=5 или index.php?act=portal&news=5 или index.php?act=portal&news_forum=5 . Чтоб легче было. Если нет, то и ладно. Я и так очень рад :)

 

Спасибо большое вам!

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Совсем забыл. Я использую .htaccess для переодресации. Как мне внудрить туда index.php?act=portal&portal_news_forum=2 чтоб показывало pictures.something.com . и тд. или something.com/section2.html Вот сам .htaccess

 

 

RewriteEngine On
RewriteRule ^index.htm index.php?%{QUERY_STRING}
RewriteRule ^index.html index.php?%{QUERY_STRING}
RewriteRule ^main.html index.php?act=idx&%{QUERY_STRING}
RewriteRule ^forum([0-9]+)\.html$ index.php?act=SF&f=$1&%{QUERY_STRING}
RewriteRule ^topic([0-9]+)\.html$ index.php?act=ST&f=1&t=$1&%{QUERY_STRING}
RewriteRule ^topic([0-9]+)s([0-9]+)\.html$ index.php?act=ST&f=1&t=$1&st=$2&%{QUERY_STRING}
RewriteRule ^cat([0-9]+)\.html$ index.php?act=SC&c=$1&%{QUERY_STRING}
AddDefaultCharset iso-8859-1

 

Уже разобрался. Кому надо в .htaccess добавить

 

RewriteRule ^section([0-9]+)\.html$ index.php?act=portal&portal_news_forum=$1&%{QUERY_STRING}

 

Ешё раз спасибо

Изменено пользователем Roman A Zagorodni
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Ешё быстрый вопрос, сорри. Вот у меня прописано в портале выводить 50 новостей. Как сделать внизу страници. типа.

 

Страницы: (246) « Первая ... 2 3 [4] 5 6 ... Последняя »

 

Примерно так. И чтоб каждая страница была в интервале 50 предыдущих новостей.

 

Если кто знает, потскажите.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Я так думаю укоротить ссылку нелзя?

Можно.

 

if($ibforums->input['portal_news_forum'] and in_array($ibforums->input['portal_news_forum'],$forums))$forumid = "t.forum_id=".$ibforums->input['portal_news_forum'];

 

Я выделил жирным где задается имя переменной, которое потом запрашивается в адресной строке.

Если у себя в файле пропишете другое, то и в адресной строке будет другой вызов.

 

 

 

Страницы: (246) « Первая ... 2 3 [4] 5 6 ... Последняя »

 

Примерно так. И чтоб каждая страница была в интервале 50 предыдущих новостей.

Муторно.

И неразумно. Портальная страница очень ресурсоемкая, и в наших интересах, чтобы ее поменьше листали.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Просто в порталах ипб 2.х там страници есть. Ну да ладно. Ешё последний вопрос по порталу. Знаете где в skin_portal есть:

 

 

<table cellpadding=0 cellspacing='1' border='0' width='<{tbl_width}>' align='center'>
<tr>
<td width="80%" vAlign=top>
{$data['welcomepanel']}
{$data['new_posts_big']}
{$data['news']}
  </td>
<td width="1%" > </td>

<td width="20%" vAlign=top>
{$data['navigation']}
{$data['calendar']}
{$data['latest_posts_big']}
{$data['facebook']}
{$data['adsense']}
{$data['friends']}
{$data['forums_list']}
{$data['googlebar']}
{$data['new_posts']}
{$data['poll']}
{$data['old_news']}
{$data['top_posters']}
{$data['top_forums']}
{$data['new_members']}
{$data['stats']}
</td>
</table>

 

Как мне правую колонку портала, вывести в skin_topics.php по правой стороне?

 

{$data['navigation']}
{$data['calendar']}
{$data['latest_posts_big']}
{$data['facebook']}
{$data['adsense']}
{$data['friends']}
{$data['forums_list']}
{$data['googlebar']}
{$data['new_posts']}
{$data['poll']}
{$data['old_news']}
{$data['top_posters']}
{$data['top_forums']}
{$data['new_members']}
{$data['stats']}

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Скин портала вызывается из файла портала.

Чтобы вывести правую колонку в топик, недостаточно в скин топика перекинуть код из скина портала, потребуется в topics.php прописать функции, аналогичные функциям portal.php

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Ну это понятно. я пытался так и сделать, но чего то ничего не кажет.

 

Мне бы лиж бы вот это вывести. И всё.

 

{$data['latest_posts_big']}

Изменено пользователем Roman A Zagorodni
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Странно подумать что никто этого не сделал. Очень полезная вещь. Читаеш топик, а справа калонка последних топиков. Что только я не делел, то пустая страница то 500 эррор Изменено пользователем Roman A Zagorodni
Ссылка на комментарий
Поделиться на других сайтах

  • 0

На мой взгляд, вещь как раз вредная: запрос списка последних топиков с учетом прав доступа к темам для группы читающего посетителя получается довольно нагрузочным.

И для продвижения в поисковках вещь вредная: ежеминутно меняющийся сквозняк ни одной поисковке не нравится.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Муторно.

И неразумно. Портальная страница очень ресурсоемкая, и в наших интересах, чтобы ее поменьше листали.

 

Ну нельзя как нибудь по простому, типа кнопка "<< Назад" и "Бперёд >>" , и при нажатии, показываютса предыдущие 50 новостей и следующие 50?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Да все можно при большом желании. Можно создать критерий генерации новостей с учетом времени прошлой генерации, генерировать в файл, а сам файл затягивать через шаблоны.

Если нужны идеи по реализации, я готов поделиться идеями. Писать такой мод для себя не буду, поэтому строк кода, которыми мог бы поделиться, у меня нет и не ожидается.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Со всем я разобрался. Но вот с листанием портала, нет.

 

Или что то типа, просто поставить ссылку в низу "Болше". И при нажатии показывались бы предыдущие 20 постов. И т.д.

Изменено пользователем Roman A Zagorodni
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Дак в том то и дело. Вебсайт мой подделан под развлекательный портал. Чел просмотрел все истории, видео, картинки на одной странице, кликнул - и предыдушие 20 можно почитать и т.д. Типа "Wait, there is more!!!"
Ссылка на комментарий
Поделиться на других сайтах

  • 0

кликнул - и предыдушие 20 можно почитать и т.д. Типа "Wait, there is more!!!"

Дык и сделать ссылку на index.php?act=Search&CODE=getactive
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Тогда они будут видны как топики, а не как в портале. Ну пока буду использовать этот линк Изменено пользователем Roman A Zagorodni
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.