Posts Tagged “сателлиты”

По другому это назвать просто нельзя. Вот сидишь, думаешь, пробуешь – видишь закономерности и… рождается теория. Потом делаешь несколько подопытных сайтов и проверяешь на них свои предположения. И, о чудо, все отлично работает: затрат мизер, а выхлоп на уровне. Но стоит только перенести это “производство” на конвейер, тут же, по закону подлости, эта тема перестает работать.
Штучное производство меня не устраивает, так как клепать десятки однотипных сайтов ежедневно очень быстро отобьет всякое желание работать и поэтому приходится постоянно выдумывать что-то новое.
Пока еще держу хвост пистолетом :)
Истина где-то рядом…

Comments No Comments »

Многие интернет-разработчики рано или поздно сталкиваются с проблемой выбора системы управления сайтом (CMS) для своих творений. На данный момент их существует очень много, как платных, так и распространяемых на бесплатных условиях. Большинство из них могут подходить для решения разнообразных задач: от простых сайтов-визиток до городских порталов. Но как следствие, они весьма громоздки и требуют значительных серверных мощностей. Возникает закономерный вопрос: “зачем для 10-ти страничного сайта-визитки ставить многомегабайтную CMS, которая к тому же еще требует MySQL?”. Действительно, это не рациональное решение. Именно поэтому я задался целью сделать максимально компактную систему управления сайтом, на основе которой можно было бы делать сайты-визитки за считанные минуты и при этом не требовались бы какие-то особы навыки и специальная подготовка.
Итак, что же из этого вышло. Представленная ниже CMS состоит из таких частей:
1. файл .htaccess
2. файл index.php – сама CMS
3. файл с контентом text.php
4. файл-шаблон theme.php
Теперь рассмотрим детальнее все составляющие.
Первое. Для работы CMS необходимо, чтобы ваш хостер “разрешал” создание/редактирование файлов .htaccess, а также необходимо наличие установленного модуля mod_rewrite. На сколько я знаю, это условие выполняется практически на всех хостингах, но godaddy.com – точно этого не предоставляет… В созданный (в корне сайта) файл .htaccess поместите следующий код:

AddDefaultCharset windows-1251
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Часть вторая – непосредственно сама CMS.
Создаем файл, тоже в корне сайт, с именем index.php и помещаем в него следующее:

<?php
error_reporting(0);
$anons=100;
$to='admin@site.ru';
$subject='Заказ на сайте';
$theme='theme1/theme.php';
$text=file_get_contents('text.php');
if(preg_match_all('@<item>(.*?)</item>@is',$text,$matches)){
 for ($i=0; $i<count($matches[1]); $i++){
  if(preg_match('@<page>(.*?)</page>@is', $matches[1][$i], $mat)) $pages[]=trim($mat[1]);
  if(preg_match('@<date>(.*?)</date>@is', $matches[1][$i], $mat)) $allnews[]=$i;
 }
}
$line=$_SERVER["REQUEST_URI"];
if($line[strlen($line)-1]!='/') $line .= "/";
$line=explode('/', $line);
for($i=0; $i<count($line); $i++) $line[$i]=trim($line[$i+1]);
$page=array_search($line[0],$pages);
if(($page!==FALSE)&&(count($line)<=3)){
 if(preg_match('@<title>(.*?)</title>@is', $matches[1][$page], $mat)) $title=trim($mat[1]);
 if(preg_match('@<content>(.*?)</content>@is', $matches[1][$page], $mat)) $content=trim($mat[1]);
 if(preg_match('@<page>(.*?)</page>@is', $matches[1][$page], $mat)) $thispage=trim($mat[1]);
 $k=0;
 for ($i=count($allnews); $i>=0; $i--){
  if(preg_match('@<page>(.*?)</page>@is', $matches[1][$allnews[$i]], $mat)) $newsurl[$k]=trim($mat[1]);
  if(preg_match('@<date>(.*?)</date>@is', $matches[1][$allnews[$i]], $mat)) $newsdate[$k]=trim($mat[1]);
  if(preg_match('@<title>(.*?)</title>@is', $matches[1][$allnews[$i]], $mat)) $newstitle[$k]=trim($mat[1]);
  if(preg_match('@<content>(.*?)</content>@is', $matches[1][$allnews[$i]], $mat)){
   $newscontent[$k]=trim($mat[1]);
   if(strlen($newscontent[$k])>$anons){
    $newtext="";
    for($j=0; $j<$anons; $j++) $newtext.=$newscontent[$k][$j];
    $newscontent[$k]=$newtext."...";
   }
  }
  if($thispage=="archive.php"){
   $content.= '<a href="'.$newsurl[$k].'">'.$newstitle[$k].'</a><br />';
  }
  $k++;
 }
 if($thispage=="sitemap.php"){
  for($i=0; $i<count($pages); $i++){
   if(preg_match('@<title>(.*?)</title>@is', $matches[1][$i], $mat)){
    $content.= '<a href="/'.$pages[$i].'">'.trim($mat[1]).'</a><br />';
   }
  }
 }
 if((isset($_POST['submit']))&&($_POST['sendmail']=="1")) {
  $message = '<html><head><title>'.$subject.'</title></head><body>
	Контактное лицо: <b>'.$_POST['fio'].'</b><br>
	E-mail: <b>'.$_POST['email'].'</b><br>
	Сообщение: <b>'.$_POST['message'].'</b>
	</body></html>';
  $headers = 'From: '.$_POST['email']."\r\n".'Content-Type: text/html; charset="windows-1251"';
  mail($to, $subject, $message, $headers);
  $content="Ваш запрос успешно отправлен";
 }
 include($theme);
 exit;
}else{
 header('Location:/');
 exit;
}
?>

