[gelöst] Views Ergebnis: Sortierung für erste Reihe nicht anwenden / Bestimmte Reihe zuerst ausgeben
am 05.08.2013 - 09:47 Uhr in
Hallo zusammen,
für die Ausgabe einer View habe ich einen bestimmten Wunsch in Bezug auf die "erste Reihe".
Hier erst einmal die URLs:
http://i-sft.com/solutions/examples
http://i-sft.com/solutions/spider-charts
Auf der Spider charts-Seite werden die Ergebnisse standardmäßig zufällig ausgegeben.
Wenn man aber über die Examples-Seite auf ein Bild klickt und auf die Spider charts-Seite weitergeleitet wird,
soll dieses Bild / Profil bzw. diese Reihe als erstes ausgegeben werden.
Da ich mir nicht anders zu helfen wusste, wird das aktuell durch jQuery so realisiert, dass einfach der HTML-Code dieser Views-Reihe (in der das angeklickte Bild steckt) ausgeschnitten und oberhalb der eigentlich ersten Reihe wieder eingefügt wird.
Wenn allerdings über den Button Overview PDF ganz oben eine Übersicht der vier ersten Profile generiert wird,
wird wieder die ursprüngliche Reihenfolge berücksichtigt, was ja eigentlich nicht gewollt ist.
Gibt es also eine Möglichkeit, die gewünschte Funktionalität direkt über eine Views-Einstellung zu realisieren?
Ich hoffe, es ist möglich und mir kann jemand sagen, wie das funktioniert ;-)
- Anmelden oder Registrieren um Kommentare zu schreiben

Keiner eine Idee?
am 13.08.2013 - 08:14 Uhr
Hat keiner eine Idee / einen Ansatz für mich?
Oder habe ich mich unklar ausgedrückt?
Lösung gefunden!
am 15.08.2013 - 15:48 Uhr
Nach einer gefühlten Ewigkeit habe ich für mein Problem endlich eine Lösung gefunden.
In meiner template.php habe ich folgenden Hook ergänzt und um diese Zeilen Code ergänzt:
<?phpfunction MODUL_views_pre_render(&$view) {
if($view->name == 'VIEW_NAME') {
$query_parameters = drupal_get_query_parameters();
if(isset($query_parameters['first']) && !empty($query_parameters['first'])) {
for($i = 0; $i < count($view->result); ++$i) {
if($view->result[$i]->_field_data['nid']['entity']->field_app_profile_serial['und'][0]['value'] == $query_parameters['first']) {
$first = array_slice($view->result, $i, 1);
unset($view->result[$i]);
array_unshift($view->result, $first[0]);
break;
}
}
}
}
}
?>
Über diesen Hook kann anscheinend der Inhalt der View manipuliert werden, bevor es danach für die Ausgabe gerendert wird.
Auf dieser Seite habe ich den ausschlaggebenden Hinweis gefunden zu diesem Hook:
Drupal: Sorting a view programmatically
Und hier noch der Link zum Hook:
hook_views_pre_render | views.api.php | Views 7 | Drupal API
Vielleicht kann ein anderer damit irgendwann ja mal etwas anfangen...