'Provider Title', // обов'язковий, назва модуля по якому шукається, відображається на сторінці пошуку * 'fullResultsAlias' => 'provider-alias', // обов'язковий, аліас по якому будуть відображатись повні результати пошуку * 'dataObjClass' => 'Provider\\Obj', // обов'язковий, об'єкт даних який віддасть список з результатом, переважно юзерський dataObj, в складних випадках робив окремий клас * 'shortResultsLimit' => 3, // опціональний, кількість результатів на короткому списку, по дефолту "3" * 'titleField' => 'title', // опціональний, колонка в результатах яка буде використовуватись в якості заголовку, по дефолту "title" * 'filterFields' => array('title', 'rawContent'), // опціональний, колонки по яких має відбуватись пошук, переписує значення в "dataObj" * 'sitemapSelector' => array(null, array('type' => 'Provider\\'), null), // опціональний, селектор для визначення урла який буде використовуватись в результатах пошуку * 'urlPattern' => '{sitemapUrl}/{id}' // опціональний, формат урла який буде використовуватись в результатах пошуку * ); */ $config['providers'][] = array( 'providerTitle' => 'Site Pages', 'fullResultsAlias' => 'cms', 'dataObjClass' => 'App_Cms_Search_Obj', 'titleField' => 'menuTitle', 'filterFields' => array( 'PageContent' => array('title', 'header', 'menuTitle'), 'HtmlBlockContent' => array('rawContent') ) ); $config['providers'][] = array( 'providerTitle' => 'News', 'fullResultsAlias' => 'news', 'dataObjClass' => 'App_News_Obj', 'filterFields' => array('title', 'introduction', 'rawContent'), 'sitemapSelector' => array(null, array('type' => 'News_'), null), 'urlPattern' => '{sitemapUrl}/{id}' ); $config['providers'][] = array( 'providerTitle' => 'FAQ', 'fullResultsAlias' => 'faq', 'dataObjClass' => 'App_Faq_Search_Obj', 'titleField' => 'question', 'sitemapSelector' => array(null, array('type' => 'Faq_'), null), 'urlPattern' => '{sitemapUrl}/{categoryId}#n-{id}' ); $config['providers'][] = array( 'providerTitle' => 'Newsletters', 'fullResultsAlias' => 'newsletters', 'dataObjClass' => 'App_Newsletter_Obj', ); $config['providers'][] = array( 'providerTitle' => 'Gallery', 'fullResultsAlias' => 'gallery', 'dataObjClass' => 'App\\Gallery\\Search\\Obj', ); $config['providers'][] = array( 'providerTitle' => 'Our Team', 'fullResultsAlias' => 'our-team', 'dataObjClass' => 'App_People_Obj', 'titleField' => 'name', 'filterFields' => array('name', 'jobTitle', 'shortBio', 'fullBioStripped'), 'sitemapSelector' => array(null, array('type' => 'People_'), null), 'urlPattern' => '{sitemapUrl}/{id}' ); $config['providers'][] = array( 'providerTitle' => 'Partner', 'fullResultsAlias' => 'partner', 'dataObjClass' => 'App_Partner_Obj', 'filterFields' => array('title', 'url'), 'sitemapSelector' => array(null, array('type' => 'Partner_'), null), 'urlPattern' => '{sitemapUrl}?page={page}' ); return $config;