Опечатка в модуле Website

32
публикации
    /**
     * Separate function to display the page
     *
     * @param void
     * @return void
     */
    protected function displayPage() {
        $units = array();
        foreach ($this->page->area as $area) {
            foreach ($area->unit as $unit) {
                $units[] = $unit;
            }
        }
        // Сортировка юнитов по параметру "buildOrder" Если таковой не задан,
        // то сортировка в произвольном порядке, т.к. сортировка не важна
        usort($units, function($a, $b) {
            $a = $a->buildOrder;
            $b = $b->buildOrder;
            if ($a == $b) {
                return 0;
            }
            return ($a < $b) ? -1 : 1;
        });
        // Подготовка контента в юнитах
        foreach ($units as $unit) $unit->prepare();
        echo Seo::nofollow(Seo::absolutize($this->page->toString()));
    }

В последнем цикле (строка 25 в данном примере) было написано

foreach ($units as $init

В результате чего обрабатывался только последний unit в области страницы, который был определен в предыдущем цикле. Ошибка воспроизводтся, если на странице содержится более одного блока.

Tags
#archive 61 #capsulecms 30 #featurerequest 26 #linux 22 #php 13 #windows 12 #phpstorm 8 #eclipse 8 #nginx 5 #bug 5 #font 4 #oldsite 4 #SEO 3 #mvc 2 #nano 2 #antipattern 2 #quotes 2 #foobar 1 #apache 1 #git 1 #pidgin 1 #curl 1 #datetimepicker 1 #rsync 1 #bootstrap 1 #cmd 1 #iconv 1 #cms 1 #skype 1 #pdf 1 #algorithm 1 #composer 1 #copypaste 1 #sourcetree 1 #singleton 1 #mysql 1 #meld 1 #pattern 1 #postgresql 1 #debian 1 #ideas 1 #strtok 1 #qt 1 #capsulecmsv1 1 #netbeans 1 #iosevka 1 #puntoswitcher 1 #movie 1 #mariadb 1