google adsense logoЭтот способ рекомендует сам Google. В его работоспособности я убедился на собственном опыте.

Известно, что объявления подбираются в соответствии с тематикой сайта, а точнее контента конкретной страницы. Однако на странице, помимо самого контента, есть еще всякий «мусор», сбивающий сканер Google Adsense. Под «моусором» имеется в виду меню, баннеры, всякие продажные ссылки и т.п.

Для того, чтобы исключить «мусор», его нужно заключить в теги:

<!–– google_ad_section_start(weight=ignore) ––>
мусор
<!–– google_ad_section_end ––>

Сам же контент нужно заключить в такие теги:

<!–– google_ad_section_start ––>
мусор
<!–– google_ad_section_end ––>

И тогда сканер Google Adsense более точно поймет, о чем идет речь на странице и на странице появятся более подходящие объявления.

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

ВНИМАНИЕ! Скрывать счетчики можно только после 2-3 дней после установки, т.к. некоторые из них проверяют модераторы.

Все три способа используют CSS. Предварительно заключите счетчики в теги

<div class='counters'> код счетчиков </div>

Назвать класс 'counters' можно по-другому.

В стилях CSS пишем:

Способ 1.

.counters
{
display: none;
}

Способ 2.

.counters
{
visibility: hidden;
}

Способ 3.

.counters
{
position: absolute;
left: -1000px;
}

Всё.

Мне не нравится, когда на сайте есть белые пятна в виде неправильно склоненных слов после чисел.

Например: У вас 1 комментариев. Или: С момента Вашего последнего визита прошло 23 дней.

А ведь сделать так, чтобы все выглядело по-русски, совсем не сложно. Для себя я написал функцию (на PHP), выдающую правильное слово в зависимости от числа. Правда нужно предварительно эти слова внутри этой функции написать и просклонять.

Вот код:

//Возвращает правильное окончание слова для числа
function GetRightWord($num, $word)
{

 $kod = $num - floor($num/10)*10;
 $nums = " ".$num;
 $nums = substr($nums, strlen($nums)-2, 2);
 $num = intval($nums);

 if ($word == 'день')
 {
  if (($num < 11) || ($num > 20))
  {
  switch ($kod) {
  case 0:
  case 5:
  case 6:
  case 7:
  case 8:
  case 9: return 'дней'; break;
  case 1: return 'день'; break;
  case 2:
  case 3:
  case 4: return 'дня'; break; }  
  } else { return 'дней'; }
 }
 
 if ($word == 'лет')
 {
  if (($num < 11) || ($num > 20))
  {
  switch ($kod) {
  case 0:
  case 5:
  case 6:
  case 7:
  case 8:
  case 9: return 'лет'; break;
  case 1: return 'год'; break;
  case 2:
  case 3:
  case 4: return 'года'; break; }
  } else { return 'лет'; }
 }
}

Пример вызова:
echo «Вы заходили на сайт „.$days_count.“ „.GetRightWord ($days_count, 'день').“ назад»;

Сайт про божьих коровок Солнечное лето.РУМой третий сайт (проект) под названием Солнечное лето.РУ принес в мою копилку еще немного опыта. Он полностью посвящен божьим коровками.

Идея его создания пришла неожиданно (но я постоянно думал, чтобы этакое сделать еще :) . Просто у меня есть знакомая, которая коллекционирует божьих коровок, а также рисует их. Также этих насекомых любят очень многие. Так почему бы не собрать в одном месте (на одном сайте) всё, что связано с «божьей коровкой». И людям приятно, и мне.

Проект я начал 21 апреля 2008 г. На улице была весна, но выглядело это всё очень грязно. А хотелось чего-то чистого, свежего, теплого... как лето. Так пришла идея нарисовать на сайте голубое небо, белые облака, яркое желтое солнышко, травку, пустить летать бабочку...

Основное время я потратил на наполнение сайта. Я искал картинки, статьи, видео, музыку, сувениры и т.д., а потом долго все это систематизировал и приводил в человеческий вид.

Теперь про опыт. Я научился вставлять на сайт видеоролики. Вот два способа, как это сделать:

Способ №1. Найти где-нибудь в инете flash-плеер, закачать его вместе с сайтом на хостинг, а потом вставлять в HTML-код теги object и embed с нужными параметрами.
Недостаток этого метода в том, что очень трудно найти нормальный бесплатный (без рекламы) плеер. Я так и не нашел. Хотя, если вам нужно поэкспериментировать, зайдите на сайт http://flv-mp3.com/ru/.

Способ №2. Использовать код, предоставляемый видео-сайтами, типа YouTube. Просто тупо копируйте его и вставляете в свой сайт. Всё. И это работает. И занимает меньше места.
Достоинство способа №2 — видео хранится не на вашем хостинге (не пожирает места). Не нужно искать flash-плеер самому.
Недостаток способа №2 — нужно предварительно закачать ваше видео на видео-сайт.

Всё.

Начиная свой первый большой проект Лагерь, я впервые познакомился с технологией AJAX. Наверно, все знают, что передача данных через javascript происходит (по крайней мере, в моем опыте) в кодировке UTF-8. Чтобы нормально принять эти данные в своем скрипте (например, на PHP), нужно их конвертировать в Win-1251 (если только изначально вы не пишете весь сайт в UTF-8 и база данных у вас тоже в UTF-8).

Это легко делается командой iconv («UTF-8», «windows-1251», $данные);. Обратное конвертирование нужно сделать при передаче данных из скрипта (на PHP) в javascript.

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

И я его нашел.