Как видите, в начале есть четыре переменные, которые отвечают за следующее:
$anons – длина, в символах, анонса новостей. Это сделано для того, чтобы в сайдбаре “не вываливать портянку”, а отображать лишь начало новости.
$to=’admin@site.ru’ – тут указываем е-майл, на который будут приходить письма от пользователей. Например, для страниц типа “форма обратной связи” или “оформление заказа”.
$subject=’Заказ на сайте’ – указываем заголовок таких писем.
$theme=’theme1/theme.php’ – указываем путь к файлу шаблона, относительно корня сайта. Эта опция позволяет очень просто изменить внешний вид сайта, подключив другой шаблон.

Помимо этого, в CMS предусмотрено:
1. Генерирование страницы “Архив новостей”, где отображаются ссылки на все новости с анкорами в виде заголовков. По умолчанию эта страница доступна по адресу archive.php. См, строку if($thispage==”archive.php”). Эта страница, должна быть прописана в файле с контентом, иначе отображаться не будет.
2. Генерирование страницы “Карта сайта”, тут отображаются ссылки на все страницы сайта. Доступна по адресу sitemap.php. См, строку if($thispage==”sitemap.php”). Аналогично предыдущей странице, она должна быть прописана в файле text.php

Третья часть – файл с контентом.
Помещаем в корень файл text.php. Его структура должна выглядеть так:

<?if (!$k) header('Location:/')?>

<item>
 <page></page>
 <title>Главная страница</title>
 <content>
  <p>Текст главной страницы.</p>
 </content>
</item>
<item>
 <page>product.php</page>
 <title>Наша продукция</title>
 <content>
  <p>Текст страницы с описанием продукции.</p>
 </content>
</item>
<item>
 <page>order.php</page>
 <title>Оформить заказ</title>
 <content>
  <table width="100%" border="0" cellspacing="7" cellpadding="5">
  <form method="POST" enctype="multipart/form-data" action="order.php">
   <input type="hidden" name="sendmail" value="1">
   <tr>
    <td valign="top">Контактное лицо</td>
    <td valign="top">
     <input name="fio" type="text" size="40" value="" />
    </td>
   </tr>	
   <tr>
    <td valign="top">E-mail</td>
    <td valign="top">
     <input name="email" type="text" size="40" value="" />
    </td>
   </tr>	
   <tr>
    <td valign="top">Сообщение</td>
    <td valign="top">
     <textarea name="message" cols="30" rows="7"></textarea>
    </td>
   </tr>	
   <tr>
    <td colspan="2" align="center">
     <input name="submit" type="submit" value="Отправить"/>
    </td>
   </tr>
  </form>
  </table>
 </content>
</item>
<item>
 <page>contact.php</page>
 <title>Как нас найти</title>
 <content>
  <p>Текст страницы с контактами.</p>
 </content>
