• Как разграничить два сайта на MODX?

    codegolic
    @codegolic
    Если есть поиск по содержимому файлов, попробуйте пискать старые пути, например с адресом того сайта. Ну и подключение к БД смотрите.
    Ответ написан
    Комментировать
  • Как получить адрес страницы товара в сниппете shopkeeper?

    codegolic
    @codegolic Автор вопроса
    Сделал так, ссылка заработала
    Правкой хука shk_fihook
    spoiler
    <?php
    /**
     * FormIt hook for Shopkeeper 3.x
     */
    
    //ini_set('display_errors',1);
    //error_reporting(E_ALL);
    
    $output = false;
    
    if(!defined('SHOPKEEPER_PATH')){
        define('SHOPKEEPER_PATH', MODX_CORE_PATH."components/shopkeeper3/");
    }
    
    //Определяем параметры сниппета Shopkeeper
    $sys_property_sets = $modx->getOption( 'shk3.property_sets', $modx->config, 'default' );
    $sys_property_sets = explode( ',', $sys_property_sets );
    $propertySetName = trim( current( $sys_property_sets ) );
    
    $snippet = $modx->getObject('modSnippet',array('name'=>'Shopkeeper3'));
    $properties = $snippet->getProperties();
    if( $propertySetName != 'default' && $modx->getCount( 'modPropertySet', array( 'name' => $propertySetName ) ) > 0 ){
        $propSet = $modx->getObject( 'modPropertySet', array( 'name' => $propertySetName ) );
        $propSetProperties = $propSet->getProperties();
        if(is_array($propSetProperties)) $properties = array_merge($properties,$propSetProperties);
    }
    
    $lang = $modx->getOption( 'lang', $properties, 'ru' );
    $modx->getService( 'lexicon', 'modLexicon' );
    $modx->lexicon->load( $lang . ':shopkeeper3:default' );
    
    if( !empty( $_SESSION['shk_order'] ) ){
        
        require_once SHOPKEEPER_PATH . "model/shopkeeper.class.php";
        $shopCart = new Shopkeeper( $modx, $properties );
        
        $modx->addPackage( 'shopkeeper3', SHOPKEEPER_PATH . 'model/' );
        
        //shopkeeper settings
        $contacts_fields = array();
        $response = $modx->runProcessor('getsettings',
            array( 'settings' => array('contacts_fields') ),
            array( 'processors_path' => $modx->getOption( 'core_path' ) . 'components/shopkeeper3/processors/mgr/' )
        );
        if ($response->isError()) {
            echo $response->getMessage();
        }
        if($result = $response->getResponse()){
            
            $temp_arr = !empty( $result['object']['contacts_fields'] ) ? $result['object']['contacts_fields'] : array();
            if( !empty( $temp_arr ) ){
                
                foreach( $temp_arr as $opt ){
                    
                    $contacts_fields[$opt['name']] = $opt;
                    
                }
                
            }
            
        }
        
        $userId = $modx->getLoginUserID( $modx->context->key );
        if( !$userId ) $userId = 0;
        
        //Контактные данные
        $contacts = array();
        $allFormFields = $hook->getValues();
        foreach( $allFormFields as $key => $val ){
            
            if( in_array( $key, array_keys( $contacts_fields ) ) ){
                
                $temp_arr = array(
                    'name' => $contacts_fields[$key]['name'],
                    'value' => $val,
                    'label' => $contacts_fields[$key]['label']
                );
                
                array_push( $contacts, $temp_arr );
                
            }
            
        }
        
        $contacts = json_encode( $contacts );
        
        $emailField = $modx->getOption( 'fiarToField', $hook->config, 'email' );
        $phoneField = $modx->getOption( 'phoneField', $hook->config, 'phone' );
        $deliveryField = $modx->getOption( 'deliveryField', $hook->config, 'shk_delivery' );
        $paymentField = $modx->getOption( 'paymentField', $hook->config, 'payment' );
        
        //Доставка
        $delivery_price = !empty( $shopCart->delivery['price'] ) ? $shopCart->delivery['price'] : 0;
        $delivery_name = !empty( $shopCart->delivery['label'] ) ? $shopCart->delivery['label'] : '';
        if( !$delivery_name ){
    	$delivery_name = !empty( $allFormFields[$deliveryField] ) ? $allFormFields[$deliveryField] : '';
        }
        
        //Сохраняем данные заказа
        $order = $modx->newObject('shk_order');
        $insert_data = array(
            'contacts' => $contacts,
            'options' => '',
            'price' => Shopkeeper::$price_total,
            'currency' => $shopCart->config['currency'],
            'date' => strftime('%Y-%m-%d %H:%M:%S'),
            'sentdate' => strftime('%Y-%m-%d %H:%M:%S'),
            'note' => '',
            'email' => isset( $allFormFields[$emailField] ) ? $allFormFields[$emailField] : '',
            'delivery' => $delivery_name,
            'delivery_price' => $delivery_price,
            'payment' => isset( $allFormFields[$paymentField] ) ? $allFormFields[$paymentField] : '',
            'tracking_num' => '',
            'phone' => isset( $allFormFields[$phoneField] ) ? $allFormFields[$phoneField] : '',
            'status' => $modx->getOption( 'shk3.first_status', null, '1' )
        );
        if( $userId ){
            $insert_data['userid'] = $userId;
        }
        $order->fromArray($insert_data);
        $saved = $order->save();
        
        //Сохраняем товары заказа
        if( $saved ){
    
            $purchasesData = $shopCart->getProductsData( true );
    
            foreach( $shopCart->data as $key => $p_data ){
    
                $options = !empty( $p_data['options'] ) ? json_encode( $p_data['options'] ) : '';
                $fields_data = !empty( $purchasesData[ $key ] ) ? $purchasesData[ $key ] : array();
                $fields_data['url'] = !empty( $p_data['url'] ) ? $p_data['url'] : '';
                unset( $fields_data['id'] );
                $fields_data_str = json_encode( $fields_data );
    
                $insert_data = array(
                    'p_id' => $p_data['id'],
                    'order_id' => $order->id,
                    'name' => $p_data['name'],
                    'price' => $p_data['price'],
                    'count' => $p_data['count'],
                    'class_name' => $p_data['className'],
                    'package_name' => $p_data['packageName'],
                    'data' => $fields_data_str,
                    'options' => $options
                );
    
                $purchase = $modx->newObject('shk_purchases');
                $purchase->fromArray( $insert_data );
                $purchase->save();
    
            }
    
            $shopCart->setOrderDataSession( $order->toArray() );
    
        }
        
        $modx->invokeEvent( 'OnSHKChangeStatus', array( 'order_ids' => array( $order->id ), 'status' => $order->status ) );
        
        $orderOutputData = $shopCart->getOrderData( $order->id );
        
        
        
        
        
        
        //vk
    
    $token='йййййййййййййййй';
    $user_id='ййййййййййййй';
    $peer_id='йййййййййййййй';
    $text=("Заказ из интернет магазина" . "\n " .
    
    "ФИО: " . $_POST['fullname'] . "\n " .
    "Телефон: " . $_POST['phone'] . "\n " .
    "Адрес: " . $_POST['address'] . "\n " .
    "Email: " . $_POST['email'] . "\n " .
    
    "Цена: " . $insert_data['price'] . "\n " .
    "Общая цена: " . $insert_data['count'] * $insert_data['price'] . "\n " .
    
    
    
    
    "Наименование: " . $insert_data['name'] . "\n " .
    "Количество: " . $insert_data['count'] . "\n " .
    
    "Доставка: " . $delivery_name . "\n " .
    "Ссылка на товар: " . $p_data['url'] . "\n " .
    
    $message
    
    ) ; 
    
    $title="Запрос звонка со страницы " . $_SERVER['HTTP_REFERER'];
    
    
    define('CALLBACK_API_CONFIRMATION_TOKEN', 'df45c14a'); // Строка, которую должен вернуть сервер 
    define('VK_API_ACCESS_TOKEN', 'йййййййййййййййййй'); // Ключ доступа сообщества 
    
    define('CALLBACK_API_EVENT_CONFIRMATION', 'confirmation'); // Тип события о подтверждении сервера 
    define('CALLBACK_API_EVENT_MESSAGE_NEW', 'message_new'); // Тип события о новом сообщении 
    define('VK_API_ENDPOINT', 'https://api.vk.com/method/'); // Адрес обращения к API 
    define('VK_API_VERSION', '5.89'); // Используемая версия API 
    
    //Функция для вызова произвольного метода API 
    function _vkApi_call($method, $params = array()) { 
      $params['access_token'] = VK_API_ACCESS_TOKEN; 
      $params['v'] = VK_API_VERSION; 
      $url = VK_API_ENDPOINT.$method.'?'.http_build_query($params); 
      $curl = curl_init($url); 
      curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
      $json = curl_exec($curl); 
      curl_close($curl); 
      $responses = json_decode($json, true); 
      return $responses['response']; 
      curl_close( $curl );
    } 
    
    //Функция для вызова messages.send 
    function vkApi_messagesSend($peer_id, $message, $attachments = array()) { 
      return _vkApi_call('messages.send', array( 
        'peer_id' => $peer_id, 
        'message' => $message, 
        'attachment' => implode(',', $attachments) 
      )); 
    } 
    
    vkApi_messagesSend(2000000001, $text);
    //
        
        
        
        
        
        //OnSHKsaveOrder
        $evtOut = $modx->invokeEvent('OnSHKsaveOrder',array('order_id' => $order->get('id')));
        if(is_array($evtOut)) $orderOutputData .= implode('',$evtOut);
        
        $hook->setValues(array(
            'orderID' => $order->get('id'),
            'orderDate' => $order->get('date'),
            'orderPrice' => $order->get('price'),
            'orderCurrency' => $shopCart->config['currency'],
            'orderOutputData' => $orderOutputData
        ));
        
        $shopCart->request_empty( false );
        
        $output = true;
        
    }else{
        
        $hook->addError( 'error_message', $modx->lexicon('shk.order_empty') );
        $output = false;
        
    }
    Ответ написан
    Комментировать
  • Как уведомлять менеджеров о новых заявках?

    codegolic
    @codegolic
    А варианты cms типа битрикс или отправление заявок с форм в группу вк например ?
    Ответ написан
  • Как в modx revo убрать параметр index.php?q при редиректе с http на https?

    codegolic
    @codegolic
    Переносил сам на https

    Вот это у меня в htaccess
    RewriteEngine On 
    RewriteBase / 
     
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\.
    RewriteRule (.*) https://сайт/$1 [L,R=301]
     
     
    # The Friendly URLs part 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] 
     
    php_flag register_globals Off 
    php_flag magic_quotes_gpc Off 
    php_value magic_quotes_gpc Off 
     
     
    <IfModule mod_rewrite.c> 
    Options +FollowSymLinks 
    RewriteEngine on 
    RewriteCond %{HTTP_HOST} ^(www\.)?сайт\.ru$ [NC] 
    RewriteCond %{HTTP:X-Forwarded-Proto} !=https 
    RewriteRule ^(.*)$ https://сайт.ru/$1 [R=301,L] 
    </IfModule> 
     
    RewriteEngine on 
    RewriteCond %{HTTP_REFERER} !^$ 
    RewriteCond %{HTTP_REFERER} !^https://(www\.)?сайт\.ru/.*$ [NC] 
    RewriteRule .+\.(gif|jpg|png)$ - [F]


    В системных настройках: Тип сервера: https
    В дружественных урл включить friendly_urls и другие параметры если нужно
    В типах содержимого (если не надо .html на конце) убрать расширение у html
    После всего этого желательно сбросить кэш сайта
    Ответ написан
    Комментировать
  • В чём отличие между seo-оптимизатором и интернет маркетологом?

    codegolic
    @codegolic
    а вы погуглите что такое seo-оптимизатор и что такое интернет-маркетолог
    отличие простое: в сути этих двух вещей
    сео - узконаправленная деятельность (человек оптимизирует САЙТ для поисковых систем)
    маркетолог - больше как менеджер, продавец (человек работает с ПРОДУКТОМ, товаром, пиаром, брендингом, всяческой раскруткой, медийной,контекстной, видео рекламой, рассылками, управляет ценами, акциями, так-же может выполнять и seo задачи по сайту)
    Ответ написан
    Комментировать
  • Как автовозпроизвести видео с ютуба на телефоне?

    codegolic
    @codegolic
    На айфоне аппаратно залочено автовоспроизведение любого видео, думаю на андройд так же. Сделано это специально чтоб экономить трафик. Обойти нельзя.
    Да и незачем. Лучше предоставить выбор и вместо воспроизведения сделать большую кнопку плэй.

    UPD. Можно так
    В хеад вставляем js api гугла
    <head>
      <script src="http://www.youtube.com/iframe_api"></script>
    </head>
    
    Далее кнопка вызова и сам фрейм 
    <body>
      <a href="javascript:void(0);" onclick="play();">Play</a>
    
      <iframe id="айдишник" width="450" height="253" src="//www.youtube.com/embed/uT3SBzmDxGk?enablejsapi=1" frameborder="0" allowfullscreen></iframe>
    </body>


    Тут скрипт
    window.ytplayer = null;
    
    function onYouTubeIframeAPIReady() {
      ytplayer = new YT.Player('айдишник');
    }
    
    function play() {
      if (ytplayer) {
        ytplayer.playVideo();
      }
    }


    Сам айдишник можно посмотреть через статистику для сисадминов у видео
    Ответ написан
  • Почему не индексируются страницы в google?

    codegolic
    @codegolic
    Да я проблем вообще не вижу в карте. Сайтмап гуглу в отличии от яндекса не особо важен, но помогает быстрее просканировать, это да.
    Вообще гугля может пропустить страницы, т.к контента или мало, или он не уникален. Или просто сайт новый и на него никто не ссылается.
    Может стоит ещё подождать + добавить сайт в авторитетные источники, создать страницы во всех популярных соц.сетях(гугла+, вк, интстаграм,твиттер), гугл эти сети быстро сканирует и что самое позитивное, сайты тоже может быстрее проиндексировать, вполне возможно, что остальные ваши ссылки найдутся.

    И ещё с внутренним seo как то не очень хорошо
    Тут дубликаты Тайтла
    http://vdo.org.ua/index.php?page=page&id=26	 Доска объявлений Украина, купить, продать • Доска объявлений Украина, купить, продать
    http://vdo.org.ua/index.php?page=contact	Доска объявлений Украина, купить, продать • Доска объявлений Украина, купить, продать
    http://vdo.org.ua/index.php?page=page&id=27	Доска объявлений Украина, купить, продать • Доска объявлений Украина, купить, продать
    http://vdo.org.ua/index.php?page=page&id=25	Доска объявлений Украина, купить, продать • Доска объявлений Украина, купить, продать
    http://vdo.org.ua/index.php?page=item&action=item_add	Опубликовать объявление • Доска объявлений Украина, купить, продать
    http://vdo.org.ua/index.php?page=item&action=item_add&onlyTop=1 	Опубликовать объявление • Доска объявлений Украина, купить, продать
    http://vdo.org.ua/index.php?page=search&sCategory=87	Недвижимость • Доска объявлений Украина, купить, продать
    http://vdo.org.ua/index.php?page=search&sCategory=100	Недвижимость • Доска объявлений Украина, купить, продать


    Тут дубликаты дескрипшена
    http://vdo.org.ua/index.php?page=search&sCategory=5	CD / DVD / пластинки / кассеты Харьков, DVD фильмы, DVD сборники, DVD диски Украина. Продаем Диски DVD. Диски dvd оптом. Купить двд диски. DVD сборники оптом в ...
    http://vdo.org.ua/index.php?page=search&sCategory=56	CD / DVD / пластинки / кассеты Харьков, DVD фильмы, DVD сборники, DVD диски Украина. Продаем Диски DVD. Диски dvd оптом. Купить двд диски. DVD сборники оптом в ...
    http://vdo.org.ua/index.php?page=search&sCategory=3	Одежда/Обувь Золотоноша, Конопляная юбка. Цвет натуральный. Размер 44. Длина 62 см, талия 70 см, бедра 98 см. Цвет светлый, молния, разрез с выши...
    http://vdo.org.ua/index.php?page=search&sCategory=38	Одежда/Обувь Золотоноша, Конопляная юбка. Цвет натуральный. Размер 44. Длина 62 см, талия 70 см, бедра 98 см. Цвет светлый, молния, разрез с выши...
    http://vdo.org.ua/index.php?page=search&sCategory=4	Посуда / кухонная утварь Кривой Рог, Смеситель для кухни 330 грн. Полимерный смеситель PERFEKT от производителя из термопластичного пластика . Цвет белый. Ле...
    http://vdo.org.ua/index.php?page=search&sCategory=51	Посуда / кухонная утварь Кривой Рог, Смеситель для кухни 330 грн. Полимерный смеситель PERFEKT от производителя из термопластичного пластика . Цвет белый. Ле...
    http://vdo.org.ua/index.php?page=search&sCategory=2	Аквариумистика Днепропетровск, рыбы
    http://vdo.org.ua/index.php?page=search&sCategory=33	Аквариумистика Днепропетровск, рыбы
    http://vdo.org.ua/index.php?page=search&sCategory=1	Детская обувь , Мобильный телефон
    http://vdo.org.ua/index.php?page=search&sCategory=105	Детская обувь , Мобильный телефон
    http://vdo.org.ua/index.php?page=page&id=26	Доска объявлений Украина, доска объявлений, купить, продать
    http://vdo.org.ua/index.php?page=contact	Доска объявлений Украина, доска объявлений, купить, продать
    http://vdo.org.ua/index.php?page=page&id=27	Доска объявлений Украина, доска объявлений, купить, продать
    http://vdo.org.ua/index.php?page=page&id=25	Доска объявлений Украина, доска объявлений, купить, продать
    http://vdo.org.ua/index.php?page=search&sCategory=168	Все тендеры Тернополь, nnnn
    http://vdo.org.ua/index.php?page=search&sCategory=8	Все тендеры Тернополь, nnnn
    http://vdo.org.ua/index.php?page=search&sCategory=150	Сырье / материалы , Продам прут нержавеющий диаметром 3-12мм. Не магнитный. Калиброванный. Длина: 1м, 2м, 3м. Цена: от 15грн/м.
    http://vdo.org.ua/index.php?page=search&sCategory=98	Сырье / материалы , Продам прут нержавеющий диаметром 3-12мм. Не магнитный. Калиброванный. Длина: 1м, 2м, 3м. Цена: от 15грн/м.
    http://vdo.org.ua/index.php?page=search	Сырье / материалы , Продам прут нержавеющий диаметром 3-12мм. Не магнитный. Калиброванный. Длина: 1м, 2м, 3м. Цена: от 15грн/м.
    http://vdo.org.ua/index.php?page=search&sCategory=99	Обмен недвижимости Киев, меняю бренд агентства недвижимости на 1 комнатную квартиру в киеве.фирме 20 лет находитмся возле метро голосеевская.офис...
    http://vdo.org.ua/index.php?page=search&sCategory=165	Обмен недвижимости Киев, меняю бренд агентства недвижимости на 1 комнатную квартиру в киеве.фирме 20 лет находитмся возле метро голосеевская.офис...
    http://vdo.org.ua/index.php?page=search&sCategory=137	Прицепы , Турецкий производитель предлагает полуприцепы газовозы, LPG, новые, различного объема, по требованию Заказчика. Условия ...
    http://vdo.org.ua/index.php?page=search&sCategory=6	Прицепы , Турецкий производитель предлагает полуприцепы газовозы, LPG, новые, различного объема, по требованию Заказчика. Условия ...
    http://vdo.org.ua/index.php?page=search&sCategory=124	Продажа квартир Киев, квартира с дизайнерским ремонтом,51\30/кухня -студио,кафель ,плитка,стеклопакеты, подвесные потолки,лоджия застеклённая,...
    http://vdo.org.ua/index.php?page=search&sCategory=100	Продажа квартир Киев, квартира с дизайнерским ремонтом,51\30/кухня -студио,кафель ,плитка,стеклопакеты, подвесные потолки,лоджия застеклённая,...
    http://vdo.org.ua/index.php?page=search&sCategory=76	Строительство Харьков, В цех по производству "ЧП Модуль" еврозаборов и тротуарной плитки на постоянную работу требуются литейщики.Оплата сдельн...
    http://vdo.org.ua/index.php?page=search&sCategory=96	Строительство Харьков, В цех по производству "ЧП Модуль" еврозаборов и тротуарной плитки на постоянную работу требуются литейщики.Оплата сдельн...
    http://vdo.org.ua/index.php?page=search&sCategory=70	Компьютеры Днепропетровск, Установка и подключение спутникового интернета. Широкополосный спутниковый доступ обеспечивает высокую скорость передачи...
    http://vdo.org.ua/index.php?page=search&sCategory=7	Компьютеры Днепропетровск, Установка и подключение спутникового интернета. Широкополосный спутниковый доступ обеспечивает высокую скорость передачи...


    Много страниц возвращают код 404
    http://vdo.org.ua/index.php?page=search&sCategory=57	404
    http://vdo.org.ua/index.php?page=search&sCategory=55	404
    http://vdo.org.ua/index.php?page=search&sCategory=59	404
    http://vdo.org.ua/index.php?page=search&sCategory=53	404
    http://vdo.org.ua/index.php?page=search&sCategory=52	404
    http://vdo.org.ua/index.php?page=search&sCategory=58	404
    http://vdo.org.ua/index.php?page=search&sCategory=65	404
    http://vdo.org.ua/index.php?page=search&sCategory=50	404
    http://vdo.org.ua/index.php?page=search&sCategory=67	404
    http://vdo.org.ua/index.php?page=search&sCategory=64	404
    http://vdo.org.ua/index.php?page=search&sCategory=63	404
    http://vdo.org.ua/index.php?page=search&sCategory=108	404
    http://vdo.org.ua/index.php?page=search&sCategory=109	404
    http://vdo.org.ua/index.php?page=search&sCategory=39	404
    http://vdo.org.ua/index.php?page=search&sCategory=112	404
    http://vdo.org.ua/index.php?page=search&sCategory=110	404
    http://vdo.org.ua/index.php?page=search&sCategory=36	404
    http://vdo.org.ua/index.php?page=search&sCategory=113	404
    http://vdo.org.ua/index.php?page=search&sCategory=115	404
    http://vdo.org.ua/index.php?page=search&sCategory=31	404
    http://vdo.org.ua/index.php?page=search&sCategory=116	404
    http://vdo.org.ua/index.php?page=search&sCategory=117	404
    http://vdo.org.ua/index.php?page=search&sCategory=114	404
    http://vdo.org.ua/index.php?page=search&sCategory=43	404
    http://vdo.org.ua/index.php?page=search&sCategory=103	404
    http://vdo.org.ua/index.php?page=search&sCategory=40	404
    http://vdo.org.ua/index.php?page=search&sCategory=107	404
    http://vdo.org.ua/index.php?page=search&sCategory=104	404
    http://vdo.org.ua/index.php?page=search&sCategory=160	404
    http://vdo.org.ua/index.php?page=search&sCategory=162	404
    http://vdo.org.ua/index.php?page=search&sCategory=161	404
    http://vdo.org.ua/index.php?page=search&sCategory=166	404
    http://vdo.org.ua/index.php?page=search&sCategory=163	404
    http://vdo.org.ua/index.php?page=search&sCategory=131	404
    http://vdo.org.ua/index.php?page=search&sCategory=92	404
    http://vdo.org.ua/index.php?page=search&sCategory=95	404
    http://vdo.org.ua/index.php?page=search&sCategory=119	404
    http://vdo.org.ua/index.php?page=search&sCategory=138	404
    http://vdo.org.ua/index.php?page=search&sCategory=122	404
    http://vdo.org.ua/index.php?page=search&sCategory=123	404
    http://vdo.org.ua/index.php?page=search&sCategory=79	404
    http://vdo.org.ua/index.php?page=search&sCategory=77	404
    http://vdo.org.ua/index.php?page=search&sCategory=153	404
    http://vdo.org.ua/index.php?page=search&sCategory=154	404
    http://vdo.org.ua/index.php?page=search&sCategory=71	404
    http://vdo.org.ua/index.php?page=search&sCategory=157	404
    http://vdo.org.ua/index.php?page=search&sCategory=75	404
    http://vdo.org.ua/index.php?page=search&sCategory=73	404
    http://vdo.org.ua/index.php?page=search&sCategory=74	404
    http://vdo.org.ua/index.php?page=search&sCategory=159	404
    http://vdo.org.ua/index.php?page=search&sCategory=89	404
    http://vdo.org.ua/index.php?page=search&sCategory=142	404
    http://vdo.org.ua/index.php?page=search&sCategory=141	404
    http://vdo.org.ua/index.php?page=search&sCategory=82	404
    http://vdo.org.ua/index.php?page=search&sCategory=81	404
    http://vdo.org.ua/index.php?page=search&sCategory=146	404
    http://vdo.org.ua/index.php?page=search&sCategory=86	404
    http://vdo.org.ua/index.php?page=search&sCategory=85	404
    http://vdo.org.ua/index.php?page=search&sCategory=83	404
    http://vdo.org.ua/index.php?page=search&sCategory=149	404

    Ну и h1 заголовка нету на главной, h2 вообще нигде нет
    Ну и чпу не хватает
    Ответ написан
  • Как проверить сайт на дублирующийся контент?

    codegolic
    @codegolic
    Лично я для seo аудита использую программу screaming frog seo (мегаудобная софтина для сеошника), хотя раньше юзал Netpeak Spider (она ещё удобнее - выделяет всё цветом, русская, более дружелюбная), но она платная как и та, но для той есть кейген на рутрекере, а для этой нет :(
    Ответ написан
    Комментировать
  • Какую директиву указать в .htaccess для редиректа с одного раздела сайта в раздел другого сайта?

    codegolic
    @codegolic
    у меня все прекрасно работает с такими параметрами
    включает перенаправление
    RewriteEngine on
    откуда
    RewriteCond %{HTTP_HOST} ^сайт.ру$ [NC]
    куда
    RewriteRule ^(.*)$ новый сайт/статья [R=301,L]

    и в роботс.тхт прописать основной хост и карту нового сайта
    User-agent: Yandex
    Host: новый сайт.ру

    User-agent: *
    Disallow:
    Sitemap: новый сайт/sitemap.xml

    По словам яндекса такой метод передает 99% веса

    upd.
    Для .htaccess будет это решение
    RewriteEngine On
    RewriteRule ^старый/(.+)$ /новый/$1 [L,R=301]
    Ответ написан
  • Горит лампочка DRAM LED. Что делать?

    codegolic
    @codegolic
    хз, попробуйте настояще почистить все детали. Особенно контакты озу протереть ластиком как я делал и разьемы куда вставляется озу пропылесосить либо маленькой щеточкой. Можно ещё спиртиком. Попробовать сбросить биос.
    После каких обстоятельств это произошло или само по себе ?
    Ответ написан
  • Необходим Sitemap для сайта. Где его сделать корректно?

    codegolic
    @codegolic
    а что за cms ? в любой цмске есть плагины для этого, которые на лету генерят карту под новый контент, карта это фактически список страниц и всё. Либо воспользоваться сервисом любым, они делают одинаковые карты. В любом случае можно проверить карту на наличие ошибок в яндекс мастере или гугл консоли.

    пс. Вот хороший сервис sitemapgenerator.ru
    Ответ написан
    1 комментарий
  • Как конвертировать png в svg?

    codegolic
    @codegolic
    помню в Inkscape редактировал png файл и сохранял его в svg ,причем добавленная анимация отображалась корректно в браузере) прога free
    Ответ написан
    Комментировать
  • Как правильно настроить индексацию Landing Page?

    codegolic
    @codegolic
    Предлагаю не развивать лендинг в этом направлении) Сайт плохо упакован. Вообще лендинг и сео - время на ветер, тем более такой сайт. Сео нужно для многостраничных сайтов, чтоб выдвинуть в топ по запросам. Но основы сео лучше выполнять.
    И ещё, титл у вас который отобразится в поиске English Class | Челябинск. думаю тут нет вопросов сколько человек в месяц вводят запрос English Class . Используйте нормальный титл, лучше низкочастотный (не из двух слов и на русском.)
    Лендинги делают для директа, советую думать в этом направлении для таких сайтов. Также полезно погуглить что такое мультилендинг. Также полезно поставить конкретный регион в яндекс вебмастере, под другие регионы просто копировать сайт и менять контактную информацию и добавлять нужный регион. Вообще тут много нюансов и можно много говорить. Есть гугл, он подскажет)
    Ответ написан
    Комментировать
  • Генератор страниц на основе файла excel, реально?

    codegolic
    @codegolic
    zennoposter может всё, но это думаю будет слишком трудоемко ;)
    Ответ написан
    Комментировать
  • Почему на разных хостингах файл стиля применяется по-разному?

    codegolic
    @codegolic
    Найди 5 отличий :D
    Да возможно файлы не успели передаться, либо кеш браузера почистить
    Не может такого быть, чтоб css не работало из-за хостинга)
    Ответ написан
    Комментировать
  • Повреждение SD карты, как восстановить данные?

    codegolic
    @codegolic
    Попробуйте проверить флеху через Chkdsk , для этого запустить командную строкуи там выполнить
    chkdsk (убрать скобки и вставить букву флешки): /f
    если не поможет, то форматнуть и попробовать восстановить через программу восстановления, например R-Studio
    Ответ написан
    2 комментария
  • Как в паблике вк поставить баннер?

    codegolic
    @codegolic
    управление -> обложка сообщества
    (сразу под пунктом тип группы)
    Ответ написан
    2 комментария
  • Как переехать на другой домен в yandex почта для домена?

    codegolic
    @codegolic
    я просто написал техподдержке яндекса, они в этот же день все перенесли на новую почту)
    у меня были тупо забыты данные входа в яндекс почту клиентом) написал яндексу, ответил робот, что пришлите алиасы почт которые знаете ,чтоб их тоже восстановить, в итоге в этот же день к новой почте привязали домен и все алиасы, письма все сохранились
    Ответ написан
    Комментировать