CRAP index (56) in Web Scraper Engine
The code looks mostly fine to me. If you feel that the code isn't as clean as it should be, or just want it to pass the metric, what you could do is split it into functions:

            $this-&gt;scraper-&gt;queryBuilder()-&gt;adage($this-&gt;currentAdAge)-&gt;page($this-&gt;currentPage);
            $parser = $this-&gt;scraper-&gt;extract()-&gt;parse();
            $items = $parser-&gt;items();
            $this-&gt;targetPage = $parser-&gt;maxPages();


That goes into a private function which sets targetPage and returns $items... you could call it parsePageToItems

And this

            foreach ($items as &amp;$item)
            {
                $item-&gt;age = (new DateTime('now'))-&gt;modify("-{$this-&gt;currentAdAge} day");
                $this-&gt;collection-&gt;push($item);
            }

            unset($item);


Could go into a separate function mapItems.

You could then write a test for mapItems in particular, increasing coverage and further reducing your CRAP score.