</item>
<item>
 <page>sitemap.php</page>
 <title>Карта сайта</title>
 <content>
  Текст страницы карты сайта.<br />
 </content>
</item>
<item>
 <page>archive.php</page>
 <title>Архив новостей</title>
 <content>
  Текст страницы архива новостей:<br />
 </content>
</item>


<item>
 <page>news1.php</page>
 <title>Заголовок новости 1</title>
 <date>2009.11.18</date>
 <content>
  текст новости номер 1 текст новости номер 1 текст новости номер 1 текст новости номер 1 текст новости номер 1
 </content>
</item>
<item>
 <page>news2.php</page>
 <title>Заголовок новости 2</title>
 <date>2009.12.19</date>
 <content>
  текст новости номер 2 текст новости номер 2 текст новости номер 2 текст новости номер 2 текст новости номер 2
 </content>
</item>
<item>
 <page>news3.php</page>
 <title>Заголовок новости 3</title>
 <date>2009.12.20</date>
 <content>
  текст новости номер 3 текст новости номер 3 текст новости номер 3 текст новости номер 3 текст новости номер 3
 </content>
</item>
<item>
 <page>news4.php</page>
 <title>Заголовок новости 4</title>
 <date>2009.12.21</date>
 <content>
  текст новости номер 4 текст новости номер 4 текст новости номер 4 текст новости номер 4 текст новости номер 4
 </content>
</item>
<item>
 <page>news5.php</page>
 <title>Заголовок новости 5</title>
 <date>2009.12.22</date>
 <content>
  текст новости номер 5 текст новости номер 5 текст новости номер 5 текст новости номер 5 текст новости номер 5
 </content>
</item>

Первая строка в этом файле служит для того, чтобы прочитать файл мог только скрипт, а всех остальных будет посылать на главную страницу.
Теперь по порядку рассмотрим теги:
1. тег item – внутри него содержится информация о каждой отдельной странице.
2. тег page – здесь задаем внешний вид URLа страницы.
3. тег title – заголовок страницы.
4. тег date – дата публикации, используется только в новостях.
5. тег content – содержание страницы.

Для добавления новых страниц/новостей откройте этот файл с помощью любого текстового редактора(например, блокнот) и скопируйте все от item до /item и вставте в конец файла. Затем, замените page – он должен быть уникальным для каждой страницы. Отредактируйте остальные теги. Всё, на сайте появилась новая страница. Если там присутсвует тег date, то эта страница будет расценена, как новость и будет также выводиться на странице “Архив новостей” и в блоке новостей появиться в самом верху. Старые новости сдвинутся вниз.

Часть четвертая – шаблон сайта.
Создаем папку (в нашем случае “theme1″) и в нее копируем готовый html-шаблон сайта, а также всё что к ниму относится: файл стилей, картинки и прочее. Затем переименовываем index.html в theme.php и открываем его на редактирование блокнотом. В самом начале вставляем строку:

<?if (!$k) header('Location:/')?>

Это нужно для того, чтобы этот файл могла обрабытывать только CMS.
Находим тег title и переписываем его таким образом:

<title>
<?php echo $title ?>
</title>

Также можно вставить эту строку в место вывода заголовка на самой странице, например в теге H1.

Ищем где в шаблоне находится часть связанная с выводом новостей и делаем следующие вставки:

<?php echo $newsdate[1] ?>

это сторока выведет дату самой последней новости

<?php echo $newscontent[1] ?>

выводим текст анонса новости

<a href="<?php echo $newsurl[1] ?>">подробнее</a>

вставили ссылку на страницу с полной новостью

Хочу обратить ваше внимание на то, что тут в квадратных скобках указана единица – это значит, что будет браться информация о последней новости. Если же изменить ее на “2″, то будет взята информация о предпоследней новости. “3″ – пред-предпоследняя новость и т.д.

После этого находим место вывода основного блока текста и ставляем строку:

<?php echo $content ?>

Ну и само-собой, необходимо в блоке с навигацией прописать статические ссылки на внутренние страницы: “О компании”, “Контакты” и пр.

Напоследок выкладываю архив со всеми файлами этой CMS

P.S.: надеюсь этот материал будет вам полезен и вы сможете разобраться в самой маленькой в мире CMS. Если возникнут вопросы – велком в комменты.
P.P.S.: на настройку шаблона, прикрепленного в архиве, а также на его поиски у меня ушло минут 15-20. Так что сделать сайт-визитку за полчаса вполне реально.

