Помощь: Просмотр темы. Обзор форумных CMS Изобилии board powered by smf

Начнем сразу с кода основного скрипта:

#!/usr/bin/perl

# which-forum.pl script
# (c) 2010 Alexandr A Alexeev, http://сайт/

use strict;

# закомментированные строки - для строгости
# если задача - собрать статистику движков, оставить как есть
# если составить список форумов - раскомментировать

my $data ;
$data .= $_ while (<> ) ;

# проверить, сколько было Powered by phpBB без ссылки в подвале
print "phpbb\n "
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/i or
# $data =~ /viewforum\.php\?[^""]*f=\d+/i or
$data =~ /phpBB\-SEO/i or
$data =~ /) ;
print "ipb\n "
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*>[^<]*IP\.Board/i or
$data =~ /]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision Power Board/i or
$data =~ /

/i or
$data =~ /index\.php\?[^""]*showforum=\d+/i ) ;
print "vbulletin\n "
if ($data =~ /Powered by:?[^<]+vBulletin[^<]+(?:Version)?/i or
$data =~ /) ;
print "smf\n "
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>Powered by SMF/i or
$data =~ /index\.php\?[^""]*board=\d+\.0/i ) ;
print "punbb\n "
if ($data =~ /]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/?"[^>]*>PunBB/i ) ; #or
# $data =~ /viewforum\.php\?[^""]*id=\d+/i);
print "fluxbb\n "
# if($data =~ /viewtopic\.php\?id=\d+/i or
if ( $data =~ /]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i ) ;
print "exbb\n "
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i ) ; # or
# $data =~ /forums\.php\?[^""]*forum=\d+/i);
print "yabb\n "
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/i or
$data =~ /YaBB\.pl\?[^""]*num=\d+/i ) ;
print "dleforum\n "
if ($data =~ /\(Powered By DLE Forum\)<\/title>/i or
$data =~ /]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=copyright)[^"]*">DLE Forum<\/a>/i ) ;
print "ikonboard\n "
if ($data =~ /]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/i or
$data =~ /\n "
if ($data =~ /\n "
# if($data =~ /forums\.php\?fid=\d+/i or
# $data =~ /topic\.php\?fid=\d+/i or
if ($data =~ /]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i ) ;
print "stokesit\n "
# if($data =~ /forum\.php\?f=\d+/i or
if ($data =~ /]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*Stokes IT/i ) ;
print "podium\n "
# if($data =~ /topic\.php\?t=\d+/i or
if ($data =~ /]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Podium/i ) ;
print "usebb\n "
# if($data =~ /forum\.php\?id=\d+/i or
if ($data =~ /]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>UseBB/i ) ;
print "wrforum\n "
# if($data =~ /index\.php\?fid=\d+/i or
if ($data =~ /]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Forum/i ) ;
print "yetanotherforumnet\n "
if ($data =~ /Yet Another Forum\.net/i or
$data =~ /default\.aspx\?g=posts&t=\d+/i ) ;

Этот и другие скрипты, упомянутые в посте, вы найдете в этом архиве .

Скрипт which-forum.pl изучает код html-страницы на предмет наличия в нем сигнатур форумного движка. Аналогичный прием мы использовали при определении WordPress и Joomla , но есть пара отличий. Во-первых, сам скрипт не загружает код страницы, а читает его из stdin или файла, переданного в качестве аргумента. Это позволяет загрузить страницу один раз, к примеру, с помощью wget, а затем прогнать ее через несколько анализаторов, если у нас их не один. Во-вторых, в данном скрипте наличие сигнатуры является 100% признаком движка. В прошлый раз наличие сигнатуры лишь придавало веса соответствующему движку и «выигрывал» движок с наибольшим весом. Я решил, что в данном случае такой подход лишь напрасно усложнит код.

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

Для получения списка форумов я воспользовался своим парсером Google . Поисковой системе посылались запросы типа

