Настоящие board powered by smf. Первые шаги в поисковой оптимизации Simple Machines Forum: удаляем копирайт и внешние ссылки

30.12.2022

Все знают, что я просто жить не могу без Джумла, но, на мой взгляд, хорошего форума в компонентах у нет. Поэтому я и работаю с форумными движками. Один из новых, которые я только недавно начал использовать, является Начинаем новую категорию 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/

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

    #!/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 апдейта), так что лучше не тратить тут время, если только вас не интересуют переходы.

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

    Ну что же, начнем давать маленькие советы по оптимизации и продвижении сайтов (форумов) на 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 - так на месте анкоров могут появится "кракозяблы" (квадратики, и другие непонятные символы).

    © beambot.ru, 2024
    Компьютер для начинающих