I just played around with the module today and put it into my dev page using search api.

i am using view for searches

http://dev.text.com/texturen/

hit one facet

http://dev.text.com/taxonomy/term/2/field_beschaedigungsgrad/schwach-336

hit a second one, error page not found because of wrong url. Without the Module a page is returned with the correct items.

http://dev.text.com/taxonomy/term/%25/field_beschaedigungsgrad/schwach-3...

Comments

dasjo’s picture

hi e-anima,

what kind of search are we looking at? could you provide an export of the view?

http://dev.text.com/taxonomy/term/2/field_beschaedigungsgrad/schwach-336

this looks like if the base path of this search was taxonomy/term/2, are you overriding taxonomy term pages using page manager?

marcoka’s picture

nope, i use a view with search api.

$view = new view;
$view->name = 'solr_view';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'search_api_index_solr_index';
$view->human_name = 'solr view';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Textursuche';
$handler->display->display_options['use_more_text'] = 'mehr';
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'time';
$handler->display->display_options['cache']['results_lifespan'] = '-1';
$handler->display->display_options['cache']['output_lifespan'] = '3600';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['submit_button'] = 'Apply';
$handler->display->display_options['exposed_form']['options']['autosubmit'] = 0;
$handler->display->display_options['exposed_form']['options']['autosubmit_hide'] = 1;
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '30';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['pager']['options']['id'] = '0';
$handler->display->display_options['pager']['options']['expose']['items_per_page_options_all'] = 0;
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Feld: Indizierter Inhalt: Textur Bild */
$handler->display->display_options['fields']['field_texture']['id'] = 'field_texture';
$handler->display->display_options['fields']['field_texture']['table'] = 'search_api_index_solr_index';
$handler->display->display_options['fields']['field_texture']['field'] = 'field_texture';
$handler->display->display_options['fields']['field_texture']['label'] = '';
$handler->display->display_options['fields']['field_texture']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['text'] = '<a href="view_node">field_texture</a>';
$handler->display->display_options['fields']['field_texture']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_texture']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_texture']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_texture']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_texture']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_texture']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_texture']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_texture']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_texture']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_texture']['settings'] = array(
  'image_style' => 'texture_search_thumbnail',
  'image_link' => 'content',
);
$handler->display->display_options['fields']['field_texture']['group_column'] = 'fid';
$handler->display->display_options['fields']['field_texture']['delta_limit'] = '1';
$handler->display->display_options['fields']['field_texture']['delta_offset'] = '0';
$handler->display->display_options['fields']['field_texture']['delta_reversed'] = 0;
$handler->display->display_options['fields']['field_texture']['delta_first_last'] = 0;
$handler->display->display_options['fields']['field_texture']['field_api_classes'] = 0;
/* Feld: Indizierter Inhalt: Textur Anzahl */
$handler->display->display_options['fields']['field_texture_count']['id'] = 'field_texture_count';
$handler->display->display_options['fields']['field_texture_count']['table'] = 'search_api_index_solr_index';
$handler->display->display_options['fields']['field_texture_count']['field'] = 'field_texture_count';
$handler->display->display_options['fields']['field_texture_count']['label'] = 'HIDDEN';
$handler->display->display_options['fields']['field_texture_count']['exclude'] = TRUE;
$handler->display->display_options['fields']['field_texture_count']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_texture_count']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_texture_count']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_texture_count']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_texture_count']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_texture_count']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_texture_count']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_texture_count']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['field_texture_count']['field_api_classes'] = 0;
/* Feld: Global: Benutzerdefinierter Text */
$handler->display->display_options['fields']['nothing']['id'] = 'nothing';
$handler->display->display_options['fields']['nothing']['table'] = 'views';
$handler->display->display_options['fields']['nothing']['field'] = 'nothing';
$handler->display->display_options['fields']['nothing']['label'] = '';
$handler->display->display_options['fields']['nothing']['alter']['text'] = '<div class="texture-count"><span class="texture-count-image"></span>[field_texture_count]</div>';
$handler->display->display_options['fields']['nothing']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['external'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['nothing']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['nothing']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['trim'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['html'] = 0;
$handler->display->display_options['fields']['nothing']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['nothing']['element_wrapper_type'] = 'div';
$handler->display->display_options['fields']['nothing']['element_wrapper_class'] = 'image-infos';
$handler->display->display_options['fields']['nothing']['element_default_classes'] = 0;
$handler->display->display_options['fields']['nothing']['empty'] = '0';
$handler->display->display_options['fields']['nothing']['hide_empty'] = 0;
$handler->display->display_options['fields']['nothing']['empty_zero'] = 0;
$handler->display->display_options['fields']['nothing']['hide_alter_empty'] = 0;
/* Filterkriterium: Suche: Volltextsuche */
$handler->display->display_options['filters']['search_api_views_fulltext']['id'] = 'search_api_views_fulltext';
$handler->display->display_options['filters']['search_api_views_fulltext']['table'] = 'search_api_index_solr_index';
$handler->display->display_options['filters']['search_api_views_fulltext']['field'] = 'search_api_views_fulltext';
$handler->display->display_options['filters']['search_api_views_fulltext']['group'] = '0';
$handler->display->display_options['filters']['search_api_views_fulltext']['exposed'] = TRUE;
$handler->display->display_options['filters']['search_api_views_fulltext']['expose']['operator_id'] = 'search_api_views_fulltext_op';
$handler->display->display_options['filters']['search_api_views_fulltext']['expose']['operator'] = 'search_api_views_fulltext_op';
$handler->display->display_options['filters']['search_api_views_fulltext']['expose']['identifier'] = 'search_api_views_fulltext';

/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page');
$handler->display->display_options['exposed_block'] = TRUE;
$handler->display->display_options['path'] = 'texturen';
$translatables['solr_view'] = array(
  t('Master'),
  t('Textursuche'),
  t('mehr'),
  t('Apply'),
  t('Reset'),
  t('Sort by'),
  t('Asc'),
  t('Desc'),
  t('Items per page'),
  t('- All -'),
  t('Offset'),
  t('<a href="view_node">field_texture</a>'),
  t('HIDDEN'),
  t('<div class="texture-count"><span class="texture-count-image"></span>[field_texture_count]</div>'),
  t('Page'),
);

and well i override taxonomy/term/% so when i click a tagging link it triggers a search, thats a view taxonomy/term/%

$view = new view;
$view->name = 'taxonomy_solr_path';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'search_api_index_solr_index';
$view->human_name = 'taxonomy solr path';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['use_more_text'] = 'mehr';
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'time';
$handler->display->display_options['cache']['results_lifespan'] = '-1';
$handler->display->display_options['cache']['output_lifespan'] = '3600';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['reset_button_label'] = 'Zurücksetzen';
$handler->display->display_options['exposed_form']['options']['exposed_sorts_label'] = 'Sortieren nach';
$handler->display->display_options['exposed_form']['options']['sort_asc_label'] = 'Aufsteigend';
$handler->display->display_options['exposed_form']['options']['sort_desc_label'] = 'Absteigend';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '30';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['pager']['options']['id'] = '0';
$handler->display->display_options['pager']['options']['expose']['items_per_page_options_all'] = 0;
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Feld: Indizierter Inhalt: Textur Bild */
$handler->display->display_options['fields']['field_texture']['id'] = 'field_texture';
$handler->display->display_options['fields']['field_texture']['table'] = 'search_api_index_solr_index';
$handler->display->display_options['fields']['field_texture']['field'] = 'field_texture';
$handler->display->display_options['fields']['field_texture']['label'] = '';
$handler->display->display_options['fields']['field_texture']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_texture']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_texture']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_texture']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_texture']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_texture']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_texture']['hide_empty'] = 1;
$handler->display->display_options['fields']['field_texture']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_texture']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_texture']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_texture']['settings'] = array(
  'image_style' => 'texture_search_thumbnail',
  'image_link' => 'content',
);
$handler->display->display_options['fields']['field_texture']['group_rows'] = 1;
$handler->display->display_options['fields']['field_texture']['delta_limit'] = '1';
$handler->display->display_options['fields']['field_texture']['delta_offset'] = '0';
$handler->display->display_options['fields']['field_texture']['delta_reversed'] = 0;
$handler->display->display_options['fields']['field_texture']['delta_first_last'] = 0;
$handler->display->display_options['fields']['field_texture']['separator'] = 'sep';
$handler->display->display_options['fields']['field_texture']['field_api_classes'] = 0;
/* Feld: Indizierter Inhalt: Textur Anzahl */
$handler->display->display_options['fields']['field_texture_count']['id'] = 'field_texture_count';
$handler->display->display_options['fields']['field_texture_count']['table'] = 'search_api_index_solr_index';
$handler->display->display_options['fields']['field_texture_count']['field'] = 'field_texture_count';
$handler->display->display_options['fields']['field_texture_count']['label'] = 'HIDDEN';
$handler->display->display_options['fields']['field_texture_count']['exclude'] = TRUE;
$handler->display->display_options['fields']['field_texture_count']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_texture_count']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_texture_count']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_texture_count']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_texture_count']['element_label_colon'] = 0;
$handler->display->display_options['fields']['field_texture_count']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_texture_count']['empty'] = '0';
$handler->display->display_options['fields']['field_texture_count']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_texture_count']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_texture_count']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['field_texture_count']['field_api_classes'] = 0;
/* Feld: Global: Benutzerdefinierter Text */
$handler->display->display_options['fields']['nothing']['id'] = 'nothing';
$handler->display->display_options['fields']['nothing']['table'] = 'views';
$handler->display->display_options['fields']['nothing']['field'] = 'nothing';
$handler->display->display_options['fields']['nothing']['label'] = '';
$handler->display->display_options['fields']['nothing']['alter']['text'] = '<div class="texture-count"><span class="texture-count-image"></span>[field_texture_count]</div>
';
$handler->display->display_options['fields']['nothing']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['external'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['nothing']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['nothing']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['trim'] = 0;
$handler->display->display_options['fields']['nothing']['alter']['html'] = 0;
$handler->display->display_options['fields']['nothing']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['nothing']['element_wrapper_type'] = 'div';
$handler->display->display_options['fields']['nothing']['element_wrapper_class'] = 'image-infos';
$handler->display->display_options['fields']['nothing']['element_default_classes'] = 0;
$handler->display->display_options['fields']['nothing']['empty'] = '0';
$handler->display->display_options['fields']['nothing']['hide_empty'] = 0;
$handler->display->display_options['fields']['nothing']['empty_zero'] = 0;
$handler->display->display_options['fields']['nothing']['hide_alter_empty'] = 0;
/* Kontextfilter: Indizierter Inhalt: all_texture_taxonomy */
$handler->display->display_options['arguments']['search_api_aggregation_1']['id'] = 'search_api_aggregation_1';
$handler->display->display_options['arguments']['search_api_aggregation_1']['table'] = 'search_api_index_solr_index';
$handler->display->display_options['arguments']['search_api_aggregation_1']['field'] = 'search_api_aggregation_1';
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_action'] = 'default';
$handler->display->display_options['arguments']['search_api_aggregation_1']['exception']['title'] = 'All';
$handler->display->display_options['arguments']['search_api_aggregation_1']['title_enable'] = 1;
$handler->display->display_options['arguments']['search_api_aggregation_1']['title'] = 'Texturen - %1';
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_argument_type'] = 'taxonomy_tid';
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_argument_options']['term_page'] = 1;
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_argument_options']['node'] = 0;
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_argument_options']['limit'] = 0;
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_argument_skip_url'] = 0;
$handler->display->display_options['arguments']['search_api_aggregation_1']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['search_api_aggregation_1']['validate']['type'] = 'taxonomy_term';
$handler->display->display_options['arguments']['search_api_aggregation_1']['validate_options']['transform'] = 0;

/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page');
$handler->display->display_options['path'] = 'taxonomy/term/%';
$translatables['taxonomy_solr_path'] = array(
  t('Master'),
  t('mehr'),
  t('Übernehmen'),
  t('Zurücksetzen'),
  t('Sortieren nach'),
  t('Aufsteigend'),
  t('Absteigend'),
  t('Items per page'),
  t('- All -'),
  t('Offset'),
  t('HIDDEN'),
  t('<div class="texture-count"><span class="texture-count-image"></span>[field_texture_count]</div>
'),
  t('All'),
  t('Texturen - %1'),
  t('Page'),
);

i am using pathauto and all taxonomys/nodes have aliases

marcoka’s picture

Ok as discussed @irc, clicked first facet

outputs

taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/-1246
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/brücke-1250
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/grafitti-1258
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/mauer-1245
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/lebensgefahr-1248
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/vorsicht-1249
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/fliese-1251
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/brückenpfeiler-1252
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_freetags/waschbeton-1259
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_form/balken-361
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_flaechenmasz/groß-355
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_flaechenmasz/klein-356
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_flaechenmasz/mittelgroß-357
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_flaechenmasz/sehr-klein-359
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_details/fuge-344
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_details/efeu-342
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_details/schraube-352
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/abgenutzt-1142
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/alt-1143
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/dreckig-1160
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/verwittert-1233
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/benutzt-1150
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/blank-1155
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/verschmiert-1229
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/glatt-1186
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/rauh-1199
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/verlaufen-1225
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/neu-1195
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/uneben-1216
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/beschädigt-1151
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/beschriftet-1153
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/pilzig-1197
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/sauber-1202
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_zustand/bewachsen-1154
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_ursprung/gebäude-1094
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_texturen/blank-3
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_texturen/rauh-4
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_texturen/sichtbeton-5
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_texturen/wand-7
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_texturen/waschbeton-8
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_texturen/beton-2
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_material/beton-1020
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_struktur/liniert-1082
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_struktur/vertikal-1090
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_struktur/horizontal-1080
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_struktur/fein-1068
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_struktur/feinkörnig-1069
taxonomy/term/%
taxonomy/term/%/field_beschaedigungsgrad/schwach-336/field_struktur/grob-1078
taxonomy/term/%
taxonomy/term/%
taxonomy/term/%
taxonomy/term/%

clicking a second one goes to

http://dev.text.com/taxonomy/term/%25/field_beschaedigungsgrad/schwach-3...

not found

dasjo’s picture

so the problem is that $this->adapter->getSearchPath maps to the "taxonomy/term" search instead of the "texturen" one.

this needs further debugging of what is happening and why getSearchPath does return the wrong base path when you have pretty paths enabled.

sslam’s picture

Priority: Normal » Critical

I have the same problem on my site.

Subscribing

dasjo’s picture

Priority: Critical » Normal

i would like to encourage you to debug the problem / help with a solution rather than bumping up the issue priority

uditmahajan’s picture

I am facing same problem.
The module works with one facet option (And Operator) but with multiple facets it shows wrong url.

Let me know how I can help in debugging the problem.

for me facets are normal fields for example for clothes brand is one of the facets. so selected two brands for ex:

/brand/ck/brand/tommy gives error. Whereas selecting only one facet works absolutely perfect.

dagomar’s picture

I had the same, or a similar problem. It turned out I had to change the "Pretty path alias" at the bottom of the "Configure facet display" option page. It was shown as:

field_something:field_myfield

when I changed that for each facet to something like "My-field" it worked.

I think the problem was with the : character not being properly encoded or something... Note that the problem also occurs with spaces and other non-url friendly characters.

dasjo’s picture

i have just fixed the problem, dagomar stated in #8.

leaving the issue open to fix its primary cause. both problems shouldn't be directly related, though and i have multiple facets working on several sites using pretty paths.

guillaumev’s picture

Version: 7.x-1.0-alpha2 » 7.x-1.0-alpha4

I'm also having the same issue here, and I'm using search_api_page to display my search results (no view), with facetapi_pretty_paths alpha4...

guillaumev’s picture

Status: Active » Needs review
StatusFileSize
new1.1 KB

Here is a patch that should fix the issue (at least it fixes it for me).

dasjo’s picture

Status: Needs review » Needs work

hi guillaumev,

thanks for working on this! i'm not convinced that this is a generic enough approach that i can commit right away.

    $search = $args[0];
      // Set search base path.
      $_GET['q'] = $menu_item['href'].'/'.$search;

i can believe that the current implementation of setting the search base path by using $menu_item['href'] might not always work, but simply adding $args[0] won't solve that problem, in my opinion. we should find another way to ensure that the base path is set correctly. think for example of a search base path like "search/cars", such wouldn't be covered by the args[0] approach.

giorgio79’s picture

I am getting this as well, but in my case it is a plain view with a custom path.

The problem is that the module chops off the subfolders, so instead of

mysite.com/mypath/facet1/facet2

it goes to

mysite.com/facet1/facet2

Any tips for debugging?

dasjo’s picture

giorgio79,

can you provide an export of the view that's not working?
does it work for other views you configured and if so, how do they differ from the corrupted one?

for debugging purposes, have a look at plugins/facetapi/url_processor_pretty_paths.inc
- fetchParams where the base path is interpreted: $_GET['q'] = $menu_item['href'];
- getFacetPath where the base path gets prepared: $base = $this->adapter->getSearchPath();

guillaumev’s picture

Hi dasjo > args[0] just adds the string that's being searched for to the URL, so I double checked by changing the path of my search page from search to search/test and it worked, because $menu_item['href'] contains search/test and $search contains the string that's being searched for, resulting in the URL being correct...

giorgio79 > did you try applying the patch in #11 ?

guillaumev’s picture

StatusFileSize
new1.01 KB

New patch which works with the latest version...

giorgio79’s picture

Status: Needs work » Needs review

re @15 sorry, not yet. I uninstalled the module because I had to move on to other tasks.

giorgio79’s picture

Hello,

I was just about to install this, but with the latest dev seems to be working for me without this patch. Please check.

dasjo’s picture

Version: 7.x-1.0-alpha4 » 7.x-1.0-alpha6

yeah, please confirm if this issue persists with the latest version of the facet api pretty paths module.

i'm tempted to close this soon and have related discussions in separate issues that are easier to grasp and tackle

chirhotec’s picture

I'm running 7.x-1.0-alpha6 and still having this problem, as far as I understand it.

Just to make sure, here's what I'm trying to do:

  • Faceted search based on multiple taxonomies (all on one content type)
  • default taxonomy pages link to search results view

Installed:

  • Facet API Pretty Paths 7.x-1.0-alpha6
  • Search API, Facet API, Pathauto, Views, Database Search

What I've done:

  • Basic Search Database, and related Index with multiple taxonomies set as facets
  • Views based search page, with url http://mysite.com/search
  • Facet API Pretty Paths, overriding defaults. Examples:
    • /search/audience/parents-3
    • /search/resource/handout-10
  • Secondary search View to override default taxonomy view, url at http://mysite.com/taxonomy/term/%
  • Pathauto filters set to create custom taxonomy paths
    • taxonomy 1: /search/audience/[term:name]-[term:tid]
    • taxonomy 2: /search/resource/[term:name]-[term:tid]

Results:

  • Works as expected (mostly***) for a single taxonomy view
    • works: /search/audience/parents-3
    • works: /search/resource/handout-10
    • multiple facets goes back to /taxonomy/term/3/resource/handout-10

***Additional problems

I've noticed that the first search term isn't showing up in the list of filters (current search block). In the results example above (1) parents doesn't show up, (2) handout does show up, (3) parents doesn't show up, but handout does. While it seems related to this overall problem, I'm not sure its related to this module.

Has anyone else seen this second problem? Where would be a better place to post about it?

Default Search:

$view = new view;
$view->name = 'resource_search';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'search_api_index_node_search_index';
$view->human_name = 'Resource Search';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Resources';
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '10';
$handler->display->display_options['style_plugin'] = 'table';
/* Field: Indexed Node: Node ID */
$handler->display->display_options['fields']['nid']['id'] = 'nid';
$handler->display->display_options['fields']['nid']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['nid']['field'] = 'nid';
/* Field: Indexed Node: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['title']['alter']['external'] = 0;
$handler->display->display_options['fields']['title']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['title']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['title']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['element_label_colon'] = 1;
$handler->display->display_options['fields']['title']['element_default_classes'] = 1;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['title']['link_to_entity'] = 1;
/* Field: Indexed Node: Audience */
$handler->display->display_options['fields']['field_audience']['id'] = 'field_audience';
$handler->display->display_options['fields']['field_audience']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_audience']['field'] = 'field_audience';
$handler->display->display_options['fields']['field_audience']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_audience']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_audience']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_audience']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_audience']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_audience']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_audience']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_audience']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_audience']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_audience']['view_mode'] = 'full';
/* Field: Indexed Node: Content */
$handler->display->display_options['fields']['field_content']['id'] = 'field_content';
$handler->display->display_options['fields']['field_content']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_content']['field'] = 'field_content';
$handler->display->display_options['fields']['field_content']['label'] = 'Resource Type';
$handler->display->display_options['fields']['field_content']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_content']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_content']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_content']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_content']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_content']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_content']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_content']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_content']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_content']['view_mode'] = 'full';
/* Field: Indexed Node: Issue */
$handler->display->display_options['fields']['field_issue']['id'] = 'field_issue';
$handler->display->display_options['fields']['field_issue']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_issue']['field'] = 'field_issue';
$handler->display->display_options['fields']['field_issue']['label'] = 'CyberSafety Issue';
$handler->display->display_options['fields']['field_issue']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_issue']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_issue']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_issue']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_issue']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_issue']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_issue']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_issue']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_issue']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_issue']['view_mode'] = 'full';
/* Field: Indexed Node: Keywords */
$handler->display->display_options['fields']['field_tags']['id'] = 'field_tags';
$handler->display->display_options['fields']['field_tags']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_tags']['field'] = 'field_tags';
$handler->display->display_options['fields']['field_tags']['label'] = 'Additional Keywords';
$handler->display->display_options['fields']['field_tags']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_tags']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_tags']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_tags']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_tags']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_tags']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_tags']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_tags']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_tags']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_tags']['view_mode'] = 'full';
/* Filter criterion: Indexed Node: Content type */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
  'article' => 'article',
);
/* Filter criterion: Indexed Node: Status */
$handler->display->display_options['filters']['status']['id'] = 'status';
$handler->display->display_options['filters']['status']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['filters']['status']['field'] = 'status';
$handler->display->display_options['filters']['status']['value'] = array(
  1 => '1',
);
/* Filter criterion: Search: Fulltext search */
$handler->display->display_options['filters']['search_api_views_fulltext']['id'] = 'search_api_views_fulltext';
$handler->display->display_options['filters']['search_api_views_fulltext']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['filters']['search_api_views_fulltext']['field'] = 'search_api_views_fulltext';
$handler->display->display_options['filters']['search_api_views_fulltext']['exposed'] = TRUE;
$handler->display->display_options['filters']['search_api_views_fulltext']['expose']['operator_id'] = 'search_api_views_fulltext_op';
$handler->display->display_options['filters']['search_api_views_fulltext']['expose']['label'] = 'New Search';
$handler->display->display_options['filters']['search_api_views_fulltext']['expose']['operator'] = 'search_api_views_fulltext_op';
$handler->display->display_options['filters']['search_api_views_fulltext']['expose']['identifier'] = 'search_api_views_fulltext';

