• Как получить count значения в yith-compare?

    maxxannik
    @maxxannik
    Сайты на WordPress + Интернет магазины WooCommerce
    Заодно нужно отключить систему уведомлений о надоедлевом обновлении. Поставить свечку за упокой сайта в церкви. И дописать у себя в подписи "Профессиональный истребитель сайтов".

    Первое правило мира WordPress - не меняй код ядра и 3-х лиц. Читай, трогай, но не меняй.

    Можно просто прочитать, скопировать, сделать аккуратненький шорткод и воткнуть куда надо. Ниче не поломается. И все будет по кодексу.

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

    * На правах утреннего юмора :)
    Ответ написан
    2 комментария
  • Почему не работает функция Simple HTML DOM в цикле?

    @vit134
    почти та же проблема Call to a member function innertext() on null

    function getContent($url) {
        $html = new simple_html_dom();
        $html->load_file($url);
        $html->save();
    
        $table = $html->find('table.tb-matches');
    
        foreach ($table as $key => $value) {
           foreach ($value->find('tr') as $key => $tr) {
                $elem =  $tr->find('td', 0);
                echo 'key' . $key . '<br>';
                echo 'tr' . $tr . '<br>';
                echo $tr->find('td', 0)->attr['colspan'] . '----<br>';
            }
        }
    
    }
    foreach ($dateArr as $key => $dateVal) { 
        getContent($url . $dateVal); 
    }


    пробовал после foreach ($table as $key => $value) { добавлять $value = new simple_html_dom();
    ошибка стала появляться сразу, не выполняется даже первая итерация

    UPD

    решил проблему так: сначала добавляю контент всех страниц в переменную
    foreach ($dateArr as $key => $dateVal) {
            $out .=  file_get_contents($url . $dateVal) ;
    }

    и потом создаю объект simple_html_dom
    $html = new simple_html_dom();
        $html->load($out);
        $html->save();
    
        $table = $html->find('.list_table');
    
        foreach ($table as $key => $value) {
            $dd = $value->attr['date'];
    
            foreach ($value->find('table.tb-matches tr') as $key => $tr) {
    
                $elem =  $tr->find('td', 0);
    
                if ($elem->attr['colspan'] != '7') {
                    $resultArr[$dd][] = array(
                        'time' => $tr->find('td', 0)->plaintext,
                        'home_team' => $tr->find('td.home-team', 0)->plaintext,
                        'away_team' => $tr->find('td.away_team', 0)->plaintext,
                        'status' => trim($tr->find('td.status', 0)->plaintext),
                        'score' => $tr->find('td.score', 0)->plaintext,
                        'href' => 'http://goal24.ru' . $tr->find('td.option a', 0)->href,
                    );
                }
            }
        }


    PS
    Нашел еще один вариант решения

    в функции которая гоняется в цикле, заменить $html = new simple_html_dom() на $html = str_get_html(file_get_contents($url)). Результат на лицо.
    Ответ написан
    7 комментариев
  • OpenCart или Woocommerce?

    maxxannik
    @maxxannik
    Сайты на WordPress + Интернет магазины WooCommerce
    WooCommerce занимает около 30% рынка ecommerce. И это №1 в мире. Если иных причин нет, то всегда лучше выбирать лидеров.
    Выбор других платформ возможен по причине наличия команды которая например только OpenCart.
    Либо какой то очень нагруженный ресурс где нужна тонкая игра с БД. Обычно это бюджеты от 10 млн руб и выше.
    Если бюджет не велик, то Woo вполне адекватное решение. Лидер рынка. Гибкость позволяет решить любые задачи, если в команде есть опытные специалисты или те кто умеют разбираться с API и читать доки.
    Плюс сейчас Woo взяли курс на свои таблицы в БД. А это значит что в скором будущем даже оч нагруженные ресурсы тут будут также хороши как и на фреймворках.
    Ответ написан
    Комментировать
  • Woocommerce или OpenCart?

    maxxannik
    @maxxannik
    Сайты на WordPress + Интернет магазины WooCommerce
    WooCommerce - это №1 на рынке ecommerce в мире. В РФ пока что слабо из за отсутствия многих модулей интеграции с русскими системами. Но ситуация постепенно улучшается. Уже есть 1С, МойСклад, Яндекс Деньги, PAW, Яндекс Доставка, СДЭК... это 90% проблем решает. Если не мудрить с редкими системами то можно работать на типовых решениях.
    Архитектура у него сложная. Если вы не знаете в чем суть механик EDA, EAV и т д, плюс вы плохо понимаете исходный код, то лучше вообще разработку не трогать. Можно довольно легко делать крутейшие магазины на типовых компонентах без программирования или почти без программирования.
    Если кодить и читать исходники уметь то там архитектура очень гибкая. Можно любую задачу решить. Вообще любую. Только не у всех ума на это хватает.

    Большинство программистов из за ограниченности ума думают что надо сайт программировать. А это не так. Надо взять WP + WooCommerce + тему Storefront. И вот на этой связке без программирования пробовать запуск. Добавляя плагины только если без них никак. Это дает стильный, современный, адаптивный магазин. Который лучше 90% крупных магазинов в РФ.

    Но народ у нас своеобразный. Начинают программировать (не имея ума и опыта), ставят все плагины без гигиены. Потом получается монстр-говно-сайт, который еле ворочается. Далее начинают рассказывать что WP фигня. Хотя причина лишь в дефиците ума и опыта - ошибки в решениях.
    Ответ написан
    5 комментариев
  • Как сделать минимальную сумму заказа только для одной из зон доставки?

    maxxannik
    @maxxannik
    Сайты на WordPress + Интернет магазины WooCommerce
    есть хук woocommerce_checkout_process
    на него можно повесть функцию, в ней проверить условия и если условия не айс - сообщить ошибку.
    пример: https://github.com/uptimizt/wooyd/blob/master/inc/...
    Ответ написан
    1 комментарий
  • Правильный ли код определения новых товаров?

    OtshelnikFm
    @OtshelnikFm Куратор тега WordPress
    Обо мне расскажет yawncato.com
    php открываю, php закрываю... Зачем?
    И почему не обернуто в функцию.
    В целом - все не верно. Это делается просто через css. Выбираешь 5 первых товаров и вешаешь стиль
    Ответ написан
    2 комментария
  • Как обновить стоимость методов доставки?

    @Ruslan_73 Автор вопроса
    Нашел решение, для пересчета стоимости доставки в корзине, кроме занесения нового города в
    $woocommerce->customer->set_billing_city($new_city);
    нужно также в
    $woocommerce->customer->set_shipping_city($new_city);
    и тогда все обновляется и пересчитывается
    Ответ написан
    Комментировать