Hallo zusammen,
ich habe schon viel ausprobiert, bin aber leider nicht zur Lösung gekommen.
Nutze Wordpress seit ein paar Monaten daher noch relatives Anfängerlevel.
Ich habe ein globales Produktattribut 'testkosten', welches numerische Werte enthält und ein paar Produkten zugewiesen ist. Nach diesem Attribut möchte ich gerne in dem Produktarchiv/ Produktkatalog sortieren (aufsteigend oder absteigend erstmal egal). Dazu habe ich bereits etwas versucht und mit CodeSnippet ein PHP hinzugefügt. Der Code soll zunächst eine zusätzliche neue Sortierungsoption in dem Produktarchiv/ Produktkatalog einfügen und dann nach dem Attribut 'testkosten' sortieren.
Der Code bis jetzt in aufsteigender Reihenfolge:
add_filter( 'woocommerce_get_catalog_ordering_args', 'custom_product_sorting_args' );
function custom_product_sorting_args( $args ) {
$orderby_value = isset( $_GET['orderby'] ) ? $_GET['orderby'] : '';
if ( 'pa_testkosten' == $orderby_value ) {
$args['orderby'] = 'meta_value_num';
$args['order'] = 'asc';
$args['meta_key'] = 'pa_testkosten';
}
return $args;
}
add_filter( 'woocommerce_default_catalog_orderby_options', 'add_product_sorting_option' );
add_filter( 'woocommerce_catalog_orderby', 'add_product_sorting_option' );
function add_product_sorting_option( $sortby ) {
$sortby['pa_testkosten'] = __( 'Sort by Test Kosten', 'woocommerce' );
return $sortby;
}
Alles anzeigen
Ich sehe die neue Sortierungsoption allerdings im Produktarchiv/Katalog, das ist schon mal gut.
Wenn ich jetzt aber die neue Sortierung 'Sort by Test Kosten' auswähle, wird mir immer angezeigt, dass keine Produkte gefunden werden konnten.
Könnt ihr mir helfen oder weiß Jemand, welchen Fehler ich in PHP mache?
Danke schon mal.
Viele Grüße
Tobu