/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page');
$handler->display->display_options['path'] = 'resources';

Taxonomy Override

$view = new view;
$view->name = 'taxonomy_search';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'search_api_index_node_search_index';
$view->human_name = 'Taxonomy Search';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Taxonomy Search';
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '10';
$handler->display->display_options['style_plugin'] = 'table';
/* Header: Global: View area */
$handler->display->display_options['header']['view']['id'] = 'view';
$handler->display->display_options['header']['view']['table'] = 'views';
$handler->display->display_options['header']['view']['field'] = 'view';
$handler->display->display_options['header']['view']['empty'] = TRUE;
$handler->display->display_options['header']['view']['view_to_insert'] = 'taxonomy_term:default';
$handler->display->display_options['header']['view']['inherit_arguments'] = 1;
/* Field: Indexed Node: Node ID */
$handler->display->display_options['fields']['nid']['id'] = 'nid';
$handler->display->display_options['fields']['nid']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['nid']['field'] = 'nid';
$handler->display->display_options['fields']['nid']['exclude'] = TRUE;
$handler->display->display_options['fields']['nid']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['nid']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['nid']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['nid']['alter']['external'] = 0;
$handler->display->display_options['fields']['nid']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['nid']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['nid']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['nid']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['nid']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['nid']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['nid']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['nid']['alter']['trim'] = 0;
$handler->display->display_options['fields']['nid']['alter']['html'] = 0;
$handler->display->display_options['fields']['nid']['element_label_colon'] = 1;
$handler->display->display_options['fields']['nid']['element_default_classes'] = 1;
$handler->display->display_options['fields']['nid']['hide_empty'] = 0;
$handler->display->display_options['fields']['nid']['empty_zero'] = 0;
$handler->display->display_options['fields']['nid']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['nid']['format_plural'] = 0;
$handler->display->display_options['fields']['nid']['link_to_entity'] = 0;
/* Field: Indexed Node: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['title']['alter']['external'] = 0;
$handler->display->display_options['fields']['title']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['title']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['title']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['element_label_colon'] = 1;
$handler->display->display_options['fields']['title']['element_default_classes'] = 1;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['title']['link_to_entity'] = 1;
/* Field: Indexed Node: Audience */
$handler->display->display_options['fields']['field_audience']['id'] = 'field_audience';
$handler->display->display_options['fields']['field_audience']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_audience']['field'] = 'field_audience';
$handler->display->display_options['fields']['field_audience']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_audience']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_audience']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_audience']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_audience']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_audience']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_audience']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_audience']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_audience']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_audience']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_audience']['view_mode'] = 'full';
/* Field: Indexed Node: Content */
$handler->display->display_options['fields']['field_content']['id'] = 'field_content';
$handler->display->display_options['fields']['field_content']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_content']['field'] = 'field_content';
$handler->display->display_options['fields']['field_content']['label'] = 'Resource Type';
$handler->display->display_options['fields']['field_content']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_content']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_content']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_content']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_content']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_content']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_content']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_content']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_content']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_content']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_content']['view_mode'] = 'full';
/* Field: Indexed Node: Issue */
$handler->display->display_options['fields']['field_issue']['id'] = 'field_issue';
$handler->display->display_options['fields']['field_issue']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_issue']['field'] = 'field_issue';
$handler->display->display_options['fields']['field_issue']['label'] = 'CyberSafety Issue';
$handler->display->display_options['fields']['field_issue']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_issue']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_issue']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_issue']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_issue']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_issue']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_issue']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_issue']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_issue']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_issue']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_issue']['view_mode'] = 'full';
/* Field: Indexed Node: Keywords */
$handler->display->display_options['fields']['field_tags']['id'] = 'field_tags';
$handler->display->display_options['fields']['field_tags']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['fields']['field_tags']['field'] = 'field_tags';
$handler->display->display_options['fields']['field_tags']['label'] = 'Additional Keywords';
$handler->display->display_options['fields']['field_tags']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_tags']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_tags']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_tags']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_tags']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_tags']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_tags']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_tags']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_tags']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['field_tags']['link_to_entity'] = 1;
$handler->display->display_options['fields']['field_tags']['view_mode'] = 'full';
/* Contextual filter: Indexed Node: Taxonomy Term IDs */
$handler->display->display_options['arguments']['search_api_aggregation_1']['id'] = 'search_api_aggregation_1';
$handler->display->display_options['arguments']['search_api_aggregation_1']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['arguments']['search_api_aggregation_1']['field'] = 'search_api_aggregation_1';
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_action'] = 'not found';
$handler->display->display_options['arguments']['search_api_aggregation_1']['title_enable'] = 1;
$handler->display->display_options['arguments']['search_api_aggregation_1']['title'] = '%1';
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_argument_type'] = 'fixed';
$handler->display->display_options['arguments']['search_api_aggregation_1']['default_argument_skip_url'] = 0;
$handler->display->display_options['arguments']['search_api_aggregation_1']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['search_api_aggregation_1']['break_phrase'] = 0;
/* Filter criterion: Indexed Node: Content type */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'search_api_index_node_search_index';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
  'article' => 'article',
);

