@@ -63,6 +63,13 @@ class CollectionList extends AbstractBase
      */
     protected $recommendManager;
 
+    /**
+     * Backend id
+     *
+     * @var string
+     */
+    protected $backendId = 'SolrCollection';
+
     /**
      * Constructor
      *
<?php
/**
 * Collection list tab
 *
 * PHP version 7
 *
 * Copyright (C) Villanova University 2010.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2,
 * as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 *
 * @category VuFind
 * @package  RecordTabs
 * @author   Demian Katz <demian.katz@villanova.edu>
 * @license  http://opensource.org/licenses/gpl-2.0.php GNU General Public License
 * @link     https://vufind.org/wiki/development:plugins:record_tabs Wiki
 */
namespace VuFind\RecordTab;

use VuFind\Recommend\PluginManager as RecommendManager;
use VuFind\Search\RecommendListener;
use VuFind\Search\SearchRunner;

/**
 * Collection list tab
 *
 * @category VuFind
 * @package  RecordTabs
 * @author   Demian Katz <demian.katz@villanova.edu>
 * @license  http://opensource.org/licenses/gpl-2.0.php GNU General Public License
 * @link     https://vufind.org/wiki/development:plugins:record_tabs Wiki
 */
class CollectionList extends AbstractBase
{
    /**
     * Search results object (null prior to processing)
     *
     * @var \VuFind\Search\SolrCollection\Results
     */
    protected $results = null;

    /**
     * Search runner
     *
     * @var SearchRunner
     */
    protected $runner;

    /**
     * Recommendation manager
     *
     * @var RecommendManager
     */
    protected $recommendManager;

    /**
     * Constructor
     *
     * @param SearchRunner     $runner Search runner
     * @param RecommendManager $recMan Recommendation manager
     */
    public function __construct(SearchRunner $runner, RecommendManager $recMan)
    {
        $this->runner = $runner;
        $this->recommendManager = $recMan;
    }

    /**
     * Get the on-screen description for this tab.
     *
     * @return string
     */
    public function getDescription()
    {
        return 'Collection Items';
    }

    /**
     * Get the current search parameters.
     *
     * @return \VuFind\Search\SolrCollection\Params
     */
    public function getParams()
    {
        return $this->getResults()->getParams();
    }

    /**
     * Get the processed search results.
     *
     * @return \VuFind\Search\SolrCollection\Results
     */
    public function getResults()
    {
        if (null === $this->results) {
            $driver = $this->getRecordDriver();
            $request = $this->getRequest()->getQuery()->toArray()
                + $this->getRequest()->getPost()->toArray();
            $rManager = $this->recommendManager;
            $cb = function ($runner, $params, $searchId) use ($driver, $rManager) {
                $params->initFromRecordDriver($driver);
                $listener = new RecommendListener($rManager, $searchId);
                $listener->setConfig(
                    $params->getOptions()->getRecommendationSettings()
                );
                $listener->attach($runner->getEventManager()->getSharedManager());
            };
            $this->results
                = $this->runner->run($request, 'SolrCollection', $cb);
        }
        return $this->results;
    }

    /**
     * Can this tab be loaded via AJAX?
     *
     * @return bool
     */
    public function supportsAjax()
    {
        // No, search parameters from the URL are needed.
        return false;
    }
}

I would actually change this to `$searchClassId` -- SolrCollection is not a backend ID; it's a set of search objects that add extra abstraction on top of the Solr backend. I think using the backend terminology here might add confusion.