Полазив по форумам и перебрав множество решений, отобрал одно стабильно работающее. Итак, вот краткий принцип передачи и приема данных с помощью AJAX:

1. Все данные (кроме цифр), передаваемые из javascript, нужно «экранировать» функцией escape. Например, escape ('данные для скрипта')
2. В принимающем скрипте (на PHP) эти данные нужно декодировать следующей функцией:

function unicodeUrlDecode($url, $encoding = "")
{
$encoding = 'CP1251';
preg_match_all('/%u([[:xdigit:]]{4})/', $url, $a);
foreach ($a[1] as $unicode)
{
$num = hexdec($unicode);
$str = '';// UTF-16(32) number to UTF-8 string
if ($num &lt; 0x80)
$str = chr($num);
else if ($num &lt; 0x800)
$str = chr(0xc0 | (($num &amp; 0x7c0) &gt;&gt; 6)) .
chr(0x80 | ($num &amp; 0x3f));
else if ($num &lt; 0x10000)
$str = chr(0xe0 | (($num &amp; 0xf000) &gt;&gt; 12)) .
chr(0x80 | (($num &amp; 0xfc0) &gt;&gt; 6)) .
chr(0x80 | ($num &amp; 0x3f));
else
$str = chr(0xf0 | (($num &amp; 0x1c0000) &gt;&gt; 18)) .
chr(0x80 | (($num &amp; 0x3f000) &gt;&gt; 12)) .
chr(0x80 | (($num &amp; 0xfc0) &gt;&gt; 6)) .
chr(0x80 | ($num &amp; 0x3f));

$str = iconv («UTF-8», «$encoding», $str);
$url = str_replace ('%u'.$unicode, $str, $url);
}

return urldecode ($url);
}

Если Вам эти данные нужно записать в базу данных, воспользуйтесь дополнительно такой функцией:

function prepare_message($message)
{
$message = trim($message);
$message = htmlspecialchars($message, ENT_QUOTES);
return $message;
}

3. Ответ скрипта нужно передавать, используя функцию ajaxout:

//Подготавливает строку для передачи браузеру
function ajaxout($content)
{
return unhtmlentities(htmlentities($content,0,"windows-1251"));
}function unhtmlentities ($string)
{
$trans_tbl = get_html_translation_table (HTML_ENTITIES);
$trans_tbl = array_flip ($trans_tbl);
return strtr ($string, $trans_tbl);
}

На этом всё.

Постовой:

Мой второй проект, который написан на собственном движке, называется Веб-критик. Проект задумывался как Web 2.0. Основная цель — критика добавляемых сайтов. Т.е. одни участники добавляют свои сайты, а другие их критикуют, указывая на недостатки, ошибки и прочее.

При добавлении сайта с участника списывается 5 баллов, при комментировании других сайтов ему начисляется 1 балл за один комментарий. Таким образом планировалась стимуляция активности, чтобы у одного участника была возможность добавить сколько угодно сайтов.

Однако, сайт превратился в обычный каталог сайтов. На сайте под разными логинами и разными емайлами регистрируются, как мне кажется, одни и те же, и добавляют сателлиты про строительство и буровые установки.

Но также есть сайты, которые для меня оказались полезными. Это, например, блог Bloogle.com.ua, сайт про создание flash-игр Хитри.

Ну, да ладно. Пусть остается так, как есть.

Постовой:

Давно использую в своих сайтах небольшой скрипт combine.php. Он дает возможность легко подключать новые Javascript или CSS файлы к сайту, а также сжимать их в gzip и кэшировать.
Далее »

Для чего сжимать файлы, я надеюсь, понятно — чтобы сайт загружался быстрее + приведение кода в менее читабельный вид (чтобы не подсматривали :) . Для сжатия CSS и JS файлов в gzip я обычно использую сторонний скрипт combine.php (подробнее читайте в заметке 222).

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

Я на своем опыте убедился, что не все JS файлы работают после сжатия. Поэтому тщательно тестируйте свои сжатые скрипты. Если скрипт не работает с минимизированными переменными, попробуйте сжать его без этой минимизации.

Обычно я тестирую сжатые скрипты в Opere с включенной опцией «Открывать консоль с ошибками». Если какие-то ошибки в скрипте есть, то вы их там увидите. У меня, в силу недообразованности в Javascript кодинге, все время появлялись ошибки типа «Inline script compilation Error». Вся проблема заключалась в том, что JS Packer также удаляет все лишние пробелы и после закрытой скобки } или ) следом шла function или var. Так вот, после этих скобок нужно ставить точку с запятой ;. То же самое делать для каждой законченной строки. Естесственно, не надо ставить точку с запятой перед else, catch, а также другими ветвлениями, или если следом идет еще одна закрывающая скобка.

Всё.

Постовой:

20.06.2008Мечтаю...

Запустил 19.06.2008 бета-версию сайта «Мечтаю...». Это мой 4-ый проект на собственном движке.

Впервые в своей практике использовал библиотеку jQuery, что существенно ускорило создание сайта, а также позаимствовал некоторые скрипты из Drupal:

1. collapse.js — показ/скрытие полей с эффектом скольжения
2. textarea.js — растягивающиеся textarea

Далее »

Скриншот сайтаХочу с вами поделиться, как я реализовал на своем сайте Веб-критик создание превьюшек для добавляемых сайтов. Превьюшки также создаются на многих других сайтах, в том числе сайтах социальных закладок mister-wong.ru, toodoo.ru и других. Но разработчики этих сайтов не открывают способ, как они это делают. Поэтому пришлось думать самому.

Далее »


© 2007-2010 bLoggle.ru | На сайте АнтиГад.ру можно скачать антивирусы бесплатно