В прошлой статье мы рассматривали часть форумов на движке phpBB и в этой продолжим это занятие. По результатам прошлой статьи мы смогли закрыть внешние ссылки от индексации в сообщениях и подписях профиля. А что если пойти дальше ?? Так давайте вообще на всем форуме закроем индексацию. Даешь блокировку спаму Как известно в личном разделе можно указать сайт, ничего не мешает злоумышленнику указать там ссылку на свой ресурс. На страницах тем и сообщений мы эту ссылку уже обезвредили, но ведь она показывается не только там, а еще в подробной информации о пользователе и в мембер листе (он же список пользователей). Начнем с первого. Переходим по излюбленному пути C:\styles\[название вашего шаблона]\template и находим файл memberlist_view.html. В этом файле прописано отображение подробной информации о пользователе. Ищем строку:
1 |
<!-- IF U_WWW --><dt>{L_WEBSITE}:</dt> <dd><a href="{U_WWW}" title="{L_VISIT_WEBSITE}: {U_WWW}">{U_WWW}</a></dd><!-- ENDIF --> |
Добавляем в эту строку, полюбившуюся нам пару, тэг <noindex></noindex> и атрибут rel=”nofollow”:
1 |
<!-- IF U_WWW --><dt>{L_WEBSITE}:</dt> <dd><noindex><a rel="nofollow" href="{U_WWW}" title="{L_VISIT_WEBSITE}: {U_WWW}">{U_WWW}</a></noindex></dd><!-- ENDIF --> |
Если не нужно показывать эту ссылку вообще, то удаляем ее или закомментируем.
Легкий бонус, в том же блоке, где находится эта строка, приютились еще ICQ, Jabber, MSN и т.д. С ними можно сделать что и с ссылкой на сайт:
1 2 3 4 5 6 7 8 9 |
<!-- IF U_EMAIL --><dt>{L_EMAIL_ADDRESS}:</dt> <dd><noindex><a rel="nofollow" href="{U_EMAIL}">{L_SEND_EMAIL_USER} {USERNAME}</a></noindex></dd><!-- ENDIF --> <!-- IF U_WWW --><dt>{L_WEBSITE}:</dt> <dd><noindex><a rel="nofollow" href="{U_WWW}" title="{L_VISIT_WEBSITE}: {U_WWW}">{U_WWW}</a></noindex></dd><!-- ENDIF --> <!-- IF U_PM --><dt>{L_PM}:</dt> <dd><noindex><a rel="nofollow" href="{U_PM}">{L_SEND_PRIVATE_MESSAGE}</a></noindex></dd><!-- ENDIF --> <!-- IF U_MSN or USER_MSN --><dt>{L_MSNM}:</dt> <dd><!-- IF U_MSN --><noindex><a rel="nofollow" href="{U_MSN}" onclick="popup(this.href, 550, 320); return false;">{L_SEND_MSNM_MESSAGE}</a></noindex><!-- ELSE -->{USER_MSN}<!-- ENDIF --></dd><!-- ENDIF --> <!-- IF U_YIM or USER_YIM --><dt>{L_YIM}:</dt> <dd><!-- IF U_YIM --><noindex><a rel="nofollow" href="{U_YIM}" onclick="popup(this.href, 780, 550); return false;">{L_SEND_YIM_MESSAGE}</a></noindex><!-- ELSE -->{USER_YIM}<!-- ENDIF --></dd><!-- ENDIF --> <!-- IF U_AIM or USER_AIM --><dt>{L_AIM}:</dt> <dd><!-- IF U_AIM --><noindex><a rel="nofollow" href="{U_AIM}" onclick="popup(this.href, 550, 320); return false;">{L_SEND_AIM_MESSAGE}</a></noindex><!-- ELSE -->{USER_AIM}<!-- ENDIF --></dd><!-- ENDIF --> <!-- IF U_ICQ or USER_ICQ --><dt>{L_ICQ}:</dt> <dd><!-- IF U_ICQ --><noindex><a rel="nofollow" href="{U_ICQ}" onclick="popup(this.href, 550, 320); return false;">{L_SEND_ICQ_MESSAGE}</a></noindex><!-- ELSE -->{USER_ICQ}<!-- ENDIF --></dd><!-- ENDIF --> <!-- IF U_JABBER and S_JABBER_ENABLED --><dt>{L_JABBER}:</dt> <dd><noindex><a rel="nofollow" href="{U_JABBER}" onclick="popup(this.href, 550, 320); return false;">{L_SEND_JABBER_MESSAGE}</a></noindex></dd><!-- ELSEIF USER_JABBER --><dt>{L_JABBER}:</dt> <dd>{USER_JABBER}</dd><!-- ENDIF --> <!-- IF S_PROFILE_FIELD1 --> |
Теперь перейдем к другому пункту. В той же папке ищем файлик memberlist_body.html. Здесь то как раз и содержится отображение списка пользователей. Начинаем редактировать файл, ищем строчку:
1 |
<td><!-- IF memberrow.U_WWW or memberrow.LOCATION --><!-- IF memberrow.U_WWW --><div><a href="{memberrow.U_WWW}" title="{L_VISIT_WEBSITE}: {memberrow.U_WWW}">{memberrow.U_SHORT_WWW}</a></div><!-- ENDIF --><!-- IF memberrow.LOCATION --><div>{memberrow.LOCATION}</div><!-- ENDIF --><!-- ELSE --> <!-- ENDIF --></td> |
Как обычно, если нужно чтобы ссылки вообще не было, то комментируем или удаляем, но тут нужна внимательности, потому что:
1 |
<!-- IF memberrow.U_WWW or memberrow.LOCATION --><!-- IF memberrow.U_WWW --><div><a href="{memberrow.U_WWW}" title="{L_VISIT_WEBSITE}: {memberrow.U_WWW}">{memberrow.U_SHORT_WWW}</a></div><!-- ENDIF --> |
Показывает именно ссылку на сайт, а:
1 |
<!-- IF memberrow.LOCATION --><div>{memberrow.LOCATION}</div><!-- ENDIF --><!-- ELSE --> <!-- ENDIF --> |
Просто выводит название указанного пользователем места. А если надо просто скрыть от индексирования, добавляем:
1 |
<td><!-- IF memberrow.U_WWW or memberrow.LOCATION --><!-- IF memberrow.U_WWW --><div><noindex><a rel="nofollow" href="{memberrow.U_WWW}" title="{L_VISIT_WEBSITE}: {memberrow.U_WWW}">{memberrow.U_SHORT_WWW}</a></noindex></div><!-- ENDIF --><!-- IF memberrow.LOCATION --><div>{memberrow.LOCATION}</div><!-- ENDIF --><!-- ELSE --> <!-- ENDIF --></td> |
Вот и все, теперь ссылки в списке пользователей и в подробной информации о пользователе нам не страшны. Таким образом индексация внешних ссылок на всем форуме закрыта.
В догоночку: если после изменений файлов ничего не поменялось удалите все кэш файлы и обновите страницу. Это можно сделать удалив все файлы из папки cache. На этом откланиваюсь, удачного всем ведения форума
Спасибо за пост, увидел все в действии. Правда с самой темой бы поспорил: не всегда правильно закрывать комментарии в noindex. Особенно, если есть возможность постоянного парсинга и редактирования комментариев.
1- это непрерывно обновляющийся контент/ страница
2- исходя из пункта 1 – это увеличение символов на странице и в дальнейшем хороший процент Text/HTML ratio.
P.S. У Вас форма для заполнения комментариев очень узкая -текст не видно. Извините за замечание.