/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page');
$handler->display->display_options['path'] = 'taxonomy/term/%';
dasjo’s picture

Title: Multiple Facets » How to deal with multiple facets and taxonomy term page overrides?
Category: bug » support
Status: Needs review » Active

trying to find an appropriate title for this issue and turn it into a support request rather than a bug report.

i would like to know if you can implement all the desired functionality without pretty paths being enabled?

ad #22
i guess, the problem lies within the Pathauto approach, can you identify any difference in the behavior if you remove the path aliases and hit the urls directly?

chirhotec’s picture

If I disable Pretty Paths, the resulting facet links form correctly, without replacing the path alias with the default taxonomy path. (for "parents" + "handouts": /search/audience/parents-3?f[0]=field_tags%3A10).

There is still the problem of the initial term not showing in the list of facets, but that is expected at this point, since the url no longer follows the pattern Facet API is using. I tried switching the aliases to match the query string (/search?f[0]=field_audience%3A1) but that doesn't work because all the generated links get encoded (ie, /search%3Ff%5B0%5D%3Dfield_audience%253A1). Which is apparently an issue with Drupal Core (issue: http://drupal.org/node/118072)

With Pretty Paths enabled, directly hitting the desired URL works, and both facets show up in the current search block too. Additionally, the correct links are generated for applying additional filters. I guess at that point its not recognizing the first part of the url lines up with the default taxonomy view.

