Скрипт выгрузки товаров интернет магазина

Часто бывает, когда при работе магазина, который торгует товарами определенной тематики, магазин дорастает до своего предела, когда на склад больше нечего добавить. А всегда хочется больше. В таком случае одним из подходов является увеличения видимости своей товарной базы путем создания страниц на сайтах партнеров. В таком случае вероятность покупки товара у нас возрастает.
Покажем на примере как сделать выгрузку товаров для сайта http://shtepsel.com/category/obektivy-dlya-telefonov-i-planshetov/

  1. Делаем таблицу с информацией для страниц:
  2. CREATE TABLE IF NOT EXISTS `shtepsel` (
      `id` int(11) NOT NULL,
      `keyword` varchar(256) NOT NULL,
      `alias` varchar(256) NOT NULL,
      `title` varchar(256) NOT NULL,
      `chastota` int(11) NOT NULL,
      `E` float NOT NULL,
      `N` float NOT NULL,
      `photo` varchar(256) NOT NULL,
      `photos` text NOT NULL,
      `cat_id` int(11) NOT NULL,
      `info` text NOT NULL,
      `raspolog` text NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
    
  3. http://galleryua.com/obyektivy-dlya-iphone-telefona/insert-info-rolfis.php
  4. Этот скрипт строит дамп базы из списка запросов, частоты и релевантных страниц сайта, перечисленных через запятую в файле: http://galleryua.com/obyektivy-dlya-iphone-telefona/insert.csv.txt

  5. http://galleryua.com/obyektivy-dlya-iphone-telefona/update-info-rolfis.php - строим алиасы. То, что выдает скрипт на выходе просто копируем в ставляем в виде SQL-запроса в PhpMyAdmin.
  6. http://galleryua.com/obyektivy-dlya-iphone-telefona/update-info-rolfis-i... - наполняем контентом. Поступаем с данными аналогично предыдущему пункту.
  7. На выходе получаем такую таблицу:
  8. таблица после изменений

  9. Теперь страница стала доступной: http://galleryua.com/obyektivy-dlya-iphone-telefona/ukraine/11-.html
  10. страница после изменений таблицы

  11. Для генерации внутренней перелинковки с сайтом пользуемся Excel:
  12. excel для генерации страниц перелинковки

    Оригинал файла сохранен в папке Desktop\SEO Курсы по Городам\shtepsel.xlsx

  13. Получаем строки в таком формате:
  14. INSERT INTO `links` (`url`, `link`, `anckor`) VALUES ('/photo/dostoprimechatelnosti/1001440-Korostyshevskij-karer', 'http://galleryua.com/obyektivy-dlya-iphone-telefona/ukraine/1-fishay-dlya-iphone.html', 'фишай для iphone в Киеве');
    INSERT INTO `links` (`url`, `link`, `anckor`) VALUES ('/photo/shakhtjorskij-rajon/26049-zaroshchenske', 'http://galleryua.com/obyektivy-dlya-iphone-telefona/ukraine/2-fisheye-dlya-iphone.html', 'fisheye для iphone в Харькове');
    INSERT INTO `links` (`url`, `link`, `anckor`) VALUES ('/photo/dostoprimechatelnosti/1003186-Lysaya-gora', 'http://galleryua.com/obyektivy-dlya-iphone-telefona/ukraine/3-fishay-dlya-smartfona.html', 'фишай для смартфона в Одессе');
    INSERT INTO `links` (`url`, `link`, `anckor`) VALUES ('/photo/dostoprimechatelnosti/1002612-Gard', 'http://galleryua.com/obyektivy-dlya-iphone-telefona/ukraine/4-rybiy-glaz-na-ayfon-5.html', 'рыбий глаз на айфон 5 в Днепропетровске');
    INSERT INTO `links` (`url`, `link`, `anckor`) VALUES ('/photo/novomoskovskij-rajon/15366-cherkaske', 'http://galleryua.com/obyektivy-dlya-iphone-telefona/ukraine/5-fishay-dlya-iphone-5s.html', 'фишай для iphone 5s в Донецке');
    

    Загружаем их на сервер в виде файла дампа памяти:

    /var/www/gallery/data/www/galleryua.com/obyektivy-dlya-iphone-telefona/_sql/links_obyekt
    

    Выполняем команду через SSH:

    [root@176 ~]# mysql -uroot -p -f galleryua_gallerist < /var/www/gallery/data/www/galleryua.com/obyektivy-dlya-iphone-telefona/_sql/links_obyekt

    Получилось в общей сложности чуть больше 12 тысяч ссылок:

    таблица с сгенерированными ссылками

  15. Файл http://galleryua.com/photo/api_links_reklama_my.php?q=/photo/sovetskij-r... должен сразу подгрузить новые ссылки и вывести их ну нужной странице, в данном случае http://galleryua.com/photo/sovetskij-rajon/21430-sovjetskyi
  16. Устроен он очень просто:

    <?php
    $uri = $_GET['q'];
    define( '_JEXEC', 1 );
    define('JPATH_BASE', dirname(__FILE__));
    define( 'DS', DIRECTORY_SEPARATOR );
    require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
    require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
    /* Создание приложения на базе основного класса JFactory*/
    $mainframe =& JFactory::getApplication('site');
    $db1 =& JFactory::getDBO();
        $query1 = $db1->getQuery(true);
        $query1 = "SELECT * FROM  `links` WHERE  `url` LIKE '".$uri."'";
        $db1->setQuery($query1);
        $res1= $db1->loadObjectList();
    	//echo $query1;
    	//print_r($res1);
        if (count($res1) > 0) 
    	 {
    	   echo ""; 
    	 }	 
    ?>
    

    скрипт подгрузки новых ссылок

    Действительно ссылки сразу появились:

    ссылки появились

  17. Теперь перейдем к созданию 5-и минутного блока новостей (т.е. по очереди будем транслировать все только что созданные страницы на сайте с 5-и минутным изменением этой очереди [смещением на 1 каждые 30 минут]): http://galleryua.com/photo/api_links_last5-time.php
  18. обновление каждые 30 минут

    Код скрипта очень простой:

    <?php
    //$id = $_GET['id'];
    $time_now = time();
    $id =  round(($time_now - 1433104633 ) / 60 / 30);
    //echo $id;
    define( '_JEXEC', 1 );
    define('JPATH_BASE', dirname(__FILE__));
    define( 'DS', DIRECTORY_SEPARATOR );
    require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
    require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
    /* Создание приложения на базе основного класса JFactory*/
    $mainframe =& JFactory::getApplication('site');
    $db1 =& JFactory::getDBO();
        $query1 = $db1->getQuery(true);
        $query1 = "SELECT * FROM  `shtepsel` WHERE  `id` >= ".$id." AND `id` < ".($id + 3);
    	//echo $query1;
        $db1->setQuery($query1);
        $res1= $db1->loadObjectList();
    	//echo $query1;
    	//print_r($res1);
        if (count($res1) > 0) 
    	{  echo "

    Т.е. через 10 дней (к 10 июня 2015 года) будут опубликованы все новости и скрипт перестанет что либо выводить.

  19. 11. Для включения результата выполнения скрипта в тело страницы отредактируем шаблон, для этого откроем:
    /var/www/gallery/data/www/galleryua.com/photo/templates/a4joomla-tillage-free/index.php
  20. И добавим код:

    <?php 
    $server_uri=$_SERVER['REQUEST_URI'];
    echo file_get_contents("http://galleryua.com/photo/api_links_reklama_my.php?q=".$server_uri);
    echo file_get_contents("http://galleryua.com/photo/api_links_last5-time.php");
    ?>

    скрипт в теле страницы

  21. Получаем блок:
  22. блок вывода случайных новостей

Print Friendly Version of this pagePrint Get a PDF version of this webpagePDF