Вывод html через AJAX для скрытия ненужного контента от роботов

 • Просмотры: 667
dm
dmitrogen
Благодарил (а): 3 раза
Сообщения: 48
Зарегистрирован: 27 авг 2012, 23:03
Сообщение

Вывод html через AJAX для скрытия ненужного контента от роботов

28 янв 2014, 18:38

Например в overall_header.html нужно скрыть блок с сылками от ботов, чтобы вес направить куда нужно, а то он уходит в никуда. Уже давно ясно что nofollow бесполезен.
Хочу скрыть:

Код: Выделить всё

<div class="navbar" style="margin-bottom:5px;">
			<div class="inner"><span class="corners-top"><span></span></span>

			<ul class="linklist navlinks">
				<li class="icon-home"><!-- IF U_PORTAL --><a href="{U_PORTAL}">{L_PORTAL}</a> &#187; <!-- ENDIF --><a href="{U_INDEX}" accesskey="h">{L_INDEX}</a> <!-- BEGIN navlinks --> <strong>&#8249;</strong> <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></li>


				<!-- IF U_EMAIL_TOPIC --><li class="rightside"><a href="{U_EMAIL_TOPIC}" title="{L_EMAIL_TOPIC}" class="sendemail">{L_EMAIL_TOPIC}</a></li><!-- ENDIF -->
				<!-- IF U_EMAIL_PM --><li class="rightside"><a href="{U_EMAIL_PM}" title="{L_EMAIL_PM}" class="sendemail">{L_EMAIL_PM}</a></li><!-- ENDIF -->
				<!-- IF U_PRINT_TOPIC --><li class="rightside"><a href="{U_PRINT_TOPIC}" title="{L_PRINT_TOPIC}" accesskey="p" class="print">{L_PRINT_TOPIC}</a></li><!-- ENDIF -->
				<!-- IF U_PRINT_PM --><li class="rightside"><a href="{U_PRINT_PM}" title="{L_PRINT_PM}" accesskey="p" class="print">{L_PRINT_PM}</a></li><!-- ENDIF -->
			</ul>

			<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
			<ul class="linklist leftside">
				<li class="icon-ucp">
					<a href="{U_PROFILE}" title="{L_PROFILE}" accesskey="e">{L_PROFILE}</a>
						<!-- IF S_DISPLAY_PM --> (<a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}</a>)<!-- ENDIF -->
					<!-- IF S_DISPLAY_SEARCH --> &bull;
					<a href="{U_SEARCH_SELF}">{L_SEARCH_SELF}</a>
					<!-- ENDIF -->
					<!-- IF U_RESTORE_PERMISSIONS --> &bull;
					<a href="{U_RESTORE_PERMISSIONS}">{L_RESTORE_PERMISSIONS}</a>
					<!-- ENDIF -->
				</li>
			</ul>
			<!-- ENDIF -->

			<ul class="linklist rightside">
				<!-- IF S_DISPLAY_SEARCH and not S_IN_SEARCH --><li class="icon-faq"><a href="{U_SEARCH}" title="{L_SEARCH_ADV_EXPLAIN}">{L_SEARCH_ADV}</a></li><!-- ENDIF -->
				<li class="icon-faq"><a href="{U_FAQ}" title="{L_FAQ_EXPLAIN}">{L_FAQ}</a></li>
				<!-- IF not S_IS_BOT -->
					<!-- IF S_DISPLAY_MEMBERLIST --><li class="icon-members"><a href="{U_MEMBERLIST}" title="{L_MEMBERLIST_EXPLAIN}">{L_MEMBERLIST}</a></li><!-- ENDIF -->
					<!-- IF not S_USER_LOGGED_IN and S_REGISTER_ENABLED and not (S_SHOW_COPPA or S_REGISTRATION) --><li class="icon-register"><a href="{U_REGISTER}">{L_REGISTER}</a></li><!-- ENDIF -->
					<li class="icon-logout"><a href="{U_LOGIN_LOGOUT}" title="{L_LOGIN_LOGOUT}" accesskey="x">{L_LOGIN_LOGOUT}</a></li>
				<!-- ELSE -->
					<li class="icon-logout"><a href="{U_LOGIN}" title="{L_LOGIN}" accesskey="x">{L_LOGIN}</a></li>
				<!-- ENDIF -->
			</ul>

			<span class="corners-bottom"><span></span></span></div>
		</div>
