Facet API - Wie ändert man die Bezeichnung der Überschriften in den Blöcken - Thema Kleinschreibung

am 03.10.2013 - 23:52 Uhr in
Hallo,
Ich habe folgendes Problem. Die Überschrift in einem Block lautet:
Filtern nach autor » adresse » postal code:
lauten soll sie nach Möglichkeit nur:
Postleitzahl
(also ohne "Filtern nach" oder "Filter by" und in Großschreibung und nicht wie vorgesehen in Kleinschreibung)
Kennt Jemand von Euch das Problem und hat einen Lösungsansatz?
Danke
- Anmelden oder Registrieren um Kommentare zu schreiben
Die Blockeinstellungen kannst
am 04.10.2013 - 18:09 Uhr
Die Blockeinstellungen kannst du mit Views bzw. dem Core-Modul überschreiben. Bezeichne dein Problem mal genauer...
Web: Halle im Bild | n8aktiv
Social: Facebook | Xing
Hallo und Danke für das
am 04.10.2013 - 21:33 Uhr
Hallo und Danke für das Feedback.
Ich verwende die Search API inkl. Facet API und Facet API Bonus von Wunderkraut. Die Blöcke werden durch die Search API bzw. Facet API erstellt und sind m.E.n. nicht via Views anpassbar.
In der Blocküberschrift erscheint der "Maschinenlesbare Name" aus dem Vokabular z.B. kategorie mit dem Prefix "Filtern nach" kategorie obwohl die Facette "Filter by Kategorie" heißt.
Ich würde mir für die User wünschen, dass die Überschrift wie im Beispiel von Wunderkraut nur Kategorie (zur Not "Filtern nach Kategorie") heißt.
Daher habe ich folgenden Code in ein Modul gepackt und den Cache geleert. Leider ohne Erfolg...
<?php
/**
* Implements hook_facetapi_facet_info().
*
* Needed to rename and translate Facet Label tokens
*/
function custom_facetapi_facet_info(array $searcher_info) {
$facets = array();
// Facets are usually associated with the type of content stored in the index.
if (isset($searcher_info['types']['my_type'])) {
$facets['kategorie']['label'] = t('Kategorie');
// etc...
}
return $facets;
}
?>
Auch mit der Rewrite Funktion der Facet Bonus API "Rewrite facet items via callback function" hatte ich keinen Erfolg. Was aber am noch mangelnden Verständnis von Hooks im Zusammenhang mit dem Modulen liegt.
Hier der Auszug auf der Bonus API der mir aber leider nicht einleuchtet...
By enabling this filter, items of this facet can be rewritten prior to rendering by implementing the hook:
function HOOK_facet_items_alter(&$build, &$settings) {
if ($settings->facet == "YOUR_FACET_NAME") {
foreach($build as $key => $item) {
$build[$key]["#markup"] = drupal_strtoupper($item["#markup"]);
}
}
}
This example simply rewrites all facet items output to be uppercase. Replace "HOOK" with the name of a custom module containing your hook implementation, and "YOUR_FACET_NAME" with the machine name of the specific facet whose items you want to rewrite. $build is an array of facet items you can rewrite, $settings contains the facet filter settings as context to determin the facet and search context.