site:forum.*.ru
site:talk.*.ru
site:board.*.ru
site:smf.*.ru
site:phpbb.*.ru
....

и так далее. Полный код генератора запросов вы найдете в файле gen-forumsearch-urls.pl . Помимо зоны.ru также использовались.su .ua .kz и.by. В прошлый раз провести такое исследование было затруднительно, поскольку сайты на WordPress и Joomla не имеют подобных сигнатур в URL. Каталоги типа cmsmagazine.ru/catalogue/ не обеспечивают достаточного объема выборки. Что такое 600 сайтов на Drupal?

Надо признать, результаты эксперимента меня огорчили. Из 12590 исследуемых сайтов только на 7083 движок был определен успешно, то есть лишь в 56% случаев. Может быть, я не учел какой-нибудь движок? Неужто на половине форумов стоял Bitrix? Или мне стояло больше времени уделить поиску сигнатур? В общем, тут требуются дополнительные исследования.

Среди 56% успешно опознанных движков самыми популярными, как и следовало ожидать, оказались IPB (31%), phpBB (26,6%) и vBulletin (26,5%)

За ними с большим отставанием следуют SMF (5,8%) и DLEForum (5,3%). Мой любимый punBB оказался лишь на 6-м месте (1,64%). Я не советовал бы сильно доверять этим цифрам (мол, каждый третий форум в рунете работает на IPB), но определенные выводы сделать, конечно, можно.

Например, если вы намерены делать сайт на форумном движке и планируете модифицировать форум, скажем, платить пользователям по 0.01$ за каждое сообщение с автоматическим выводом средств раз в неделю, то вам следует выбрать один из трех наиболее популярных движков. Чем популярнее форум, тем больше шансов найти программиста, который хорошо в нем разбирается.

Если же существенных изменений в движке не предвидится, то возможно имеет смысл выбрать не самый популярный движок, например SMF или punBB. Этим вы уменьшите число хакерских атак на свой форум и количество автоматически рассылаемого на нем спама.

Скриптам для поиска/определения форумов также можно найти не одно практическое применение. Первое, что пришло лично мне в голову — это отсортировать по тИЦ опознанные форумы и разместить на первой сотне посты с ссылками на один из своих сайтов. Однако сотня форумных dofolllow-ссылок никак не повлияла на тИЦ (прошло 2 апдейта), так что лучше не тратить тут время, если только вас не интересуют переходы.

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

Выбрав для просмотра конкретную тему, пользователи попадают на страницу со списком сообщений в этой теме.

Каждое отдельное сообщение обычно выглядит вот так:

Обычно вдоль верхней и нижней части каждой страницы отображается небольшое меню, содержащее (в зависимости от настроек форума) следующие кнопки:

  • Ответ - Самая популярная кнопка, с помощью которой пользователи могут оставлять новые сообщения в теме.
  • Уведомлять - Подписка на получение уведомлений о появлении новых сообщений в данной теме.
  • Отметить непрочитанной - Можно пометить текущую тему как непрочитанную.
  • Отправить эту тему - Можно переслать ссылку на текущую тему своему другу/знакомому, указав его e-mail.
  • Печать - Создание печатной версии страницы с содержанием текущей темы, для просмотра перед печатью.

