yurijp
-
Публикации
99 -
Зарегистрирован
-
Посещение
-
Days Won
1
Изменения репутации
-
yurijp получил репутацию от Дмитрий Кондин в Инструкция по переходу на HTTPS
Редирект на https для хостинга activecloud.by
RewriteCond %{ENV:HTTPS} !on RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Может кому поможет.
-
yurijp изменил репутацию Chernetskiy в Виджет для комментариев "В Контакте".
А скрипт не пробовал в {literal}... {/literal} заключить? Типа:
{literal} <!-- Put this script tag to the <head> of your page --> <script type="text/javascript" src="//vk.com/js/api/openapi.js?152"></script> <script type="text/javascript"> VK.init({apiId: 6442241, onlyWidgets: true}); </script> <!-- Put this div tag to the place, where the Comments block will be --> <div id="vk_comments"></div> <script type="text/javascript"> VK.Widgets.Comments("vk_comments", {limit: 10, attach: "*"}); </script> {/literal} Хотя, код предполагается устанавливать раздельно:
первая половина кода сразу после <head>, например в header.tpl вторая половина кода вставляется туда, где будет код комментариев. Можно например создать новый шаблон vk_widget.tpl, засунуть туда вторую половину кода и подключать этот виджет в нужных местах в соответствующих шаблонах командой {include file='vk_widget.tpl'} Соответственно, не забываем каждую половину кода оборачивать в {literal}... {/literal} -
yurijp получил репутацию от Chernetskiy в Виджет для комментариев "В Контакте".
Уау! ))) Это волшебство какое-то!!! Всё работает. Именно {фигурные} кавычки нужны. Спасибо!
-
-
yurijp изменил репутацию Chernetskiy в Безопасность сайтов на CMS Sitebill
А может проще прописать проверку подлинности через .htaccess ?
Вот тут можно сгенерировать - http://wb0.ru/hts.php
-
yurijp изменил репутацию Chernetskiy в PageSpeed. Скорость загрузки сайта.
Забыл добавить, относительно скорости загрузки сайта не стоит ориентироваться только на Гугл, который читает ваш сайт непонятно какими путями и непонятно откуда. Фактически, скорость загрузки в разной местности может серьезно отличаться, это зависит от местоположения сервера, количества и качества каналов связи и прочих факторов. Можно например воспользоваться этим тестом и посмотреть, в какой стране/регионе и с какой скоростью ваш сайт загружается по факту. На графике будет всё наглядно показано.
Например серверы под тариф VIP-1, VIP-2 в reg.ru судя по всему расположены в Голландии, т.к. там мой сайт грузится за 0,8 сек., в России за 1,2 сек., в Англии за 0,9 - 1 сек., в США, в зависимости от штата - 2 - 4,2 сек. и вероятнее всего, ближе к этому и будут тесты Гугла, поскольку их сервера находятся там-же.
-
yurijp изменил репутацию Chernetskiy в shema.org - кто использует структурированные данные?
Вот вам сервис с кучей генераторов - хоть для организации, хоть для статей, хоть для Твиттера и Фейсбука... Генерируйте и пихайте код на сайт
-
yurijp изменил репутацию Дмитрий Кондин в Шаги по оптимизации SEO для CMS Sitebill
{$data.text.value|truncate:60}
-
yurijp изменил репутацию Михалыч в убрать вход выход с сайта шаблон Realia
Файл main.tpl, закомментировать или удалить строку
<li><a href="#" data-toggle="modal" data-target="#prettyLogin">{$L_LOGIN_BUTTON}</a></li> меню Вход ↑
<li><a href="#" data-toggle="modal" data-target="#prettyLogin">{$L_AUTH_REGISTRATION}</a></li> меню Регистрация ↑
<a class="btn btn-primary btn-small" data-toggle="modal" href="{$estate_folder}/logout/">{$L_LOGOUT_BUTTON}</a> меню Выход, файл top_fixed_menu.tpl.html ↑
-
yurijp изменил репутацию Дмитрий Кондин в фавикон (favicon) на свой?
Он в корне.
После замены фавикона нужно открыть его в браузере и нажать F5.
-
yurijp изменил репутацию Chernetskiy в поделиться в соц.сетях новостями
Настроки-Общее: (привожу свои настроки)
Новости - ширина большой картинки (news_image_big_width) 800 Новости - высота большой картинки (news_image_big_height) 600 Новости - ширина превью картинки (news_image_preview_width) 270 Новости - высота превью картинки (news_image_preview_height) 200 Галерея - ширина большой картинки (gallery_image_big_width) 800 Галерея - высота большой картинки (gallery_image_big_height) 600 Галерея - ширина превью картинки (gallery_image_preview_width) 270 Галерея - высота превью картинки (gallery_image_preview_height) 200 и Настроки-Дополнительно:
Использовать умную подгонку превьюшек (apps.realty.preview_smart_resizing) 1 Ширина изображения объявления (apps.realty.data_image_big_width) 800 Высота изображения объявления (apps.realty.data_image_big_height) 600 Ширина превью изображения объявления (apps.realty.data_image_preview_width) 270 Высота превью изображения объявления (apps.realty.data_image_preview_height) 200 Изменения вступят в действие после загрузки новых фото / перезаливки, старые фото так и останутся отображаться без изменений
-
yurijp изменил репутацию abushyk в поделиться в соц.сетях новостями
Совершенно верно.
В самом общем случае, практически любой файл из шаблонов приложений, если он конечно поддерживает локализацию, может быть переопределен таким способом, а при переопределении используется простое правило замены
/apps/application_name/site/template/template.tpl - исходный файл
на
/template/frontend/имя_вашего_шаблона/apps/application_name/site/template/template.tpl - локализированный
-
yurijp изменил репутацию abushyk в поделиться в соц.сетях новостями
а еще лучше скопировать шаблон вывода новости в папку
/template/frontend/ваш_шаблон/apps/news/site/template/ и там менять, иначе все изменения в файле в папке приложения будут затираться обновлениями.
-
yurijp изменил репутацию Chernetskiy в поделиться в соц.сетях новостями
Непосредственно в новостях не совсем удобно, там идет перечисление анонсов и отправлять список анонсов в соцсети не совсем подходящий вариант. Лучше это сделать в шаблоне вывода новости (/apps/news/site/template/), т.к. посетитель будет открывать анонс и переходить в саму новость. Соответственно добавить кнопки лучше под саму новость, перед анонсами других новостей. За это дело отвечают файлы news_grid.tpl и news_view.tpl
Я например переиначил news_view.tpl так:
<link rel="stylesheet" href="{$estate_folder}/apps/news/site/template/css/style.css"> <div id="singleNews"> <div class="title" align="center"><h1>{$news.title.value}</h1></div> <div class="share"></div> <div class="text" align="justify"> {if $news.prev_img neq ''} <img src="{$news.normal_img}" width="270" alt="{$news.title.value}" class="alignleft" align="left" style="padding: 10px;" /> {/if} {$news.description.value} </div><!-- .text --> <div class="date">{$news.date.value_string} <a href="/">Центр недвижимости</a></div> <div style="clear:both;"></div> </div><!-- #singleNews --> <hr> <h2>Ранее в новостях</h2> {if $more_news|count>0} <div id="news" class="archive"> {section name=i loop=$more_news} <div class="news"> <div class="title"><h3><a href="{$more_news[i].href}">{$more_news[i].title}</a></h3></div> {if $more_news[i].prev_img neq ''} <div class="image_news"><a href="{$more_news[i].href}"><img src="{$estate_folder}{$more_news[i].prev_img}" width="150" border="0" alt="{$more_news[i].title}" /></a></div> {/if} <div class="anons" align="justify">{$more_news[i].anons|strip_tags}</div> <div class="date">{$more_news[i].date}</div> </div> <div class="clear"></div> {/section} </div> {/if} {if 1==0} <!-- <script src="{$estate_folder}/apps/comment/js/comment_controller.js"></script> --> {literal} <script> /*$(document).ready(function(){ $('.cmnts').Comment_Controller({object_type:'news', object_id:'{/literal}{$news.news_id.value}{literal}'}); });*/ </script> {/literal} <div class="cmnts"></div> {/if} Соответственно, кнопки соцсетей можно впихнуть где-нибудь между <div>-ами
</div><!-- .text --> <div class="date">{$news.date.value_string} <a href="/">Центр недвижимости</a></div> <div style="clear:both;"></div> </div><!-- #singleNews --> Только перепиши Центр недвижимости на своё агентство.
Посмотреть как выглядит у меня можно здесь
-
yurijp изменил репутацию metrpro в Шаги по оптимизации SEO для CMS Sitebill
Добавлю несколько слов от себя:
1. Используйте seo-возможности страниц с объявлениями. Если нет возможности заполнять мета-титл для каждого объявления, генерируйте их. Откажитесь от стандартного h1, определяемого переменной $title - лучше компонуйте его на уровне шаблона _view из переменных массива data, таких как:
{$data.city_id.value_string} - название города; {$data.street_id.value_string} - название улицы; {$data.number.value} - номер дома; {$data_shared.price.value} - цена; {$data.text.value} - текстовое описание (укорачивайте его функцией truncate) Помните, что согласно статистике google, 15% ежедневных поисковых запросов уникальны, они никогда больше не повторятся, поэтому 100-1000-10000 объявлений с качественными заголовками meta-title, h1-title, meta-description дадут большой пласт НЧ-запросов.
2. На любом сайте объявлений самое ценное - это страницы листингов (_grid). Используйте Линк-менеджер, чтобы добавить геотаргетированные списки объявлений, таких как "Продажа 1-комнатных в Ялте" или "Аренда домов в Ялте посуточно". Это поможет охватить большой сегмент СЧ-запросов. У меня на сайте разделов predefindlinks - более 300шт и их количество я продолжаю ежедневно увеличивать.
3. Регулярно проверяйте наличие дублей страниц через Google Webmaster.
4. Закройте в robots.txt все параметры, кроме page, которые не умеете использовать, а именно price, order, grid_type, city_id, street_id.
5. По недвижимости всегда полно запросов типа "Город, Улица" - попробуйте использовать city_id и street_id в комбинации, чтобы создать огромное количество гео-листингов по НЧ-запросам. У меня любой поиск через стандартную форму sitebill формата "город такой-то, улица такая-то" выдаст листинг с заголовками типа "СЕВАСТОПОЛЬ, Октябрьской Революции проспект - объявления по продаже и аренде квартир, домов, недвижимости недорого без посредников".
Вот пример очень даже неплохих ПФ при заходе на подобную генерированную страницу:
6. Генерируйте alt и title для всех изображений как на страницах объявлений, так и на страницах листингов. Используйте для этого те же переменные, что и в п. 1, добавляя уникальность переменной {$smarty.section.j.index} (для шаблона _view).
7. Никогда не удаляйте объявления. Не делайте их неактивными. Используйте для этого дополнительную переменную и оперируйте ею на уровне шаблона, чтобы не потерять посетителя. Тогда объявление будет участвовать в поиске и в листингах, а пользователь не попадет на 404.
8. Улучшайте ПФ простым образом - помните, что не все пользователи будут кликать на ниспадающее меню (как в realia или estatico), половина из них будет искать привычные быстрые ссылки, к которым они привыкли на авито.
9. Пропишите 404 с ссылками на основные разделы сайта.
10. Прочитайте великолепный мануал Саши Алаева про продвижение сайта объявлений недвижимости - он от 2014 года, но всё, что там написано, сверхактуально.
11. Поставьте на сайт поиск от Яндекса или Google.
12. Будьте аккуратнее со штатным seo-приложением sitebill. Не включайте .html, не используйте сложных структур uri (особенно, если у вас объявления могут добавлять зарегистрированные пользователи, которые имеют обыкновение путать категорию).
13. Каждую новую страницу листинга, где вы исправили заголовки или описание, добавляйте вручную в Я и G.
UPDATE 28-09-16:
14. Не пожалейте часа времени и посмотрите видео "SEO для сайтов по продаже и аренде недвижимости". Его автор - Руководитель департамента продаж SeoPult Евгений Костин, и рассказывает он занятнейшие вещи.
Работы по тому, что я тут написал, у себя начал в 20 числах августа (т.е. около месяца назад). Результат не в абсолютном выражении, а в относительном, меня радует - рост трафика составил более чем в 2 раза:
Указаны среднесуточные переходы из ПС. Спад в текущей неделе связан с тем, что сегодня еще вторник.
У меня всё, можете начинать срач.
-
yurijp изменил репутацию Дмитрий Кондин в Формирование URL в хлебных крошках
Тут
/apps/system/lib/sitebill.php
/** * Get category breadcrumbs * @param array $params * @param array $category_structure * @param string $url * @return string */ function get_category_breadcrumbs( $params, $category_structure, $url = '' ) { $rs = ''; if ( !isset($params['topic_id']) || is_array($params['topic_id']) ) { return $rs; } if((int)$params['topic_id']==0){ return $rs; } if(!isset($category_structure['catalog'][$params['topic_id']])){ return $rs; } //foreach ( $category_structure['childs'][0] as $item_id => $catalog_id ) { if($category_structure['catalog'][$params['topic_id']]['url']!=''){ $ra[] = '<a href="'.rtrim($url,'/').'/'.$category_structure['catalog'][$params['topic_id']]['url'].'">'.$category_structure['catalog'][$params['topic_id']]['name'].'</a>'; }else{ $ra[] = '<a href="'.rtrim($url,'/').'/topic'.$params['topic_id'].'.html">'.$category_structure['catalog'][$params['topic_id']]['name'].'</a>'; } $parent_category_id = $category_structure['catalog'][$params['topic_id']]['parent_id']; while ( $category_structure['catalog'][$parent_category_id]['parent_id'] != 0 ) { if ( $j++ > 100 ) { return; } if($category_structure['catalog'][$parent_category_id]['url']!=''){ $ra[] = '<a href="'.rtrim($url,'/').'/'.$category_structure['catalog'][$parent_category_id]['url'].'">'.$category_structure['catalog'][$parent_category_id]['name'].'</a>'; }else{ $ra[] = '<a href="'.rtrim($url,'/').'/topic'.$parent_category_id.'.html">'.$category_structure['catalog'][$parent_category_id]['name'].'</a>'; } $parent_category_id = $category_structure['catalog'][$parent_category_id]['parent_id']; } if ( $category_structure['catalog'][$parent_category_id]['name'] != '' ) { if($category_structure['catalog'][$parent_category_id]['url']!=''){ $ra[] = '<a href="'.rtrim($url,'/').'/'.$category_structure['catalog'][$parent_category_id]['url'].'">'.$category_structure['catalog'][$parent_category_id]['name'].'</a>'; }else{ $ra[] = '<a href="'.rtrim($url,'/').'/topic'.$parent_category_id.'.html">'.$category_structure['catalog'][$parent_category_id]['name'].'</a>'; } } if(Multilanguage::is_set('LT_BC_HOME', '_template')){ $ra[]='<a href="'.SITEBILL_MAIN_URL.'/">'.Multilanguage::_('LT_BC_HOME', '_template').'</a>'; }else{ $ra[]='<a href="'.SITEBILL_MAIN_URL.'/">'.Multilanguage::_('L_HOME').'</a>'; } //$ra[]='<a href="'.SITEBILL_MAIN_URL.'/">'.Multilanguage::_('L_HOME').'</a>'; $rs = implode(' / ', array_reverse($ra)); return $rs; }
-
yurijp изменил репутацию metrpro в shema.org - кто использует структурированные данные?
Легко. Пошагово для realia:
1. В первую очередь определяем, что вообще используем schema.org типа product. Для этого в шаблоне realty_view.tpl находим блок, содержащий все, что между крошками и футером/спецпредложениями - это div класса row - и корректируем под нужную нам схему:
<div class="row" itemscope itemtype="http://schema.org/Product"> 2. Определяем имя продукта - это то, что находится под заголовком стиля page-header (по умолчанию, правда, это почему-то заголовок второго уровня, рекомендую поменять его h1):
<h1 class="page-header"><span itemprop="name"> ЗДЕСЬ ТО, ЧТО У ВАС ИДЕТ В КАЧЕСТВЕ ЗАГОЛОВКА ОБЪЯВЛЕНИЯ, СКОРЕЕ ВСЕГО {$title} </span></h1> 3. Т.к. мы этот продукт предлагаем, то значит это тип Offer - для этого всю таблицу с характеристиками помечаем нужным образом. Ищем соответствующий <div class="noverview-short"> и меняем его:
<div class="noverview-short" itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 4. Добавляем изображение - для этого ищем ниже заглавное изображение объявлений вида <img src="{$estate_folder}/img/data/{$photo[0].normal}" и добавляем к нему параметр itemprop="image":
<img src="{$estate_folder}/img/data/{$photo[0].normal}" itemprop="image"> 5. Все объявления актуальны? Вставляйте в любом месте тег "На складе":
<link itemprop="availability" href="http://schema.org/InStock"> 6. Не забываем про ценник - система его вывода достаточно неоднозначна и скорее всего, у Вас он формируется автоматически в процедурах вывода характеристик объекта, поэтому мы с ним в стили лезть не будем, а просто пропишем отдельно.
Вариант, если у Вас только рубли:
<meta itemprop="price" content="{$data_shared.price.value|number_format:0:".":""}"> <meta itemprop="priceCurrency" content="RUB"> Но у меня цены есть еще и в долларах, поэтому приходится проверять - если в рублях, то рубли, если в USD, то в USD:
<meta itemprop="price" content="{$data_shared.price.value|number_format:0:".":""}"> {if $data_shared.currency_id.value == 2} <meta itemprop="priceCurrency" content="USD"> {else} <meta itemprop="priceCurrency" content="RUB"> {/if} 7. Описание товара - ищем {$data.text.value|nl2br} и обволакиваем нужными нам параметрами:
<span itemprop="description">{$data.text.value|nl2br}</span> 8. В принципе, основная часть готова. Проверить то, что сделали, можете в валидаторах.
Валидатор от Гугла - https://search.google.com/structured-data/testing-tool
Валидатор от Яндекса - https://old.webmaster.yandex.ru/microtest.xml
Рекомендую пользоваться и тем, и другим - причем в отличие от мобильной дружелюбности, здесь гугл гораздо строже.
PS: модераторы, исправьте, пожалуйста, название этой темы - не хватает одной буквы в слове sChema.org
-
yurijp изменил репутацию metrpro в Куда дальше развивается sitebill?
Еще один вектор развития, который лично мне, как пользователю, хотелось бы видеть, это интеграция в социальные сети.
Первый шаг по сути уже сделан - для пользователей нескольких сетей добавлена возможность быстрой регистрации/авторизации. Но некоторые системы остались за кадром - yandex и mail.ru - а ведь подключив их можно было бы про ручную регистрацию забыть в 99% случаев.
Также есть прекрасные задумки про кросспостинг - только реализовано это пока только для twitter, а как было бы прекрасно подключить сюда fb и vk.
Снова хочется напомнить про мобильность - конечно, использование бутстрапа и @media позволяет адаптировать сайт к просмотру на мобильном (после некоторых танцев с бубном, правда) и даже Google говорит - Вах, какой адаптированный сайт! Но дело в том, что сайт при этом НЕУДОБНЫЙ. Т.е. его адаптированность сейчас не даёт прироста клиентов (хотя, может и увеличивает ранжирование для мобильных выдач).
-
yurijp изменил репутацию metrpro в Дубли title
Вообщем, у меня было решение для предпоследней версии модуля sitemap 1.3.9, сегодня обновил до свежей 1.3.10, вот решение для нее (там изменена процедура формирования УРЛ для карты).
1. Нужен файл /apps/sitemap/admin/admin.php
2. Примерно на 125 строке расположена функция, формирующая вывод файла карты
protected function createSitemapFile($file_name, $urls){ 3. Через несколько строк начинается условие проверки каждого УРЛ на наличие в его начале "http://" (т.е. проверяется, абсолютная ссылка или относительная)
if(preg_match('/^(http:|https:)/', $u['url'])){ 4. Находим чуть ниже строку
$ret.='<loc>'.$u['url'].'</loc>'."\n"; И вместо неё вставляем условие проверки последнего символа (ЕСЛИ последний_символ НЕ "/", ТО выводим урл с "/", ИНАЧЕ оставляем, как есть):
if(substr($u['url'], -1) != '/') {$ret.='<loc>'.$u['url'].'/</loc>'."\n";} else { {$ret.='<loc>'.$u['url'].'</loc>'."\n";} } 5. Спускаемся ниже и строку
$ret.='<loc>'.$this->site_link.$u['url'].'</loc>'."\n"; Меняем на
if(substr($u['url'], -1) != '/') {$ret.='<loc>'.$this->site_link.$u['url'].'/</loc>'."\n";} else { {$ret.='<loc>'.$this->site_link.$u['url'].'</loc>'."\n";} } 6. Все. Чтобы увидеть результат, в НАСТРОЙКАХ \ SITEMAP админки поменяйте время формирования карты сайта (на время).
PS: Предупреждаю, что перед этим необходимо все ссылки в шаблонах проставить со слэшем в конце (_view, _grid_thumbs, _grid_list, menu_decorator, ссылки на любые статичные страницы, может еще где найдете), актуализировать disallow в robots.txt (по умолчанию там часть закрытых категорий стоит без слэша), а также настроить 301 редирект в .htaccess:
RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*[^/])$ $1/ [L,R=301] PPS: Вот, к чему приводит, когда сам сайт причесываешь на слэш в конце каждой ссылки, а в sitemap бардак!!! Каждая страница вгоняется дважды в индекс, что приводит к возникновению большого количества дублей!
-
yurijp изменил репутацию DoobBY в PageSpeed. Скорость загрузки сайта.
Возможно пригодиться тому, кто зайдёт в ветку.
"Используйте кеш браузера"
Если на вашем хотинге ПО Апачи
Вставлять в .htaccess
<ifModule mod_headers.c><FilesMatch "\.(html|htm)$">Header set Cache-Control "max-age=43200"</FilesMatch><FilesMatch "\.(js|css|txt)$">Header set Cache-Control "max-age=604800"</FilesMatch><FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">Header set Cache-Control "max-age=2592000"</FilesMatch><FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">Header unset Cache-Control</FilesMatch></IfModule> После проверки гуглом - поле пропало.
-
yurijp изменил репутацию abushyk в отсутствует счетчик просмотров квартир
Просто тег label по стилям идет как блочный элемент, который занимает всю ширину и остальное - количество просмотров в данном случае, сталкивает в следующую строку. Нужно либо label убрать, либо для этого конкретного элемента присвоить стиль, сделающий его не блочным. И обертку <li></li> нужно убрать - там у вас нет обрамляющего <ul> поэтому и li лишний.
-
yurijp изменил репутацию Chernetskiy в Обновление socialauth 2.0.2
Надо получить ключи, примерно по такому принципу - https://yadi.sk/d/ZPqojtN7hQFs4(здесь про автопостинг в Фейсбук и ВКонтакте)
-
yurijp изменил репутацию shra75 в Размещение виджета сообществ ВК в шаблоне Realia
Итак... парамтрарам!!! Проблема с добавлением в шаблон Realia виджета "Мы в контакте" решена!
Для этого добавляем строки в следующие места:
В realia-blue.css
.vk {float: left;width: 100%;}.vk_wdg {float: left;}#vk_groups { padding-bottom:90px;} и в right_special.tpl
{literal} <div class="widget properties last"> <div class="widget properties last vk_wdg "> <div class="vk"> <h2>Мы Вконтакте</h2> </div><!-- /.title --> <script type="text/javascript" src="//vk.com/js/api/openapi.js?121"></script> <!-- VK Widget --> <div id="vk_groups"></div> <script type="text/javascript"> VK.Widgets.Group("vk_groups", {mode: 0, width: "270", height: "250", color1: 'FFFFFF', color2: '0581B5', color3: '0581B5'}, 31499449); </script> </div> </div> {/literal} И получается вот так, как на скрине... или смотрите на сайте Всем спасибо!!!
-
yurijp изменил репутацию Chernetskiy в Раскрутка сайта в Интернет
Полезные ссылки для вебмастера
Ссылки, которые пригодятся и вам.
Общее
1. Просмотр сайта в различных браузерах: http://browsershots.org/ Ресурс позволяет узнать, как ваш сайт видят пользователи в разных браузерах, в том числе позволяет оценить кроссбраузерную верстку сайта.
2. Конвертер punycode для .рф доменов: http://2ip.ru/punycode Позволяет получить адрес в punycode для вашего домена в зоне .рф. Или, проще говоря, ресурс позволяет превратить название www.ромашковый-рай.рф в абракадабру, которую понимают компьютеры: xn----7sbbg9accordri2hzb.xn--p1ai.
3. Декодер почты. Пришло письмо с нечитаемыми символами? Прочитать его можно тут: http://www.charset.ru/
4. Назад в будущее: http://web.archive.org – ресурс позволяет посмотреть этапы изменения сайта. Не помните, когда меняли текст на сайте или просто интересно посмотреть, как выглядел ваш сайт в день его открытия? Ресурс для вас.
Оптимизация сайта
5. Подбор ключевых слов, семантического ядра. Правильно подобрать ключевые слова для вашего сайта поможет сервис Wordstat от Яндекса. Как пользоваться этим сервисом читайте по ссылке: http://1ps.ru/help/word/
6. Мета-теги title и description. Все знают, что эти теги важны для оптимизации и продвижения сайта. Как правильно прописать мета-теги title и description в примерах читайте по ссылке: http://1ps.ru/blog/seo/title-i-description-v-primerah/
7. 301 редирект. Сменили доменное имя? До сих пор не настроили постоянное перенаправление с www на без www вашего сайта? 301-редирект вам в помощь. Как настроить редирект 301 хорошо написано на сайте: http://sb-money.ru/article.php?a=75
8. Карта сайта, sitemap. Создать карту сайта онлайн можно с помощью сервиса http://htmlweb.ru/analiz/sitemap.php . Заодно сервис анализирует ваш сайт и указывает на основные критические ошибки.
9. Новости SEO, все для оптимизатора: http://www.allseo.ru/news Хороший ресурс о новинках в области SEO.
10. Форумы по продвижению, оптимизации сайтов: http://seochase.com/ , http://forum.searchengines.ru/
Анализ сайта
11. Seo анализ сайта, сервис для оптимизатора: http://mainspy.ru/ - позволяет провести общий анализ сайта, определить тИЦ, PR, и еще много других параметров.
12. Анализ контента. http://pr-cy.ru/analysis_content – сервис позволяет определить вес главной страницы сайта, релевантность заголовка (title) и другое.
13. Определить CMS сайта. Сервис http://itrack.ru/whatcms/ - позволяет узнать, на какой CMS разработан ваш сайт.
14. Проверка сайта на вирусы. https://www.virustotal.com/ru/#url
Help Яндекса
15. Служба поддержки Яндекса. Есть вопросы Яндексу? Пишите сюда, Платон ответит: http://feedback.yandex.ru/webmaster/
16. О том, каким должен быть хороший сайт. Как сделать хороший сайт по мнению Яндекса, можно прочитать по ссылке: http://help.yandex.ru/webmaster/?id=1108938
17. О robots.txt. Использование robots.txt, что зачем и как узнайте по ссылке: http://help.yandex.ru/webmaster/?id=996567
18. Что такое зеркала сайтов, кому они нужны, как их настроить: http://help.yandex.ru/webmaster/?id=995297
19. Карта сайта (sitemap). Что такое карта сайта, для чего нужна, что обязательно нужно учесть при ее создании. http://help.yandex.ru/webmaster/?id=1007070
20. Рекомендации Яндекса по созданию сайтов: http://help.yandex.ru/webmaster/?id=1108938
21. Коды региональной выдачи: http://search.yaca.yandex.ru/geo.c2n Сервис позволяет узнать, как выглядит выдача в другом регионе. Например, вы ищите «пластиковые окна» и хотите увидеть результаты поиска для Москвы, достаточно поменять параметр &lr в адресной строки на &lr=213. Будет показана выдача Москвы.
22. Правила размещения рекламы на Яндексе: http://advertising.yandex.ru/requirement/media/regulations.xml?ncrnd=7571 На данной странице перечислены основные ограничения и требования к рекламе в Интернете.
-
yurijp изменил репутацию abushyk в Кнопка "добавить объявление"
В самом общем случае:
{if $smarty.session.user_id eq ''}<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/add/">{$L_ADD_ADV}</a>{else}<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/register/">{$L_ADD_ADV}</a>{/if} если делать на кнопках.
Если копнуть глубже, то в main.php шаблона найти блок
if ( !$has_result && preg_match('/^add(\/?)$/', $REQUESTURIPATH) ) {...} и в нем добавить условие
if ( !$has_result && preg_match('/^add(\/?)$/', $REQUESTURIPATH) ) { if(0==(int)$_SESSION['user_id']){ header('location: '.SITEBILL_MAIN_URL.'/register/'); exit(); } ... тут все что было}