Heute ein kurzes Code-Snippet zum Umsortieren von Versandarten in Drupal Commerce unter Verwendung des commerce_shipping.module.
Ihr könnt dazu ein Snippet wie das folgende nutzen, mit dem ich beispielsweise die Bezahlart "Barzahlung bei Abholung" an das Ende der Liste verschiebe.
Generell sind natürlich auch andere Sortierungen via Array-Sortierungen möglich!
/**
* Implements hook_commerce_shipping_service_rate_options_alter()
*/
function MY_MODULE_commerce_shipping_service_rate_options_alter(&$options, $order) {
// Move barzahlung to the end of the Versandarten List.
// General idea from:
if (!empty($options['barzahlung_abholung'])) {
$barzahlung_abholung_val = $options['barzahlung_abholung'];
unset($options['barzahlung_abholung']);
$options['barzahlung_abholung'] = $barzahlung_abholung_val;
}
}
?>
Ursprung dieses Codes ist die folgende Diskussion, in der es darum geht, dass zukünftig bestenfalls eine Bedienoberfläche zur Sortierung bereitgestellt werden sollte.
Im folgenden Vorschlag wird eine Sortierfunktion implementiert, die entsprechend des Preises der jeweiligen Versandart sortiert:
https://drupal.org/node/1537394#comment-7399800
Viel Spaß beim Implementieren Eurer eigenen Sortierung. Eingebunden wird der Code überigens natürlich über ein eigenes Drupal Modul. Wenn ihr Unterstützung benötigt, stehen unsere Drupal CMS Experten von DROWL.de natürlich gerne zu Eurer Verfügung.