dasjo’s picture

so my understanding is that you don't need facetapi pretty paths to behave differently but you need a way to rewrite your taxonomy term links to the corresponding search path.

chirhotec’s picture

Honestly, I don't know enough about drupal under the hood to know where the issue is. I am already using pathauto to generate taxonomy term links that correspond to the Pretty Path. But for some reason, somewhere in the system, when it grabs the url its grabbing drupal's system url, not what was actually typed in (the alias).

In trying to work around this issue, I noticed similar problem in Views. I created two Contextual Filters of type "Global: Null", to read the first and second term of my url. When I navigated to "/audience/parents" (an alias for "taxonomy/term/3"). The result was that the filters read in "taxonomy" and "term" instead of "audience" and "parents", respectively.

So, I'm wondering, if your using a function to grab the url for processing, if there is a way to grab whatever the alias is instead, or maybe whatever was actually supplied in terms of the url within the browser.

In the end, my requirements changed slightly, and I was able to get the new functionality implemented by not using Pretty Paths, so its a non-issue for me at this point.

khiminrm’s picture

The patch in #16 has solved my similar issue with Extended search pages.

khiminrm’s picture

After applying the patch in #16 I have a Notice: Undefined offset: 0 в FacetapiUrlProcessorPrettyPaths->fetchParams() (line 56 in /home/www/mysite/sites/all/modules/facetapi_pretty_paths/plugins/facetapi/url_processor_pretty_paths.inc)
I've changed $search = $args[0]; with if (!empty($args[0]))$search = $args[0]; and the notice has disappeared.