Подружаю в overall_header.html

Код: Выделить всё

<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js?ver=2.0.2'></script>
<script type='text/javascript' src='http://site.ru/ajax.js'></script>
В ajax.js:

Код: Выделить всё

(function($) {
$(function() {
  $("#navbar").load("сюда прописываю путь к файлу .html c кодом для navbar");
})
})(jQuery)
Вместо

Код: Выделить всё

<div class="navbar" style="margin-bottom:5px;">
			<div class="inner"><span class="corners-top"><span></span></span>

			<ul class="linklist navlinks">
				<li class="icon-home"><!-- IF U_PORTAL --><a href="{U_PORTAL}">{L_PORTAL}</a> &#187; <!-- ENDIF --><a href="{U_INDEX}" accesskey="h">{L_INDEX}</a> <!-- BEGIN navlinks --> <strong>&#8249;</strong> <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></li>


				<!-- IF U_EMAIL_TOPIC --><li class="rightside"><a href="{U_EMAIL_TOPIC}" title="{L_EMAIL_TOPIC}" class="sendemail">{L_EMAIL_TOPIC}</a></li><!-- ENDIF -->
				<!-- IF U_EMAIL_PM --><li class="rightside"><a href="{U_EMAIL_PM}" title="{L_EMAIL_PM}" class="sendemail">{L_EMAIL_PM}</a></li><!-- ENDIF -->
				<!-- IF U_PRINT_TOPIC --><li class="rightside"><a href="{U_PRINT_TOPIC}" title="{L_PRINT_TOPIC}" accesskey="p" class="print">{L_PRINT_TOPIC}</a></li><!-- ENDIF -->
				<!-- IF U_PRINT_PM --><li class="rightside"><a href="{U_PRINT_PM}" title="{L_PRINT_PM}" accesskey="p" class="print">{L_PRINT_PM}</a></li><!-- ENDIF -->
			</ul>

			<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
			<ul class="linklist leftside">
				<li class="icon-ucp">
					<a href="{U_PROFILE}" title="{L_PROFILE}" accesskey="e">{L_PROFILE}</a>
						<!-- IF S_DISPLAY_PM --> (<a href="{U_PRIVATEMSGS}">{PRIVATE_MESSAGE_INFO}</a>)<!-- ENDIF -->
					<!-- IF S_DISPLAY_SEARCH --> &bull;
					<a href="{U_SEARCH_SELF}">{L_SEARCH_SELF}</a>
					<!-- ENDIF -->
					<!-- IF U_RESTORE_PERMISSIONS --> &bull;
					<a href="{U_RESTORE_PERMISSIONS}">{L_RESTORE_PERMISSIONS}</a>
					<!-- ENDIF -->
				</li>
			</ul>
			<!-- ENDIF -->

			<ul class="linklist rightside">
				<!-- IF S_DISPLAY_SEARCH and not S_IN_SEARCH --><li class="icon-faq"><a href="{U_SEARCH}" title="{L_SEARCH_ADV_EXPLAIN}">{L_SEARCH_ADV}</a></li><!-- ENDIF -->
				<li class="icon-faq"><a href="{U_FAQ}" title="{L_FAQ_EXPLAIN}">{L_FAQ}</a></li>
				<!-- IF not S_IS_BOT -->
					<!-- IF S_DISPLAY_MEMBERLIST --><li class="icon-members"><a href="{U_MEMBERLIST}" title="{L_MEMBERLIST_EXPLAIN}">{L_MEMBERLIST}</a></li><!-- ENDIF -->
					<!-- IF not S_USER_LOGGED_IN and S_REGISTER_ENABLED and not (S_SHOW_COPPA or S_REGISTRATION) --><li class="icon-register"><a href="{U_REGISTER}">{L_REGISTER}</a></li><!-- ENDIF -->
					<li class="icon-logout"><a href="{U_LOGIN_LOGOUT}" title="{L_LOGIN_LOGOUT}" accesskey="x">{L_LOGIN_LOGOUT}</a></li>
				<!-- ELSE -->
					<li class="icon-logout"><a href="{U_LOGIN}" title="{L_LOGIN}" accesskey="x">{L_LOGIN}</a></li>
				<!-- ENDIF -->
			</ul>

			<span class="corners-bottom"><span></span></span></div>
		</div>