Comments 8 Comments »

squidooСегодня речь пойдет о том, как правильно прокачивать свои профили в социальных сетях и для чего это нужно.
За основу я решил взять социалку squidoo.com. Но перед тем как начнем, нам понадобится plugin для FireFox – SeoQuake. Взять его можно здесь – http://www.seoquake.com/guide.php?sln=ru
Итак, шаг первый: регистрируемся (рис. №1):
1. “First Name” – здесь вводим имя (для каждого профиля нужно использовать новые данные).
2. “Last Name” – фамилия.
3. “Your Email” и “Retype you email” – можно заполнить произвольно (но идентично), так как ни какой ссылки для подтверждения регистрации, на почту, не приходят.
4. “Desired Username” – желательное имя пользователя (будет использовано в ссылке на ваш профиль), тут лучше ввести что-то, что будет содержать ключевое слово продвигаемого ресурса. Например, buy_cheap_viagra.
5. “Password” и “Retype password” – вводим пароль, длиной от 6 до 8 символов.
Если все поля заполнены корректно, то увидим такую страницу: (рис. №2)
Переходим по ссылке “My Dashboard” – в верхней левой части страницы и далее идем на “Edit Your Bio”.(рис. №3)
На открывшейся странице ищем “Default Bio” жмем “Change” (рис. №4)
Внимание! Здесь будем ставить ссылку на свой сателлит/дорвей, но делать этого пока не нужно – об этом чуть позже. Пример ссылки смотрите на картинке: (рис. №5)
Всё, аккаунт успешно создан и настроен. Теперь нужно его прокачать. Для этого включаем плагин SeoQuake кликом мыши (он станет цветным) и идем в гугл. Далее вбиваем такой поисковый запрос “site:squidoo.com +”view all” +”comments”" (обращаю ваше внимание на то, что нужно экспериментировать с запросами, так как по данному методу удалось найти только 127000 страниц, а всего их более 5 миллионов).
(рис. №6) Итак, теперь начинается рутинная часть работы:
1. сортируем выдачу по гугл ПР в порядке убывания
2. заходим на каждую страницу и ищем внизу форму комментариев
3. писать что-то вроде “nice site”, “good job” и т.д. не рекомендую, так как большинство линз настроены на ручную модерацию всех комментариев. Поэтому сначала нужно ознакомиться с содержанием линзы и писать только по теме!!!
4. если все сделано правильно, наш профиль получает заветную ссылку с жирным ПР-ом.
Вообще, для того чтобы вывести в топ сателлит/дор, с конкуренцией до 60к по гуглу, достаточно всего 20 жирных беков (ПР3-ПР7) на профиль и ссылка с профиля на продвигаемую страницу с нужным анкором.
А теперь возвращаемся к тому моменту, когда я говорил, что ссылку со своего профиля не стоит ставить сразу. Только после того, как владельцы линз заапрувят ваш комментарий и таких комментариев будет не менее 20, тогда ставим свой линк.
Вот в принципе и всё. Таким же образом прокачивают профили в других социалках и форумах. Весь процесс сводится к тому, что мы ищем жирные страницы и их комментируем, тем самым получаем бэклинк на профиль, а уже с профиля ссылаемся на свой ресурс.
P.S.: такие прокаченные профили еще называют “трамплинами”. Если вы хотите создавать несколько таких трамплинов в одной социалке, то рекомендую использовать сервис типа hideme.ru (для скрытия реального IP-адреса) и каждый раз чистить куки, чтобы модераторы не выкосили всю сетку.
P.P.S.: трамплины также можно перелинковывать, но делать это нужно крайне осторожно, чтобы не потерять всё в один момент. Делается это по принципу: один аккаунт в одной социалке ссылается на два-три аккаунта в других социалках (тематики профилей должны быть сходными).
P.P.P.S.: все картинки кликабельны.

step1step2step3
step4step5step6

Comments No Comments »

ушел в работуДо конца этого месяца нужно успеть сделать еще 15 сателлитов, иначе могу потерять крупный заказ. Так что до ноября скорее всего не появлюсь.
До скорых встреч. Ушел в работу….

Comments No Comments »