khiminrm’s picture

The patch in #16 conflicts with http://drupal.org/node/1511144#comment-6326486.

Found temporary solution: replaced $_GET['q'] = $item['href'].'/'.$search; with

$_GET['q'] = $item['href'];
      if (arg(0)=='search')$_GET['q'] = $item['href'].'/'.$search;
khiminrm’s picture

for #28. I use Search pages with path 'search/site' for my search results and View with path 'catalog/%' for my catalog of products

dasjo’s picture

Status: Active » Fixed

in order to clean up the issue queue and as of #19 i'm setting this to fixed.

please open related issues separately with a back-reference to this one.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

kamranzafar’s picture

Issue summary: View changes

Hi Guys,
Your efforts are great.

I have site where I'm showing facets on taxonomy term page.

http://www.mysite.com/category/country/germany

Now when I select the facet link it make url like this

http://www.mysite.com/taxonomy/term/[tid]/make/chiron

Where I want this to be like

http://www.mysite.com/category/country/germany/make/chiron

Now issue is Drupal is not decoding "category/country/germany" as url alias to show taxonomy page then apply the facet, it take whole url "category/country/germany/make/chiron" which is not a page and shows me page not found.

How can I get this done.

Regards,
Kamran Zafar
http://www.cognitiveaxis.com/