Nous allons voir comment ajouter une colonne dans le listing produit admin de Prestashop 1.7.6.8, prenons l'exemple de la date de dernière mise à jour.

Nous allons devoir modifier 3 fichiers :

  • src/Adapter/Product/AdminProductDataProvider.php
  • src/PrestaShopBundle/Resources/views/Admin/Product/CatalogPage/Lists/list.html.twig
  • src/PrestaShopBundle/Resources/views/Admin/Product/CatalogPage/Lists/products_table.html.twig

Je vous conseille de faire une sauvegarde de vos 3 fichiers avant modifications.

Le premier fichier 

  • src/Adapter/Product/AdminProductDataProvider.php

Ligne 245, ajouter une ligne au tableau en dessous de badge_danger

'date_upd' => array('table' => 'p', 'field' => 'date_upd', 'filtering' => self::FILTERING_LIKE_BOTH),

Le deuxième fichier

  • src/PrestaShopBundle/Resources/views/Admin/Product/CatalogPage/Lists/list.html.twig

Ligne 53, ajouter une ligne en dessous afin d'y ajouter une colonne

        <td>

            {{ product.date_upd|default('') }}

        </td>

Le troisième fichier

  • src/PrestaShopBundle/Resources/views/Admin/Product/CatalogPage/Lists/products_table.html.twig

Ligne 52, ajouter une ligne en dessous afin d'y ajouter une colonne

          <th scope="col">

            {{ ps.sortable_column_header("Date_upd"|trans({}, 'Admin.Global'), 'date_upd', orderBy, sortOrder) }}

          </th>

Ligne 119, ajouter une ligne pour y mettre 

          <th>

            <input

              type="text"

              class="form-control"

              placeholder="{{ "Search date"|trans({}, 'Admin.Catalog.Help') }}"

              name="filter_column_date_upd"

              value="{{ filter_column_date_upd }}"

              {% if filters_disabled %}disabled{% endif %}

            />

          </th>

Une fois les 3 fichiers upload, vider le cache de votre Prestashop.

Accéder aux produits et voir la nouvelle colonne date_upd avec la date de mise à jour de chacun de vos produits.

Si vous avez besoins d'autres informations, n'hésitez pas à me contacter via le formulaire de contact.