<?php/** * Řazení produktů podle dostupnosti - front-end */add_filter('woocommerce_get_catalog_ordering_args','razeni_produktu_podle_dostupnosti',9999);functionrazeni_produktu_podle_dostupnosti($args){/*** POZOR - přetlačuje filtr v katalogu,* takže i když dáte jiné řazení,* tak zůstane toto -> přidat podmínku pro $_GET['order']...*/$args['orderby']='meta_value';$args['order']='ASC';$args['meta_key']='_stock_status';return$args;}/*** Řazení produktů podle dostupnosti - back-end * * Přidání funkčnosti tlačítka*/add_filter('manage_edit-product_sortable_columns','rei_product_sortable_columns');functionrei_product_sortable_columns($columns){$custom=array('is_in_stock'=>'is_in_stock');returnwp_parse_args($custom,$columns);}add_action('pre_get_posts','products_admin_filter');functionproducts_admin_filter($query){// if it is not admin area, exit the filter immediatelyif(!is_admin())return;if(empty($_GET['orderby'])||empty($_GET['order']))return;if($_GET['orderby']=='is_in_stock'){$query->set('meta_key','_stock_status');$query->set('orderby','meta_value');// or meta_value_num$query->set('order',$_GET['order']);}return$query;}
Comments (0)
HTTPSSSH
You can clone a snippet to your computer for local editing.
Learn more.