PrestaShop
PrestaShop 9
  • PrestaShop 1.7 Previous
  • PrestaShop 8 Current
  • PrestaShop 9 Next
  • 1. Basics
    • Introduction
    • Installation
      • System requirements
      • Docker environment
      • MacOS environment
      • Unix environment
      • Windows environment
      • Advanced topics on PrestaShop Installation
        • Docker (Flashlight)
        • Installation with CLI
        • Apache Http
        • Nginx
    • Deployment
      • Creating your own distribution
    • Staying up-to-date
      • Store backup
      • Migration
      • Update
        • Update from the back office
        • Update from the CLI
        • Post-update checklist
        • Post-restore checklist
  • 2. Core Reference
    • Coding standards
    • Naming conventions
    • Architecture
      • Introduction
      • File structure
        • Understanding the "src" folder
      • Legacy
        • Legacy Controllers
      • Modern
        • Symfony controllers & routing
      • Migration guide
        • Migration project and strategy
        • Templating with Twig
        • Forms
          • CRUD Forms
          • Settings Forms
          • CQRS usage in forms
        • Controller and Routing
        • Hooks
        • Grid / CRUD
        • Cleaning up
        • Validation
        • Testing
          • Unit testing
          • Behat testing
      • Domain-driven architecture
        • CQRS
        • Domain services
        • Data Transfer Objects
        • Value Objects
        • Domain exceptions
        • Domain References
          • Address domain
          • Attachment domain
          • AttributeGroup domain
          • Carrier domain
          • Cart domain
          • CartRule domain
          • CatalogPriceRule domain
          • Category domain
          • CmsPage domain
          • CmsPageCategory domain
          • Configuration domain
          • Contact domain
          • Country domain
          • CreditSlip domain
          • Currency domain
          • Customer domain
          • CustomerMessage domain
          • CustomerService domain
          • Employee domain
          • Feature domain
          • Hook domain
          • Language domain
          • MailTemplate domain
          • Manufacturer domain
          • Meta domain
          • Module domain
          • Notification domain
          • Order domain
          • OrderMessage domain
          • OrderReturn domain
          • OrderReturnState domain
          • OrderState domain
          • Product domain
          • Profile domain
          • SearchEngine domain
          • Security domain
          • Shop domain
          • ShowcaseCard domain
          • SpecificPrice domain
          • SqlManagement domain
          • State domain
          • Store domain
          • Supplier domain
          • Tab domain
          • Tax domain
          • TaxRulesGroup domain
          • Theme domain
          • Title domain
          • Webservice domain
          • Zone domain
      • Cache
    • Database
      • Database structure
    • Configuration
      • Configuring PrestaShop
      • List of settings
    • Orders lifecycle
    • Page Reference
      • Back Office Pages
        • Carrier
          • View all carriers
          • Add or edit a carrier
        • Order
          • Add new order
          • Order view
            • Refunds
        • Product
          • Product Form
    • Products lifecycle
      • Products search index
    • Components
      • Back Office Help sidebar
      • Configuration storage
        • Backward compatibility
      • Context
      • Cookie
      • Database
        • Db class
        • DBQuery class
        • ObjectModel class
        • PrestaShopCollection class
      • Export
        • CsvResponse
      • Faceted search
        • Inside the module
      • Form
        • Types Reference
          • AccordionType
          • AmountCurrencyType
          • ButtonCollectionType
          • CategoryChoiceTreeType
          • ChangePasswordType
          • ChoiceCategoriesTreeType
          • ColorPickerType
          • ConfigurableCountryChoiceType
          • CountryChoiceType
          • CustomContentType
          • CustomMoneyType
          • DatePickerType
          • DateRangeType
          • DeltaQuantityType
          • EmailType
          • EntityItemType
          • EntitySearchInputType
          • FormattedTextareaType
          • GeneratableTextType
          • IconButtonType
          • ImagePreviewType
          • IntegerMinMaxFilterType
          • IpAddressType
          • LogSeverityChoiceType
          • MaterialChoiceTableType
          • MaterialChoiceTreeType
          • MaterialMultipleChoiceTableType
          • MoneyWithSuffixType
          • NavigationTabType
          • NumberMinMaxFilterType
          • PriceReductionType
          • ProfileChoiceType
          • RadioWithChoiceChildrenType
          • ResizableTextType
          • SearchAndResetType
          • ShopChoiceTreeType
          • ShopRestrictionCheckboxType
          • SubmittableDeltaQuantityType
          • SubmittableInputType
          • SwitchType
          • TextPreviewType
          • TextWithLengthCounterType
          • TextWithRecommendedLengthType
          • TranslatableChoiceType
          • TranslatableType
          • TranslateType
          • TypeaheadCustomerCollectionType
          • TypeaheadProductCollectionType
          • TypeaheadProductPackCollectionType
          • UnavailableType
          • UnitTypeExtension
          • YesAndNoChoiceType
          • ZoneChoiceType
        • Form Theme
          • Symfony Form Theme for PrestaShop
          • List of migrated forms
      • Global JavaScript components
      • Helper classes
        • HelperForm
        • HelperList
        • HelperOptions
      • Router and Dispatcher
      • Smarty Extensions
      • Console
        • Context helper
        • prestashop:config
        • prestashop:debug
        • prestashop:licenses:update
        • prestashop:linter:legacy-link
        • prestashop:linter:naming-convention
        • prestashop:linter:security-attribute
        • prestashop:list:commands-and-queries
        • prestashop:mail:generate
        • prestashop:module
        • prestashop:schema:update-without-foreign
        • prestashop:taxes:update-eu-tax-rule-groups
        • prestashop:theme:enable
        • prestashop:theme:export
        • prestashop:translation:find-duplicates
        • prestashop:update:configuration-file-hooks-listing
        • prestashop:update:sql-upgrade-file-hooks-listing
      • Grid
        • Column Types reference
          • BadgeColumn
          • ColorColumn
          • DataColumn
          • DateTimeColumn
          • HtmlColumn
          • ImageColumn
          • LinkColumn
          • ToggleColumn
          • ActionColumn
          • BulkActionColumn
          • PositionColumn
          • EmployeeNameWithAvatarColumn
          • SeverityLevelColumn
        • Actions reference
        • Bulk Actions reference
        • Filter types reference
        • Tutorials
          • Bulk Actions
          • Grid Actions
          • Row Actions
          • Search Form
            • Custom form factory
          • Extend a Grid with Javascript extensions
          • Modify an existing Grid in a module
          • Customize Grid Templates
          • Custom Grid Action
          • Custom Column Type
          • Empty state
      • Hook
        • Subscribing to a Hook
        • Dispatching a Hook
        • Adding a new Core hook
        • Symfony bridge for hooks
      • Import
      • Link
      • Locale
      • Mail Templates
      • Position Updater
      • TinyMCE
      • Users
    • Internationalization
      • Translation
        • Introduction
        • Translation Domains
        • Using the Translator
        • Native module translation
        • Tips and tricks
      • Localization packs
      • Right-To-Left languages
    • PrestaShop UI Kit
      • UI Kit
      • CSS variables reference
      • How to use it?
      • CSS variables
    • How to compile assets
    • How to send e-mails
    • Native Modules
    • Module Distribution API
    • Multistore
      • Getting started
      • Shops context
      • Shops configuration
      • Configuration forms
  • 3. Testing
    • Integration tests
      • Executing integration tests
      • Creating your own Behat tests
      • Creating your own symfony controller tests
    • UI tests
      • Creating your own UI tests
      • Executing UI tests
    • Unit tests
      • Executing unit tests
      • Creating your own unit tests
  • 4. Modules
    • Introduction
    • Getting Started
      • Tutorial
      • Folder structure
      • Adding a configuration page (Legacy architecture)
      • Modern configuration page
      • Displaying content on the front office
      • Enabling the Auto-Update
      • Module translation
        • New system
        • Classic system
        • Which system to use?
      • Good practices
      • Interacting with APIs
    • Extension concepts
      • Hooks
        • Use hooks on modern pages
        • List of hooks
      • Widgets
      • Controllers
        • Front controllers
        • Admin controllers
          • Adding module links in the back-office side menu
          • Generate a Symfony route
          • Override or decorate a Core controller
        • KPI block in Admin pages
      • Forms
        • Alter Configuration Back Office forms
      • Templating
        • Vue.js
          • FAQ
        • Import Core JavaScript files
        • Overriding Back office views
      • Doctrine
        • Multi Lang Entity
      • Overrides
      • Composer
      • Services
      • Symfony extension concepts
      • Commands
      • Pdf Files
      • Webservice
      • Mail Templates
        • Extending a layout
        • Adding a layout
        • Adding a theme
        • Adding layout variables
        • Applying transformations
      • Module class
      • Multistore
    • Payment modules
    • Carrier modules
    • Testing
      • Basic checks
      • Advanced checks
      • CI/CD
      • Testing Resources
    • Core changes
      • Changes in 8.0
      • Changes in 8.1
      • Changes in 9.0
      • New password policy
    • Sample modules and how to's
      • Grid and identifiable object form hooks usage example
      • Order view page new hooks demo tutorial
        • Module base creation
        • Signature card
        • Additional action buttons
      • Extending Symfony form with upload image field
      • Extending the new product page form
    • Configure with CLI
  • 5. Themes
    • Getting started
      • Guidelines
      • Set up your local environment
      • Required tools
      • Theme organization
      • Theme.yml
      • Asset management
        • Webpack
    • Hummingbird Theme
      • Hooks on Hummingbird Theme
        • Category page
        • Checkout flow
        • Connexion page
        • Contact page
        • Home page
        • My account
        • Product page
        • Cart page
    • Reference
      • Theme Hooks
      • Javascript events
      • Bootstrap compatibility
      • Migrating from 1.6
      • Overriding modules
      • Overriding selectors
      • RTL support
      • Smarty helpers
      • Template inheritance
        • Parent/child theme
      • Templates
        • Templates & layouts
        • Head
        • Notifications
        • Listing pages
        • Template variables
      • Theme translation
    • Distribution
      • Testing
      • Exporting your theme
  • 6. Webservice API
    • Getting Started
    • Tutorials
      • Creating access
      • Testing access
      • Testing with Postman
      • PrestaShop Webservice lib
        • 1 - Setup library
        • 2 - Listing resources
        • 3 - Retrieve a resource
        • 4 - Create a resource
        • 5 - Update a resource
        • 6 - Delete a resource
      • Advanced use
        • Additional list parameters
        • Image management
        • Specific prices
        • Configuration
        • Multishop
        • Multilingual
      • Creating a product - complete guide
    • Reference
    • Cheat sheet
    • Extend Webservice
    • Resources
      • Addresses
      • Attachments
      • Carriers
      • Cart rules
      • Carts
      • Categories
      • Combinations
      • Configurations
      • Contacts
      • Content management system
      • Countries
      • Currencies
      • Customer messages
      • Customer threads
      • Customers
      • Customizations
      • Deliveries
      • Employees
      • Groups
      • Guests
      • Image types
      • Images
      • Languages
      • Manufacturers
      • Messages
      • Order carriers
      • Order cart rules
      • Order details
      • Order histories
      • Order invoices
      • Order payments
      • Order slip
      • Order states
      • Orders
      • Price ranges
      • Product customization fields
      • Product feature values
      • Product features
      • Product option values
      • Product options
      • Product suppliers
      • Products
      • Search
      • Shop groups
      • Shop urls
      • Shops
      • Specific price rules
      • Specific prices
      • States
      • Stock availables
      • Stock movement reasons
      • Stock movements
      • Stocks
      • Stores
      • Suppliers
      • Supply order details
      • Supply order histories
      • Supply order receipt histories
      • Supply order states
      • Supply orders
      • Tags
      • Tax rule groups
      • Tax rules
      • Taxes
      • Translated configurations
      • Warehouse product locations
      • Warehouses
      • Weight ranges
      • Zones
  • 7. Admin API
    • Context
    • OAuth2
    • Resource Server
      • API Platform and CQRS
      • API Resources
    • Authorization Server
      • Internal authorization server
      • External authorization server
    • How to use
    • Swagger Documentation
  • 8. Contribute
    • Contribution guidelines
      • Writing a good commit message
      • Describing Pull Requests
      • Supported branches
      • Project Modules
      • Compatible licenses
      • Contributions to the Autoupgrade module
      • UI tests
    • Submitting code changes
      • Contribute using localhost
      • Contribute using Docker
      • Publish your changes to GitHub
    • Improve the documentation
      • Why write documentation
      • How to contribute
        • Documentation versions
        • Edit on GitHub
        • Edit on your computer
        • Writing Markdown
        • Moving pages
      • Hugo functions (Shortcodes)
        • Internal and cross links
        • Callout
        • Function definition
        • Note block
        • Version pill
    • How contributions are handled
      • How Pull Requests are processed
  • 9. Scale
    • How to benchmark
      • Front-Office Benchmark
      • Back-Office Benchmark
    • Optimize your webserver
      • Optimize your Apache httpd configuration
      • Optimize your nginx configuration
    • Optimize your PrestaShop
    • Taking care of your PrestaShop
  • 10. The PrestaShop Project
    • Maintainer's guide
    • Release
      • Patch release lifecycle
      • Minor release lifecycle
    • Security policy
  • 11. FAQ
    • Tips & tricks
      • Hook tips
    • I need help
    • Image FAQ
    • Open Source Project FAQ
    • Pricing FAQ
    • Product FAQ
    • Shipping FAQ
    • Stock FAQ
    • Update FAQ

PrestaShop on GitHub

Report a bug

Join us on Slack

Improve this page How
Home > PrestaShop 9 > Core Reference > Components > Grid > Tutorials

Notice: You are browsing the documentation for PrestaShop 9, which is currently in development.

You might want to read the documentation for the current version, PrestaShop 8. Read the current version of this page

Grid tutorials

  • How to use Bulk actions in Grid
  • How to use Grid Actions
  • How to use Row Actions
  • How to work with the Search Form
  • How to extend a Grid with Javascript extensions
  • How to modify an existing Grid in a module
  • How to customize the Grid templates
  • How to create a custom Grid Action
  • How to create a custom Column Type
  • How to create an Empty state
Next: How to use Bulk actions in Grid ›
Help and support
Help make these docs great!

The PrestaShop Developer Documentation is open source.
See something wrong or unclear? Submit a pull request.

Improve this page
Learn how to contribute
Still need help?
Join the PrestaShop Project’s Slack Chat Join us on Github Discussions Find support on prestashop-project.org Discover our developer's blog
Last update on 2024-05-06 by Jonathan Lelievre.
This article is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.