Question

Je crée une fonction pour filtrer la requête de taxonomie avec ce code

add_action('pre_get_posts', 'custom_taxonomy_query');

$option_taxposts_per_page = get_option('tax_posts_per_page');

function custom_taxonomy_query(&$query)
{
   global $option_taxposts_per_page;

    if (!is_admin() && 
        is_tax('feature') || is_tax('propertytype') || is_tax('location'))  {

            if (is_tax('feature')) {
            $browseorder = get_option('browse_feature_order');
            }
            else if (is_tax('propertytype')) {
            $browseorder = get_option('browse_propertytype_order');
            }
            else if (is_tax('location')) {
            $browseorder = get_option('browse_location_order');
            }

            switch ($browseorder) {
                case "Price Descending":
                    $metakey = '_price';
                    $order = 'DESC';
                    $orderby = 'meta_value_num';
                    break;
                case "Price Ascending":
                    $metakey = '_price';
                    $order = 'ASC';
                    $orderby = 'meta_value_num';
                    break;
                case "Date Descending":
                    $metakey = '';
                    $order = 'DESC';
                    $orderby = 'date';
                    break;
                case "Date Ascending":
                    $metakey = '';
                    $order = 'ASC';
                    $orderby = 'date';
                    break;
                case "Random":
                    $metakey = '';
                    $order = '';
                    $orderby = 'rand';
                    break;
            }

            $query->set('meta_key', $metakey);
            $query->set('post_status', 'publish');
            $query->set('orderby', $orderby);
            $query->set('order', $order);
            $query->set('posts_per_page', $option_taxposts_per_page);

    }
}

Le problème est que si je choisis la commande par ordre par prix descendant et ascendant .. ma navigation de menu personnalisée a disparu et que je ne sais pas quelle cause cela. Si je choisis de commander par date et aléatoire, tout fonctionne très bien. S'il vous plaît, aidez-moi avec ce problème.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top