вставляю

Код: Выделить всё

<div id="navbar"></div>
и не работает...что не так ?
обычный текст выводится...
US
USER57
Откуда: от туда
Благодарил (а): 49 раз
Поблагодарили: 72 раза
Сообщения: 610
Зарегистрирован: 28 авг 2010, 20:18
Сообщение

Вывод html через AJAX для скрытия ненужного контента от роботов

28 янв 2014, 18:55

dmitrogen писал(а):и не работает...что не так ?
обычный текст выводится...
А чем не устраивает стандартная переменная :?:

Код: Выделить всё

<!-- IF not S_IS_BOT -->код который скрыть от ботов<!-- ENDIF --> 
http://star-anime.ru
dm
dmitrogen
Благодарил (а): 3 раза
Сообщения: 48
Зарегистрирован: 27 авг 2012, 23:03
Сообщение

Вывод html через AJAX для скрытия ненужного контента от роботов

28 янв 2014, 19:15

USER57 писал(а):А чем не устраивает стандартная переменная :?:

Код: Выделить всё

<!-- IF not S_IS_BOT -->код который скрыть от ботов<!-- ENDIF -->
Роботы на неё никакого внимания не обращают...тоже и с robots.txt, JavaScript тоже читают, если он в html
Как вынести за пределы html ?
US
USER57
Откуда: от туда
Благодарил (а): 49 раз
Поблагодарили: 72 раза
Сообщения: 610
Зарегистрирован: 28 авг 2010, 20:18
Сообщение

Вывод html через AJAX для скрытия ненужного контента от роботов

28 янв 2014, 20:11

dmitrogen писал(а):Роботы на неё никакого внимания не обращают...тоже и с robots.txt, JavaScript тоже читают, если он в html
Как вынести за пределы html ?
Так AJAX тоже теперь не поможет.
Теперь Google выполняет AJAX и сложный JavaScript, индексируя больше контента
Статья http://devaka.ru/articles/google-indexing-ajax.
http://star-anime.ru
Аватара пользователя
PPK
Администратор
Благодарил (а): 82 раза
Поблагодарили: 1621 раз
Сообщения: 10284
Зарегистрирован: 21 мар 2009, 17:13
Сообщение

Вывод html через AJAX для скрытия ненужного контента от роботов

29 янв 2014, 10:11

dmitrogen писал(а):Роботы на неё никакого внимания не обращают...тоже и с robots.txt, JavaScript тоже читают, если он в html
1. если роботы не обращают на это никакого внимания, значит это не роботы (в понимании phpbb3), чтобы S_IS_BOT работало, нужно добавить соотв. user agent в админку, адм. раздел - система - поисковые роботы
2.
dmitrogen писал(а):и не работает...что не так ?
обычный текст выводится...
т.к. мы подключаем обычный текст выдранный из шаблона, мы и получаем этот же текст, а в шаблоне он предварительно обрабатывается скриптом, заменяются переменные {L_PORTAL} например на Портал и т.д., т.е. нужно подключать не голый html файл, а php файл который в свою очередь будет брать нужный нам html файл шаблона, обрабатывать его и отдавать.
dm
dmitrogen
Благодарил (а): 3 раза
Сообщения: 48
Зарегистрирован: 27 авг 2012, 23:03
Сообщение

Вывод html через AJAX для скрытия ненужного контента от роботов

01 фев 2014, 04:38

А как можно сделать, чтобы при переходе по ссылкам, например "Главная" или "Поиск" юзеру предлагалось ответить на вопрос: "Сколько будет 1+1 ? Ответ: __" И если ответил верно, то перешёл по ссылке ?

Вернуться в «Вопросы, ответы и примеры решений»