W trakcie realizacji sklepu internetowego na silniku Prestashop 1.7.7 – spotkaliśmy się z bardzo ciekawym zagadnieniem, z którym zmierzymy się w tym wpisie.
Czy w Prestashop 1.7 można wyświetlić na jednej stronie w panelu administratora (backoffice) w karcie Zamówienia więcej niż 100 zamówień na raz (na jednej stronie)?
Odpowiedź na to pytanie brzmi oczywiście – nie, system bez modyfikacji pozwala wyświetlać na raz do 100 zamówień na jednej stronie. W większości przypadków ta liczba wydaje się wystarczająca, jednocześnie ograniczenie do 100 wydaje się być rozsądnym posunięciem ze strony programistów platformy – wyświetlanie takiej liczby zamówień na raz nie obciąża przesadnie serwera na którym znajduje się sklep.
Postanowiliśmy jednak sprawdzić czy uda się w miarę przystępnie zwiększyć tą ilość i dodać opcje wyświetlania 200, 300, 400, 500 zamówień na jednej stronie w Prestashop 1.7. Przed przystąpieniem do działania weź pod uwagę zasoby serwera na którym znajduje się sklep. Nie polecamy udostępniać opcji wyświetlania powyżej 100 zamówień na raz dla hostingów współdzielonych, natomiast serwery VPS czy dedykowane bezproblemowo będą radzić sobie z wyświetlaniem większych ilości zamówień na raz.
Do dzieła! Do uzyskania pożądanego efektu wystarczy modyfikacja pliku pagination.html.twig.
Ścieżka do pliku, którym będziemy się zajmować jest następująca:
src/PrestaShopBundle/Resources/views/Admin/Common/pagination.html.twig
Poniższy fragment kodu podmieniamy z:
<select name="paginator_select_page_limit" id="paginator_select_page_limit" psurl="{{ changeLimitUrl }}" class="pagination-link custom-select">
{% if limit not in limit_choices %}
<option value="{{ limit }}" selected="selected">{{ limit }}</option>
{% endif %}
{% for limit_choice in limit_choices %}
<option value="{{ limit_choice }}" {% if limit==limit_choice %}selected="selected"{% endif %}>{{ limit_choice }}</option>
{% endfor %}
</select>
na:
<select name="paginator_select_page_limit" id="paginator_select_page_limit" psurl="{{ changeLimitUrl }}" class="pagination-link custom-select">
{% if limit not in limit_choices %}
<option value="{{ limit }}" selected="selected">{{ limit }}</option>
{% endif %}
{% for limit_choice in limit_choices %}
<option value="{{ limit_choice }}" {% if limit==limit_choice %}selected="selected"{% endif %}>{{ limit_choice }}</option>
{% endfor %}
<option value="200">200</option>
<option value="300">300</option>
<option value="400">400</option>
<option value="500">500</option>
</select>
Oczywiście możesz z łatwością dodawać kolejne opcje, np. 250, wystarczy, że użyjesz poniższej konstrukcji:
<option value="250">250</option>
Gotowe! Od teraz możesz wyświetlać powyżej 100 zamówień na jednej stronie.
Wprowadź tą drobną modyfikację i wyświetlaj 200, 300, 400, 500 lub dowolną ilość zamówień na jednej stronie w panelu Prestashop 1.7.
Dziękujemy za Twoją obecność!