В настоящее время, когда вы просматриваете страницы продуктов на нашем сайте WordPress wp-e-commerce, все товары, которых нет в наличии, отображаются на всех страницах.
Чего бы мы хотели что вы можете сделать, это переместить все товары, которых нет в наличии, в конец страниц, чтобы для просмотра продуктов, которых нет в наличии, вам пришлось прокручивать все страницы, на которых были бы показаны продукты, которые есть в наличии, чтобы улучшить взаимодействие с пользователем.
Мы хотели бы иметь возможность либо придумать фильтр для использования в файле function.php, либо изменить приведенный ниже код. чтобы добиться этого:
function wpsc_product_sort_order_query_vars( $orderby = null ) {
if ( is_null( $orderby ) ) {
$orderby = get_option( 'wpsc_sort_by' );
}
$query_vars = array();
switch ( $orderby ) {
case "dragndrop":
$query_vars["orderby"] = 'menu_order';
break;
case "name":
$query_vars["orderby"] = 'title';
break;
//This only works in WP 3.0.
case "price":
add_filter( 'posts_join', 'wpsc_add_meta_table' );
add_filter( 'posts_where', 'wpsc_add_meta_table_where' );
$query_vars["meta_key"] = '_wpsc_price';
$query_vars["orderby"] = 'meta_value_num';
break;
case "id":
$query_vars["orderby"] = 'ID';
break;
default:
// Allow other WordPress 'ordery' values as defined in http://codex.wordpress.org/Class_Refere ... Parameters
$query_vars["orderby"] = $orderby;
break;
}
return $query_vars;
}
Пытался создать фильтр (все еще новичок в php, но попробовал следующее).
Если у кого-нибудь есть предложения о том, как можно изменить приведенный выше код, чтобы переместить товары, которых нет на складе, в конец страниц, или как можно изменить для этого фильтр ниже, были бы очень признательны:
add_filter('posts_clauses', 'order_by_stock_status');
function order_by_stock_status($posts_clauses) {
global $wpdb;
// only change query on wp-e-commerce loops
if (!is_admin() && (is_productQuery() || is_wpsc_product_category() || is_product_tag() || is_wpsc_cat.taxonomy_id())) {
$posts_clauses['join'] .= " INNER JOIN $wpdb->postmeta istockstatus ON ($wpdb->posts.ID = istockstatus.post_id) ";
$posts_clauses['orderby'] = " istockstatus.meta_value ASC, " . $posts_clauses['orderby'];
$posts_clauses['where'] = " AND istockstatus.meta_key = '_stock_status' AND istockstatus.meta_value '' " . $posts_clauses['where'];
}
return $posts_clauses;
}
Подробнее здесь: https://stackoverflow.com/questions/785 ... -plugin-wp
Перемещение отсутствующих на складе товаров в конец страниц в плагине WP-E-Commerce (WPEC) ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Изменение кода PHP для сортировки продуктов WP-E-Commerce по их состоянию на складе
Anonymous » » в форуме Php - 0 Ответы
- 27 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Невозможно обновить значение «Наличие на складе» или «На складе» через Magento API.
Anonymous » » в форуме C# - 0 Ответы
- 57 Просмотры
-
Последнее сообщение Anonymous
-