Hey! Hola que tal amigos de Junior a Senior el día de hoy les vengo con un nuevo tutorial, el cual consta de eliminar u ocultar un elemento de la lista de ORDENAR POR de nuestro filtro de productos en prestsahop.

En este post te mostraremos el como podrás ocultar un elemento de esta lista desplegable, en este caso ocultaremos una opción de temporada que viene desde la parte de características de los productos de Prestashop.

El primer paso a seguir es ir a nuestros archivos de Prestashop y buscar en la siguiente dirección entre nuestras carpetas:

/modules/ps_facetedsearch/src/Product/SearchProvider.php

El segundo paso y el mas importante antes de realizar este paso es realizar una copia de seguridad o un Override que sería lo más conveniente.

Pero para este caso te lo mostraremos de la siguiente forma y buscaremos dentro del codigo la siguiente función: getAvailableSortOrders().

Como tercer paso procederemos a comentar las lineas de codigo que se muestran en la imagen o a continuación.

    private function getAvailableSortOrders()
    {
        $sortSalesDesc = new SortOrder('product', 'sales', 'desc');
        $sortPosAsc = new SortOrder('product', 'position', 'asc');
        $sortNameAsc = new SortOrder('product', 'name', 'asc');
        $sortNameDesc = new SortOrder('product', 'name', 'desc');
        $sortPriceAsc = new SortOrder('product', 'price', 'asc');
        $sortPriceDesc = new SortOrder('product', 'price', 'desc');
        /*$sortTemporada = new SortOrder('product', 'atletic_feature');*/
        $translator = $this->module->getTranslator();

        return [
            $sortSalesDesc->setLabel(
                $translator->trans('Best sellers', [], 'Modules.Facetedsearch.Shop')
            ),
            $sortPosAsc->setLabel(
                $translator->trans('Relevance', [], 'Modules.Facetedsearch.Shop')
            ),
            $sortNameAsc->setLabel(
                $translator->trans('Name, A to Z', [], 'Shop.Theme.Catalog')
            ),
            $sortNameDesc->setLabel(
                $translator->trans('Name, Z to A', [], 'Shop.Theme.Catalog')
            ),
            $sortPriceAsc->setLabel(
                $translator->trans('Price, low to high', [], 'Shop.Theme.Catalog')
            ),
            $sortPriceDesc->setLabel(
                $translator->trans('Price, high to low', [], 'Shop.Theme.Catalog')
            ),
            /*$sortTemporada->setLabel(
                $translator->trans('Temporada', [], 'Shop.Theme.Catalog')
            ),*/
        ];
    }

Este ultimo paso nos ocultara la opción que se desplegaba en nuestro filtro.

Espero les haya servido de algo esta breve información, si tienen dudas u otras maneras de hacerlo pueden mostrárnoslo en los comentarios, esto ayudara a qué todos crezcamos y resolvamos nuestros problemas de forma rápida y sencilla.

Leave a reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You may also like