Как правило, список сообщений в теме отображается в вертикальном порядке: старые сообщения вверху, новые внизу. Но каждый пользователь может в своем профиле установить иной, горизонтальный порядок. Тогда новые сообщения будут размещаться вверху. Каждое сообщение в списке разделено на две секции. В левой секции содержится краткая информация об авторе сообщения, а в правой - само сообщение.

  • Информация об авторе
    • Автор сообщения - Ник пользователя (или гостя), оставившего данное сообщение.
    • Подпись над аватаром - В зависимости от настроек форума, пользователи могут иметь заранее созданные надписи над аватарами или могут установить их самостоятельно. Обычно эта подпись служит для индивидуальной «маркировки» пользователей.
    • Основная группа - Чаще всего все пользователи находятся в группе Обычные пользователи, название которой не отображается. Если же группа любая другая, её название будет отображаться в данном месте. Если автор сообщения - гость, пометка об этом также будет выведена здесь.
    • Группа, основанная на кол-ве сообщений - В зависимости от количества оставленных сообщений пользователи распределяются по разным группам (Новичок, Постоялец и т. п.). Название этой группы может не отображаться, если пользователь входит в специальную группу либо её отображение отключено в настройках текущей темы оформления.
    • Эмблема - Обычно количество изображений в эмблеме устанавливают в зависимости от ранга группы (например, у новичков 1 звездочка, у продвинутых пользователей три, у ветеранов пять), либо используют разные изображения для разных групп.
    • Количество сообщений - Отображение текущего количества сообщений конкретного пользователя.
    • Иконки для связи с автором - Вывод разнообразных иконок, помогающих тем или иным образом связаться с автором сообщения: ссылка на профиль, ссылка на сайт, номер ICQ, e-mail, отправка личного сообщения.
  • Блок сообщения
    • Иконка сообщения - Индивидуальная иконка, выбираемая автором при создании/отправке сообщения.
    • Тема сообщения - Заголовок сообщения обычно совпадает с названием темы, однако по желанию автора сообщения может быть изменен на любой другой.
    • Панель кнопок - В верхней части каждого сообщения, в правом углу, выводится ряд кнопок, позволяющих осуществить те или иные быстрые действия над текстом сообщения: процитировать, изменить, удалить и пр. (в зависимости от настроек и установленных модов). Чаще всего отображается кнопка "Цитировать", все остальные кнопки доступны только автору конкретного сообщения, а также модераторам и администраторам.
    • Дата и время - Дата и время публикации сообщения отображаются непосредственно под его темой. Предупреждение о последующем редактировании сообщения будет выведено под его содержанием и над подписью автора.
    • Текст - Содержание сообщения (если нет сообщений, то зачем форум?)
    • Подпись - Если пользователь указал в профиле свою подпись, она будет отображаться здесь, под текстом сообщения.
    • Сообщить модератору - О каждом конкретном сообщении можно быстро сообщить модераторам (например, пожаловаться, если в сообщении использован мат).
    • Записан - Пометка, означающая, что IP-адрес компьютера, использованного пользователем или гостем при отправке сообщения, сохранен в логах (в базе данных). Для администраторов (и для тех, кому это разрешено) рядом с этой пометкой отображается и сам IP.

Хотя это и наиболее распространённые элементы сообщений при просмотре тем, пользователи могут скрыть некоторые из них, отредактировав свои профили.

Browse to the board where you wish to post and click the New Topic button (positioned by default at both the top and the bottom of the board, as shown in the ), which should take you to the Start new topic screen. While this presents a number of options, the two most important are the Subject field and main Message field (not labeled as such, but obvious by its size). So enter your subject and start to type (or paste) your message into the main text area, noting that a message missing either a subject or a body will not be accepted for posting until it has both. If you"re happy with your plain text message, you can then post it by clicking the Post button and/or preview it first by clicking the Preview button, but there are many further available to make things that little bit more interesting.

  • Some forums show the navigation tree at the top in a space-saving horizontal mode.
  • Some forums may be configured to offer an additional Spell Check button alongside the Post and Preview options.

Starting a New Poll

A poll is basically a topic with an added question and voting options, started by clicking New Poll instead of New Topic . To post a poll it is necessary to fill out the Question field and at least two of the Option fields in addition to the Subject and Message fields required by a standard topic. Further options to configure how many choices the user may vote for, how long the poll should run, whether users can change their votes and what conditions must be fulfilled for the results to be displayed should be self-explanatory.

To offer more than five choices in a poll, simply click Add Option as many times as necessary.

Note that it may also be possible for some users in some forums to add a poll to an existing topic.

Posting an Event to the Calendar

