вывод сообщений начиная с указанного и кое-что еще...
-
- phpBB 1.2.1
- Сообщения: 23
- Стаж: 19 лет 1 месяц
- Откуда: Москва
вывод сообщений начиная с указанного и кое-что еще...
Собираюсь писать мод, присваивающий каждому сообщению свой ID для возможности перехода НА СООБЩЕНИЕ через адресную строку браузера.
Проблема в том, что часто хочется сослаться на конкретное сообщение, а не на всю тему.
Выглядеть это должно примерно так: "ссылка на тему"+"номер сообщения в теме".
При переходе по такой ссылке показывается блок сообщений, в котором указанное сообщение - первое.
Подобный подход открывает и другие перспективы - например, "сворачивание" нескольких сообщений в теме: например, в теме в течение нескольких сообщений подряд происходит диалог на определенную узкую тему. Хотелось бы, чтобы его можно было "свернуть" - указать первое сообщение и сколько мы сворачиваем, нажать "свернуть" - и теперь вместо десяти сообщений мы видим первое свернутое с кнопочкой "развернуть".
Иногда это более удобно, чем переносить сообщения в отдельную тему, да и с точки зрения защиты от ботов это удобно.
Другая появляющаяся удобная возможность - "связывание" тем: модератор видит, что в каком-то сообщении идет обращение к информации из другой темы и ставит пометку "перейти к связанной теме":
теперь пользователи при просмотре темы видят справа от некоторых сообщений иконку "перейти" и могут переходить в связанные темы (причем как раз к тем сообщениям, которые нужны - представьте себе такую опцию в Этом форуме! Вместо того, чтобы просматривать 24-страничную тему в поисках маленького фикса, мы СРАЗУ по ссылке из другой темы попадаем на сообщение с фиксом!
И, наконец, самая "вкусная" возможность - возможность создания "виртуальных" тем.
Допустим, на форуме про продукты Микрософта в разных темах появлялись сообщения и диалоги о Microsoft Windows Server 2003.
При этом просто переносить эти сообщения в отдельную тему не очень хотелось бы - они отвечают названиям тем, в которых были написаны.
При возможности ссылок на фрагменты троп ("номер сообщения в тропе+количество последующих сообщений") мы сможем создать "виртуальную" тему - вместо последовательности сообщений в этой теме будет ПОСЛЕДОВАТЕЛЬНОСТЬ ССЫЛОК НА ФРАГМЕНТЫ ТЕМ!
Причем выводиться эти "клоны" будут так же, как и обычные тропы - то есть движок форума будет САМ находить в базе фрагменты, на которые мы ссылаемся, и создавать "обычный" лист сообщений (возможно, с указанием на темы, из которых сообщения "позаимствованы").
Если такого мода нет, его НЕОБХОДИМО создать!
П.С. технически я представляю себе, как эту идею можно реализовать. Но я недостаточно хорошо разбираюсь в написании БЕЗОПАСНОГО PHP-кода.
Если кого-либо из уважаемых кодеров предложенное выше заинтересует, с удовольствием вступлю в переписку - приму любую помощь!
Проблема в том, что часто хочется сослаться на конкретное сообщение, а не на всю тему.
Выглядеть это должно примерно так: "ссылка на тему"+"номер сообщения в теме".
При переходе по такой ссылке показывается блок сообщений, в котором указанное сообщение - первое.
Подобный подход открывает и другие перспективы - например, "сворачивание" нескольких сообщений в теме: например, в теме в течение нескольких сообщений подряд происходит диалог на определенную узкую тему. Хотелось бы, чтобы его можно было "свернуть" - указать первое сообщение и сколько мы сворачиваем, нажать "свернуть" - и теперь вместо десяти сообщений мы видим первое свернутое с кнопочкой "развернуть".
Иногда это более удобно, чем переносить сообщения в отдельную тему, да и с точки зрения защиты от ботов это удобно.
Другая появляющаяся удобная возможность - "связывание" тем: модератор видит, что в каком-то сообщении идет обращение к информации из другой темы и ставит пометку "перейти к связанной теме":
теперь пользователи при просмотре темы видят справа от некоторых сообщений иконку "перейти" и могут переходить в связанные темы (причем как раз к тем сообщениям, которые нужны - представьте себе такую опцию в Этом форуме! Вместо того, чтобы просматривать 24-страничную тему в поисках маленького фикса, мы СРАЗУ по ссылке из другой темы попадаем на сообщение с фиксом!
И, наконец, самая "вкусная" возможность - возможность создания "виртуальных" тем.
Допустим, на форуме про продукты Микрософта в разных темах появлялись сообщения и диалоги о Microsoft Windows Server 2003.
При этом просто переносить эти сообщения в отдельную тему не очень хотелось бы - они отвечают названиям тем, в которых были написаны.
При возможности ссылок на фрагменты троп ("номер сообщения в тропе+количество последующих сообщений") мы сможем создать "виртуальную" тему - вместо последовательности сообщений в этой теме будет ПОСЛЕДОВАТЕЛЬНОСТЬ ССЫЛОК НА ФРАГМЕНТЫ ТЕМ!
Причем выводиться эти "клоны" будут так же, как и обычные тропы - то есть движок форума будет САМ находить в базе фрагменты, на которые мы ссылаемся, и создавать "обычный" лист сообщений (возможно, с указанием на темы, из которых сообщения "позаимствованы").
Если такого мода нет, его НЕОБХОДИМО создать!
П.С. технически я представляю себе, как эту идею можно реализовать. Но я недостаточно хорошо разбираюсь в написании БЕЗОПАСНОГО PHP-кода.
Если кого-либо из уважаемых кодеров предложенное выше заинтересует, с удовольствием вступлю в переписку - приму любую помощь!
Последний раз редактировалось sunturner 23.05.2006 20:38, всего редактировалось 2 раза.
С уважением, Михаил Кожурин
-
- phpBB 2.0.3
- Сообщения: 396
- Стаж: 19 лет 11 месяцев
- Откуда: tallinn.ee
-
- phpBB 1.2.1
- Сообщения: 23
- Стаж: 19 лет 1 месяц
- Откуда: Москва
Спасибо, как-то не подумал...
но ведь это не совсем то, о чем я говорил!
Нет, конечно, это тоже ID (у каждого сообщения уникальный).
Но для реализации того, что мне нужно, все равно придется писать что-то вроде viewposts.php
Добавлено спустя 2 минуты 55 секунд:
"Вместо того, чтобы просматривать 24-страничную тему в поисках маленького фикса, мы СРАЗУ по ссылке из другой темы попадаем на сообщение с фиксом!" - да, так можно. А чтобы и наоборот? (идея в том, что ссылки двунаправленны - если ставим в одной теме на сообщение в другой, то автоматически появляется ссылка из другой на первую - я же говорю, "связанные" темы!)
Добавлено спустя 7 минут 43 секунды:
для меня это не просто блажь!
заказчик (профессор) хочет, чтобы линии обсуждений могли пересекаться, сливаться и расходиться.
Если "расхождение" пожет быть реализовано системой подфорумов, то как быть со "сливанием" (начинаются две разные темы - например, в разных форумах - а потом "волей модератора", начиная с какого-то сообщения, сливаются в одну, то есть на форуме существуют две темы с разным началом (допустим, первые 10 сообщений) и одним концом).
И как быть с пересечением? (то есть если какое-то сообщение может быть отнесено к двум темам, то модератор может "включить" это сообщение как ответ на две темы, и при просмотре обеих тем это сообщение будет в листе).
Короче говоря, идея близка к википедии, но на базе форума...
Добавлено спустя 56 секунд:
понял! что-то вроде "мод подсообщений"
но ведь это не совсем то, о чем я говорил!
Нет, конечно, это тоже ID (у каждого сообщения уникальный).
Но для реализации того, что мне нужно, все равно придется писать что-то вроде viewposts.php
Добавлено спустя 2 минуты 55 секунд:
"Вместо того, чтобы просматривать 24-страничную тему в поисках маленького фикса, мы СРАЗУ по ссылке из другой темы попадаем на сообщение с фиксом!" - да, так можно. А чтобы и наоборот? (идея в том, что ссылки двунаправленны - если ставим в одной теме на сообщение в другой, то автоматически появляется ссылка из другой на первую - я же говорю, "связанные" темы!)
Добавлено спустя 7 минут 43 секунды:
для меня это не просто блажь!
заказчик (профессор) хочет, чтобы линии обсуждений могли пересекаться, сливаться и расходиться.
Если "расхождение" пожет быть реализовано системой подфорумов, то как быть со "сливанием" (начинаются две разные темы - например, в разных форумах - а потом "волей модератора", начиная с какого-то сообщения, сливаются в одну, то есть на форуме существуют две темы с разным началом (допустим, первые 10 сообщений) и одним концом).
И как быть с пересечением? (то есть если какое-то сообщение может быть отнесено к двум темам, то модератор может "включить" это сообщение как ответ на две темы, и при просмотре обеих тем это сообщение будет в листе).
Короче говоря, идея близка к википедии, но на базе форума...
Добавлено спустя 56 секунд:
понял! что-то вроде "мод подсообщений"
С уважением, Михаил Кожурин
-
- phpBB 2.0.7
- Сообщения: 560
- Стаж: 19 лет 2 месяца
-
- phpBB 2.0.13
- Сообщения: 917
- Стаж: 19 лет 9 месяцев
- Откуда: с Луны свалил...
Так часто про это спрашивают (про ссылку на пост). А всё потому, что ссылка сделана так, что непонятно, что это ссылка на пост.
Имхо надо ее чуть улучшить, чтобы все понимали, что это ссылка на конкретный пост. Так щас и сделаю. Прошу прощения за офф.
sunturner
Имхо очень интересная идея про виртуальную тему. Зачем остальное не совсем понял. Сворачивание как в IPB что ли? А связанные темы как в вобле? Только всё это надо прописать вручную? (то есть - модеры пишут)
Вот если вы виртуальную тему реализуете, это было бы классно.

Имхо надо ее чуть улучшить, чтобы все понимали, что это ссылка на конкретный пост. Так щас и сделаю. Прошу прощения за офф.
sunturner
Имхо очень интересная идея про виртуальную тему. Зачем остальное не совсем понял. Сворачивание как в IPB что ли? А связанные темы как в вобле? Только всё это надо прописать вручную? (то есть - модеры пишут)
Вот если вы виртуальную тему реализуете, это было бы классно.

Последний раз редактировалось edgar 23.05.2006 16:59, всего редактировалось 1 раз.
-
- phpBB 1.2.1
- Сообщения: 23
- Стаж: 19 лет 1 месяц
- Откуда: Москва
2Nemo1987:
либо только это сообщение, либо это сообщение и указанное количество последующих, либо (!) список указанных сообщений (я назвал это "виртуальной темой").
Вся фишка в том, чтобы можно было создавать "собственные маршруты" по форуму - и не только линейно, но и пересекая разные темы.
Например, виртуальная тема "самые полезные сообщения форума", в которой в виде стандартного листа сообщений выводятся сообщения из разных тем форума, которые модератор посчитал самыми полезными.
Добавлено спустя 8 минут 8 секунд:
про "мод подсообщений":
что-то вроде ЖЖ-шного "Reply to this" в поле каждого сообщения - то есть на каждом сообщении может произойти развилка на две темы.
Добавлено спустя 7 минут 52 секунды:
ну, в целом идея такая: у нас есть очень длинная тема и модер хочет облегчить ее читабельность. Он сворачивает сообщения, которые можно свернуть, в первом из сворачиваемых сообщений пишет название сворачиваемой "подтемы" (например, сворачивается диалог о том, какие слова больше подходят для русификации обсуждаемого мода - модер сворачивает диалог и ставит пометку вроде "Как лучше русифицировать этот мод?"). Теперь при просмотре темы мы видим первое из сворачиваемых сообщений с пометкой "Свернуто: "Как лучше русифицировать этот мод?"", сразу после этого сообщения идет следующее сообщение после последнего сворачиваемого.
При нажатии на "Как лучше русифицировать этот мод?" свернутые сообщения разворачиваются.
На моем форуме это было бы очень полезно - там каждое сообщение длиной тысяч в пять символов.
либо только это сообщение, либо это сообщение и указанное количество последующих, либо (!) список указанных сообщений (я назвал это "виртуальной темой").
Вся фишка в том, чтобы можно было создавать "собственные маршруты" по форуму - и не только линейно, но и пересекая разные темы.
Например, виртуальная тема "самые полезные сообщения форума", в которой в виде стандартного листа сообщений выводятся сообщения из разных тем форума, которые модератор посчитал самыми полезными.
Добавлено спустя 8 минут 8 секунд:
про "мод подсообщений":
что-то вроде ЖЖ-шного "Reply to this" в поле каждого сообщения - то есть на каждом сообщении может произойти развилка на две темы.
Добавлено спустя 7 минут 52 секунды:
не очень понял про "прописать вручную"...edgar писал(а):Только всё это надо прописать вручную? (то есть - модеры пишут)
ну, в целом идея такая: у нас есть очень длинная тема и модер хочет облегчить ее читабельность. Он сворачивает сообщения, которые можно свернуть, в первом из сворачиваемых сообщений пишет название сворачиваемой "подтемы" (например, сворачивается диалог о том, какие слова больше подходят для русификации обсуждаемого мода - модер сворачивает диалог и ставит пометку вроде "Как лучше русифицировать этот мод?"). Теперь при просмотре темы мы видим первое из сворачиваемых сообщений с пометкой "Свернуто: "Как лучше русифицировать этот мод?"", сразу после этого сообщения идет следующее сообщение после последнего сворачиваемого.
При нажатии на "Как лучше русифицировать этот мод?" свернутые сообщения разворачиваются.
На моем форуме это было бы очень полезно - там каждое сообщение длиной тысяч в пять символов.
С уважением, Михаил Кожурин
-
- phpBB 2.0.2
- Сообщения: 306
- Стаж: 20 лет 1 месяц
-
- phpBB 2.0.3
- Сообщения: 396
- Стаж: 19 лет 11 месяцев
- Откуда: tallinn.ee
-
- phpBB 1.2.1
- Сообщения: 23
- Стаж: 19 лет 1 месяц
- Откуда: Москва
будь моя воля, я бы вообще использовал технологию вики (она куда больше отвечает запросам Профессора (заказчика);quazi писал(а):я бы посоветовал вам искать другой форум
проблема в том, что их форуму уже больше года и там накопилось очень много информации - не представляю себе, как я смогу перенести базу на новый движок.
С другой стороны, phpbb-форум хорош тем, что им практически все умеют пользоваться. Половина моих посетителей - люди старше 45 лет (всякие ученые). Для них будет сложно освоить новую технологию "ввода информации в форум".
И потом, почему бы не реализовать эти идеи на движке phpbb?
И о каких других форумных движках идет речь?
Можно ссылочки - посмотреть хочется (может, вдохновит на что-нибудь хорошее и умное)!
С уважением, Михаил Кожурин
-
- phpBB 2.0.2
- Сообщения: 306
- Стаж: 20 лет 1 месяц
http://www.citkit.ru/section/www_communication/sunturner писал(а):И о каких других форумных движках идет речь?
в это смысле действительно хороша. но в вашем случае - это не то.sunturner писал(а):технологию вики
лучше - это наверно
Добавлено спустя 6 минут 52 секунды:sunturner писал(а):реализовать эти идеи на движке phpbb
возникает вопросsunturner писал(а):мод, присваивающий каждому сообщению свой ID для возможности перехода НА СООБЩЕНИЕ через адресную строку браузера.
Проблема в том, что часто хочется сослаться на конкретное сообщение, а не на всю тему.
Выглядеть это должно примерно так: "ссылка на тему"+"номер сообщения в теме".
При переходе по такой ссылке показывается блок сообщений, в котором указанное сообщение - первое.
как вы будете реализовывать чтение предыдущих и последующих постов
очень часто, при чтении конкретного поста возникает желание почитать предыдущий или последующий разговор
ставить "условные" ссылки (с проверкой - вдруг это первый или последний пост)?
перед постом - "читать тему сначала"
после поста - "читать тему дальше"
-
- phpBB 1.2.1
- Сообщения: 23
- Стаж: 19 лет 1 месяц
- Откуда: Москва
Спасибо за ссылку. Я имел ввидуquazi писал(а):http://www.citkit.ru/section/www_communication/
Где можно ознакомиться с этой "идеей нитей"?quazi писал(а):я бы посоветовал вам искать другой форум, который реализует идею нитей (threads), когда тема может развиваться во многих направлениях.
Добавлено спустя 5 минут 50 секунд:
как обычно (правда, я уже описывал, ну да ничего):quazi писал(а):возникает вопрос
как вы будете реализовывать чтение предыдущих и последующих постов
переходим по ссылке на сообщение - выпадает лист сообщений, как в viewtopic.php
указанное сообщение - первое сверху; последующие - как обычно (если у нас стоит "выводить за один раз 20 сообщений, то следующие 19).
предыдущие сообщения - на предыдущей странице.
Основная идея - первыми сообщениями в листе оказываются не 1 -21-41-61 (если разбиваем по 20), а то, на которое ссылаемся!
Это нужно, например, при длинных постах (на моем форуме посты в среднем по 5000 знаков): при медленной связи в первую очередь выводится текст, на который мы ссылаемся - можно не ждать, пока страница загрузится полностью.
Добавлено спустя 6 минут 38 секунд:
ну вот, о чем я говорил!
начальная тема уже разбилась на несколько подтем - и как быть? создавать для каждой свою тему?
перечислю предлагаемые мной для разработки модификации:
1. мод "Усовершенствованного Viewtopic-а": возможность вывода листов сообщений таким образом, чтобы первым на странице выводилось сообщение, на которое мы ссылаемся, а не сообщение, кратное количеству выводимых на страницу;
2. мод "виртуальных тем": возможность создания тем из ссылок на сообщения из разных тем типа "самые полезные сообщения форума" - ссылки на сообщения в таких темах выводятся как сообщения (сообщения-клоны);
3. мод "подсообщений": аналог ЖЖ-шной организации постов (в каждом сообщении может быть поле вроде "View comments" и "Reply to this");
4. мод "перекрестных форумов": "когда тема может развиваться во многих направлениях" (реализация "идеи нитей").
С уважением, Михаил Кожурин
-
- phpBB 2.0.2
- Сообщения: 306
- Стаж: 20 лет 1 месяц
посмотрите как я сослался на свое предыдущее сообщение
http://phpbbguru.net/community/viewtopi ... 9&start=10
вас такая реализация интересует?
такое реализовано на форуме dklab
1. чтение собщений после моего (если я писал туда)
2. чтение нечитанных (если я читал уже эту тему)
но надо перед первым постом добавлять ссылку "читать сначала" или "читать всю тему"
то что я вам показал имеет недостаток - ссылка на тему содержит параметр start=10
http://phpbbguru.net/community/viewtopi ... 9&start=10
вас такая реализация интересует?
такое реализовано на форуме dklab
1. чтение собщений после моего (если я писал туда)
2. чтение нечитанных (если я читал уже эту тему)
но надо перед первым постом добавлять ссылку "читать сначала" или "читать всю тему"
то что я вам показал имеет недостаток - ссылка на тему содержит параметр start=10
Последний раз редактировалось quazi 23.05.2006 19:41, всего редактировалось 2 раза.
-
- phpBB 1.2.1
- Сообщения: 23
- Стаж: 19 лет 1 месяц
- Откуда: Москва
-
- phpBB 2.0.2
- Сообщения: 306
- Стаж: 20 лет 1 месяц
я правил свой предыдущий пост, а вы ответили. перечитайте пост выше
Добавлено спустя 23 минуты 38 секунд:
------------------------------
вот примерно такая инструкция
открыть
найти
перед этим добавить
открыть
найти
перед ним добавить
открыть
найти
перед добавить
Добавлено спустя 3 минуты 6 секунд:
------------------------
мне очень понравился ваш достаточно простой запрос
возможно когда-нибудь это понадобится кому-либо еще (возможно и мне) - переименуйте тему (редактированием вашего первого поста) так чтобы название было адекватно содержимому
мне бы хотелось чтобы эту тему легко можно было найти как через поиск так и через список собственных тем
Добавлено спустя 23 минуты 38 секунд:
------------------------------
вот примерно такая инструкция
открыть
Код: Выделить всё
viewtopic.php
Код: Выделить всё
//
// Does this topic contain a poll?
//
Код: Выделить всё
if ( @$start ) {
$template->assign_block_vars('read_prev_posts', array(
'TEXT_READ_PREV_POSTS' => $lang['read_prev_posts'],
'HREF_READ_PREV_POSTS' => append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&start=0&postdays=$post_days&postorder=$post_order&highlight=$highlight"),
));
}
Код: Выделить всё
templates/subSilver/viewtopic.tpl
Код: Выделить всё
<!-- BEGIN postrow -->
Код: Выделить всё
<!-- BEGIN read_prev_posts -->
<td class="row2"> </td>
<td class="row2" align="center"><a class="genmed" href="{read_prev_posts.HREF_READ_PREV_POSTS}">{read_prev_posts.TEXT_READ_PREV_POSTS}</a></td>
<!-- END read_prev_posts -->
Код: Выделить всё
language/lang_russian/lang_main.php
Код: Выделить всё
?>
Код: Выделить всё
$lang['read_prev_posts'] = 'Читать всю тему';
------------------------
мне очень понравился ваш достаточно простой запрос

возможно когда-нибудь это понадобится кому-либо еще (возможно и мне) - переименуйте тему (редактированием вашего первого поста) так чтобы название было адекватно содержимому
мне бы хотелось чтобы эту тему легко можно было найти как через поиск так и через список собственных тем
Последний раз редактировалось quazi 23.05.2006 20:31, всего редактировалось 1 раз.