Where this option has been configured (it"s not standard "out of the box"), you can post an event by selecting Calendar from the followed by Post Event from the calendar screen. What you see now is a Start new topic screen with supplementary fields for the event title, date and target board, which simply add your event to the calendar and create a link back to your post in that board.

Replying to a Topic or Poll

Replying to a topic or poll is basically the same as , but it"s not necessary to enter anything in the Subject field unless you wish to change what"s already there. To vote in a poll, you simply have to select your chosen option(s) and click Submit Vote .

If "Quick Reply" has been enabled, a simple reply field will also appear after the post(s) on a page, but you"ll have to type your and manually if you choose to use it.

Quoting a Post

To reply to a post by quoting it, you can either click the Quote button for the relevant post and add your own message to the quoted text or click the Reply button followed by Insert Quote from the relevant post in the "Topic Summary" below, but note that:

  • Both these options add a link to the original post showing the name of the poster and the date and time of the post, whereas the quote tag simply quotes the relevant post without this additional information.
  • You can also retain or add the "author" attribute independently of the full Quote function, as demonstrated in the below.

Modifying or Deleting a Post

To modify a post, click the Modify button and make your changes. Note that most forums are likely to be configured to show the date and time of the last edit, but the administrator(s) may also allow a short period to elapse before this happens.

To delete a post, click the Delete button followed by OK from the Remove this message? box that appears. Some forums may also allow you to remove topics or polls that you start, but the buttons for these are usually at the bottom of the page.

Standard Posting Options

Notify me of replies

Check this to subscribe to email notification for the topic.

Return to this topic

Check this to return to the topic (instead of the message index) after posting (NB you can also set this behavior as a preference in your profile).

Don"t use smileys

Check this to prevent certain in your post from being parsed and rendered as smileys.

Attachments

If enabled, this feature allows you to attach files to your posts in much the same way as most email clients, so you simply have to browse to the relevant file(s) on your computer before clicking Post . You can delete your attachment(s) or add more by , but please note that:

  • The permitted file types and sizes are set by the forum administrator(s).
  • Although most forums are likely be configured to display attached images as part of the post, it"s not possible to preview attachments so you should always browse to and attach your files just before you finally post your message.

References

SMF Bulletin Board Code

The buttons shown belong to the SMF default theme and may differ from forum to forum.

Tag Name Button Code Output Comments
Bold [b]bold bold *
*
*
*
Glow glow The three attributes (eg red, 2, 50) in the "glow" tag are color, strength and width respectively.
The two attributes (eg red, left) in the "shadow" tag are color and direction respectively.
move move Not valid XHTML, but can also be used for images!
Simple
Machines
Forum
Simple Machines Forum Preserves critical text formatting, rendered in a monospace font.
left align *
centered *
right align *
Right-to-Left * right to left! Typical usage would be to post Arabic or Hebrew in an English document.
Left-to-Right * left to right! Typical usage would be to post English in an Arabic or Hebrew document.
*
font size *
font face Only fonts installed on the user"s computer will be displayed, so use with caution!
Font Color Change Color Black Red Yellow Pink Green Orange Purple Blue Beige Brown Teal Navy Maroon Lime Green red red Select the color from the drop-down.

http://somesite/somefile.swf
http://somesite/somefile.swf Please note that, if embedded Flash has been disabled by the forum administrator(s), the Flash file will appear as a straight hyperlink as shown here. The two attributes in the "flash" tag (where relevant) are width and height respectively.

http://somesite/image.gif
Type the width and height attributes to resize the image.

http://somesite/image.gif
http://somesite/ http://somesite/ NB the "url" tag opens in a new window, but you can type "iurl" tags to open in the same window.

descriptive link
descriptive link

someone@somesite
someone@somesite *

ftp://somesite/somefile
ftp://somesite/somefile *

descriptive link
descriptive link
* No meaningful output from the "table" tags alone.
* No meaningful output from the "table" and "tr" tags alone.

content
content
Note the correct nesting of the tags, so the "table" tags contain the "tr" tags, which each contain an equal number of "td" tags!
SMF
Bulletin
Board
Code
SMF Bulletin
Board Code
superscript *
subscript *
teletype Monospace font.
[O]circle :(
Shocked :o
Cool 8)
Huh ???
Roll Eyes ::)
Tongue :P
Embarrassed :-[
Lips Sealed :-X
Undecided :-\
Kiss :-*
Cry :"(

Please note that not all of the smiley codes will be correctly parsed and converted to images unless their opening spaces are present.

Все знают, что я просто жить не могу без Джумла, но, на мой взгляд, хорошего форума в компонентах у нет. Поэтому я и работаю с форумными движками. Один из новых, которые я только недавно начал использовать, является Начинаем новую категорию SMF, надеюсь, с полезного материала. Начинаем с малого, ну и как новички очень полезного.

Первые шаги в поисковой оптимизации Simple Machines Forum: удаляем копирайт и внешние ссылки

Сразу оговорюсь, что я работаю только smf 2 и данная статья будет относится именно к данной версии бесплатного форумного движка.

И так, постоянные читатели знают как сильно я не люблю ставить по "10" внешних ссылок на официальные сайты движков, в том числе и форумных. Именно поэтому первым делом удаляем копирайт и целых 4, внимание 4 внешних ссылки вида "SMF 2.0.2 | Simple Machines | SMF © 2011 | XHTML " ! Для этого подключаемся к сайту по FTP forum/Themes/название Вашей темы оформления / и редактируем файл index.template.php . Естественно в самом низу находится код (около 330 строки), который выводят так не любимые нам внешние ссылки. Поэтому удаляем: "

  • ", theme_copyright(), "
  • " и "
  • ", $txt["xhtml"], "
  • ". Вот все так просто и лекго. В ближайших публикациях ждите новых материалов по продвижжению и оптимизации форумов на SMF/

    Ну что же, начнем давать маленькие советы по оптимизации и продвижении сайтов (форумов) на phpBB. В данном случае мы проведем небольшой хак, который поможет избавиться от внешней ссылки вида "Powered by phpBB © ...". В данной публикации мы рассмотрим 2 способа, с помощью которых можно это сделать - прием для phpBB 3.x.x .

    Удаляем внешнюю ссылку Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group и Русская поддержка phpBB

    Первый способ удаления внешней ссылки с надписью Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group . И так, самый легкий способ - удалить с помощью панели администратора. Заходим в административную панель, переходим в пункт меню "Стили", слева видим панель, где расположен блок в меню, нас интересует блок "Компоненты стилей", а в нем "Шаблоны". По стандарту в предложенном окне мы увидим следующие: prosilver и subsilver2, хотя моуг быть и другие, если Вы их устанавливали. В общем не суть. Из преложенного набора выбираем используемый по умолчанию. Нажимаем на кнопку "изменить" рядом с шаблоном. Далее появляется окно с предложением "Выбрать файл шаблона". Далее выбираем "Файл шаблона" - "overall_footer.html". Ниже появляется HTML редактор. Находим следующий код: "Powered by phpBB 2000, 2002, 2005, 2007 phpBB Group " и просто удалем, хотя можно и установить свою ссылку и надпись. "
    {TRANSLATION_INFO}
    " (который находится ниже, также можно удалить) - это код отвечает за локализацию например внешнюю ссылку с надписью "Русская поддержка phpBB".

    Второй способ удаления внешней ссылки с надписью Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group . Этот способ аналогичен, но мы подключаемся к сайту по пратаколу ftp. Переходим по следующему пути styles/имя_шаблона/template/overall_footer.html. И редактируем тот же код, который редактировали мы выше. Если будете изменять код, то не забудьте установить кодировку UTF - так на месте анкоров могут появится "кракозяблы" (квадратики, и другие непонятные символы).