How to reindex programmatically in Magento2 Planned maintenance scheduled April 23, 2019 at 23:30UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Fix error “There was a problem with reindexing process.” or “Cannot initialize the indexer process.”Products imported with custom script “disappear” from the category listingUnable to reindex prices - deleted all products but error still exists. What tables/values should be clearedMagento2 prevent reindex after adding product programmaticallyArea code not setMagento 2.1 :- Add Conditions Rule in custom formTable missing after index:resetError on editing categories in Magento 2Rogue “enterprise_refresh_index” causing excessive Merchandising failuresM1 cache corruption race condition?

Sentence with dass with three Verbs (One modal and two connected with zu)

Project Euler #1 in C++

Random body shuffle every night—can we still function?

Antipodal Land Area Calculation

Converted a Scalar function to a TVF function for parallel execution-Still running in Serial mode

One-one communication

How do living politicians protect their readily obtainable signatures from misuse?

How to compare two different files line by line in unix?

A term for a woman complaining about things/begging in a cute/childish way

Is multiple magic items in one inherently imbalanced?

If Windows 7 doesn't support WSL, then what is "Subsystem for UNIX-based Applications"?

Why can't I install Tomboy in Ubuntu Mate 19.04?

How long can equipment go unused before powering up runs the risk of damage?

A letter with no particular backstory

macOS: Name for app shortcut screen found by pinching with thumb and three fingers

What makes a man succeed?

Intuitive explanation of the rank-nullity theorem

Most bit efficient text communication method?

How can I prevent/balance waiting and turtling as a response to cooldown mechanics

How would a mousetrap for use in space work?

Does the Mueller report show a conspiracy between Russia and the Trump Campaign?

Do wooden building fires get hotter than 600°C?

How does Belgium enforce obligatory attendance in elections?

Why are my pictures showing a dark band on one edge?



How to reindex programmatically in Magento2



Planned maintenance scheduled April 23, 2019 at 23:30UTC (7:30pm US/Eastern)
Announcing the arrival of Valued Associate #679: Cesar Manara
Unicorn Meta Zoo #1: Why another podcast?Fix error “There was a problem with reindexing process.” or “Cannot initialize the indexer process.”Products imported with custom script “disappear” from the category listingUnable to reindex prices - deleted all products but error still exists. What tables/values should be clearedMagento2 prevent reindex after adding product programmaticallyArea code not setMagento 2.1 :- Add Conditions Rule in custom formTable missing after index:resetError on editing categories in Magento 2Rogue “enterprise_refresh_index” causing excessive Merchandising failuresM1 cache corruption race condition?



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








1















I want to reindex all indexes in Magento2 from an external file, for this I created a external file as below :



...
$indexers = $objectManager->get('MagentoFrameworkIndexerConfigInterface')->getIndexers();
foreach($indexers as $indexer)

$actualIndexer = $objectManager->get('MagentoFrameworkIndexerIndexerInterface')->load($indexer['indexer_id']);
$actualIndexer->reindexAll();


...


When I run it on then only config index reindexed, not all.



I know it is not a good way to reindex but It is my custom module requirement, I want to integrate reindex code in my module save controller, so that when client save form there will be no indexing issue.



How to reindex all indexes?










share|improve this question














bumped to the homepage by Community 23 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.





















    1















    I want to reindex all indexes in Magento2 from an external file, for this I created a external file as below :



    ...
    $indexers = $objectManager->get('MagentoFrameworkIndexerConfigInterface')->getIndexers();
    foreach($indexers as $indexer)

    $actualIndexer = $objectManager->get('MagentoFrameworkIndexerIndexerInterface')->load($indexer['indexer_id']);
    $actualIndexer->reindexAll();


    ...


    When I run it on then only config index reindexed, not all.



    I know it is not a good way to reindex but It is my custom module requirement, I want to integrate reindex code in my module save controller, so that when client save form there will be no indexing issue.



    How to reindex all indexes?










    share|improve this question














    bumped to the homepage by Community 23 mins ago


    This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.

















      1












      1








      1








      I want to reindex all indexes in Magento2 from an external file, for this I created a external file as below :



      ...
      $indexers = $objectManager->get('MagentoFrameworkIndexerConfigInterface')->getIndexers();
      foreach($indexers as $indexer)

      $actualIndexer = $objectManager->get('MagentoFrameworkIndexerIndexerInterface')->load($indexer['indexer_id']);
      $actualIndexer->reindexAll();


      ...


      When I run it on then only config index reindexed, not all.



      I know it is not a good way to reindex but It is my custom module requirement, I want to integrate reindex code in my module save controller, so that when client save form there will be no indexing issue.



      How to reindex all indexes?










      share|improve this question














      I want to reindex all indexes in Magento2 from an external file, for this I created a external file as below :



      ...
      $indexers = $objectManager->get('MagentoFrameworkIndexerConfigInterface')->getIndexers();
      foreach($indexers as $indexer)

      $actualIndexer = $objectManager->get('MagentoFrameworkIndexerIndexerInterface')->load($indexer['indexer_id']);
      $actualIndexer->reindexAll();


      ...


      When I run it on then only config index reindexed, not all.



      I know it is not a good way to reindex but It is my custom module requirement, I want to integrate reindex code in my module save controller, so that when client save form there will be no indexing issue.



      How to reindex all indexes?







      magento-2.1 reindex






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Sep 14 '17 at 5:25









      Vinaya MaheshwariVinaya Maheshwari

      1,19211948




      1,19211948





      bumped to the homepage by Community 23 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







      bumped to the homepage by Community 23 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.






















          3 Answers
          3






          active

          oldest

          votes


















          0














          Try below code :



          /**
          * @var MagentoIndexerModelIndexerFactory
          */
          protected $_indexerFactory;
          /**
          * @var MagentoIndexerModelIndexerCollectionFactory
          */
          protected $_indexerCollectionFactory;

          public function __construct(
          MagentoIndexerModelIndexerFactory $indexerFactory,
          MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
          )
          $this->_indexerFactory = $indexerFactory;
          $this->_indexerCollectionFactory = $indexerCollectionFactory;


          // you can call this function to do reindexing
          public function reIndexing(){
          $indexerCollection = $this->_indexerCollectionFactory->create();
          $ids = $indexerCollection->getAllIds();
          foreach ($ids as $id)
          $idx = $this->_indexerFactory->create()->load($id);
          $idx->reindexAll($id);
          //$idx->reindexRow($id);






          share|improve this answer






























            0














            Take a look at MagentoIndexerConsoleCommandIndexerReindexCommand::execute() on how the console command does it. If you analyze the code you can up with something like:



            /**
            * @var MagentoIndexerModelIndexerCollectionFactory
            */
            protected $indexerCollectionFactory;

            /**
            * Foo constructor.
            * @param MagentoIndexerModelIndexerCollectionFactory $collectionFactory
            */
            public function __construct(
            MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
            )
            $this->indexerCollectionFactory = $indexerCollectionFactory;


            /**
            * Run every indexer
            */
            public function runEveryIndexer()

            $indexerCollection = $this->indexerCollectionFactory->create();
            foreach ($indexerCollection->getItems() as $indexer)
            $indexer->reindexAll();




            A small sidenote: I don't know your use case, but it might make more sense to only reindex the required indexers, because some indexers might take a long time to run and are not always required to.






            share|improve this answer






























              0














              Simply call this function wherever you need to reindex. If you make it static, you can include and call it from anywhere you want, because it is class-independent.



              use MagentoIndexerConsoleCommandIndexerReindexCommand;
              public function reIndexing()

              $obj = MagentoFrameworkAppObjectManager::getInstance();
              $indexerCollectionFactory = $obj->get("MagentoIndexerModelIndexerCollectionFactory");
              $indexerFactory = $obj->get("MagentoIndexerModelIndexerFactory");
              $indexerCollection = $indexerCollectionFactory->create();
              $allIds = $indexerCollection->getAllIds();

              foreach ($allIds as $id)

              $indexer = $indexerFactory->create()->load($id);
              $indexer->reindexAll(); // this reindexes all







              share|improve this answer























                Your Answer








                StackExchange.ready(function()
                var channelOptions =
                tags: "".split(" "),
                id: "479"
                ;
                initTagRenderer("".split(" "), "".split(" "), channelOptions);

                StackExchange.using("externalEditor", function()
                // Have to fire editor after snippets, if snippets enabled
                if (StackExchange.settings.snippets.snippetsEnabled)
                StackExchange.using("snippets", function()
                createEditor();
                );

                else
                createEditor();

                );

                function createEditor()
                StackExchange.prepareEditor(
                heartbeatType: 'answer',
                autoActivateHeartbeat: false,
                convertImagesToLinks: false,
                noModals: true,
                showLowRepImageUploadWarning: true,
                reputationToPostImages: null,
                bindNavPrevention: true,
                postfix: "",
                imageUploader:
                brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                allowUrls: true
                ,
                onDemand: true,
                discardSelector: ".discard-answer"
                ,immediatelyShowMarkdownHelp:true
                );



                );













                draft saved

                draft discarded


















                StackExchange.ready(
                function ()
                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f193159%2fhow-to-reindex-programmatically-in-magento2%23new-answer', 'question_page');

                );

                Post as a guest















                Required, but never shown

























                3 Answers
                3






                active

                oldest

                votes








                3 Answers
                3






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes









                0














                Try below code :



                /**
                * @var MagentoIndexerModelIndexerFactory
                */
                protected $_indexerFactory;
                /**
                * @var MagentoIndexerModelIndexerCollectionFactory
                */
                protected $_indexerCollectionFactory;

                public function __construct(
                MagentoIndexerModelIndexerFactory $indexerFactory,
                MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                )
                $this->_indexerFactory = $indexerFactory;
                $this->_indexerCollectionFactory = $indexerCollectionFactory;


                // you can call this function to do reindexing
                public function reIndexing(){
                $indexerCollection = $this->_indexerCollectionFactory->create();
                $ids = $indexerCollection->getAllIds();
                foreach ($ids as $id)
                $idx = $this->_indexerFactory->create()->load($id);
                $idx->reindexAll($id);
                //$idx->reindexRow($id);






                share|improve this answer



























                  0














                  Try below code :



                  /**
                  * @var MagentoIndexerModelIndexerFactory
                  */
                  protected $_indexerFactory;
                  /**
                  * @var MagentoIndexerModelIndexerCollectionFactory
                  */
                  protected $_indexerCollectionFactory;

                  public function __construct(
                  MagentoIndexerModelIndexerFactory $indexerFactory,
                  MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                  )
                  $this->_indexerFactory = $indexerFactory;
                  $this->_indexerCollectionFactory = $indexerCollectionFactory;


                  // you can call this function to do reindexing
                  public function reIndexing(){
                  $indexerCollection = $this->_indexerCollectionFactory->create();
                  $ids = $indexerCollection->getAllIds();
                  foreach ($ids as $id)
                  $idx = $this->_indexerFactory->create()->load($id);
                  $idx->reindexAll($id);
                  //$idx->reindexRow($id);






                  share|improve this answer

























                    0












                    0








                    0







                    Try below code :



                    /**
                    * @var MagentoIndexerModelIndexerFactory
                    */
                    protected $_indexerFactory;
                    /**
                    * @var MagentoIndexerModelIndexerCollectionFactory
                    */
                    protected $_indexerCollectionFactory;

                    public function __construct(
                    MagentoIndexerModelIndexerFactory $indexerFactory,
                    MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                    )
                    $this->_indexerFactory = $indexerFactory;
                    $this->_indexerCollectionFactory = $indexerCollectionFactory;


                    // you can call this function to do reindexing
                    public function reIndexing(){
                    $indexerCollection = $this->_indexerCollectionFactory->create();
                    $ids = $indexerCollection->getAllIds();
                    foreach ($ids as $id)
                    $idx = $this->_indexerFactory->create()->load($id);
                    $idx->reindexAll($id);
                    //$idx->reindexRow($id);






                    share|improve this answer













                    Try below code :



                    /**
                    * @var MagentoIndexerModelIndexerFactory
                    */
                    protected $_indexerFactory;
                    /**
                    * @var MagentoIndexerModelIndexerCollectionFactory
                    */
                    protected $_indexerCollectionFactory;

                    public function __construct(
                    MagentoIndexerModelIndexerFactory $indexerFactory,
                    MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                    )
                    $this->_indexerFactory = $indexerFactory;
                    $this->_indexerCollectionFactory = $indexerCollectionFactory;


                    // you can call this function to do reindexing
                    public function reIndexing(){
                    $indexerCollection = $this->_indexerCollectionFactory->create();
                    $ids = $indexerCollection->getAllIds();
                    foreach ($ids as $id)
                    $idx = $this->_indexerFactory->create()->load($id);
                    $idx->reindexAll($id);
                    //$idx->reindexRow($id);







                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Sep 14 '17 at 6:13









                    Manthan DaveManthan Dave

                    8,02621539




                    8,02621539























                        0














                        Take a look at MagentoIndexerConsoleCommandIndexerReindexCommand::execute() on how the console command does it. If you analyze the code you can up with something like:



                        /**
                        * @var MagentoIndexerModelIndexerCollectionFactory
                        */
                        protected $indexerCollectionFactory;

                        /**
                        * Foo constructor.
                        * @param MagentoIndexerModelIndexerCollectionFactory $collectionFactory
                        */
                        public function __construct(
                        MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                        )
                        $this->indexerCollectionFactory = $indexerCollectionFactory;


                        /**
                        * Run every indexer
                        */
                        public function runEveryIndexer()

                        $indexerCollection = $this->indexerCollectionFactory->create();
                        foreach ($indexerCollection->getItems() as $indexer)
                        $indexer->reindexAll();




                        A small sidenote: I don't know your use case, but it might make more sense to only reindex the required indexers, because some indexers might take a long time to run and are not always required to.






                        share|improve this answer



























                          0














                          Take a look at MagentoIndexerConsoleCommandIndexerReindexCommand::execute() on how the console command does it. If you analyze the code you can up with something like:



                          /**
                          * @var MagentoIndexerModelIndexerCollectionFactory
                          */
                          protected $indexerCollectionFactory;

                          /**
                          * Foo constructor.
                          * @param MagentoIndexerModelIndexerCollectionFactory $collectionFactory
                          */
                          public function __construct(
                          MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                          )
                          $this->indexerCollectionFactory = $indexerCollectionFactory;


                          /**
                          * Run every indexer
                          */
                          public function runEveryIndexer()

                          $indexerCollection = $this->indexerCollectionFactory->create();
                          foreach ($indexerCollection->getItems() as $indexer)
                          $indexer->reindexAll();




                          A small sidenote: I don't know your use case, but it might make more sense to only reindex the required indexers, because some indexers might take a long time to run and are not always required to.






                          share|improve this answer

























                            0












                            0








                            0







                            Take a look at MagentoIndexerConsoleCommandIndexerReindexCommand::execute() on how the console command does it. If you analyze the code you can up with something like:



                            /**
                            * @var MagentoIndexerModelIndexerCollectionFactory
                            */
                            protected $indexerCollectionFactory;

                            /**
                            * Foo constructor.
                            * @param MagentoIndexerModelIndexerCollectionFactory $collectionFactory
                            */
                            public function __construct(
                            MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                            )
                            $this->indexerCollectionFactory = $indexerCollectionFactory;


                            /**
                            * Run every indexer
                            */
                            public function runEveryIndexer()

                            $indexerCollection = $this->indexerCollectionFactory->create();
                            foreach ($indexerCollection->getItems() as $indexer)
                            $indexer->reindexAll();




                            A small sidenote: I don't know your use case, but it might make more sense to only reindex the required indexers, because some indexers might take a long time to run and are not always required to.






                            share|improve this answer













                            Take a look at MagentoIndexerConsoleCommandIndexerReindexCommand::execute() on how the console command does it. If you analyze the code you can up with something like:



                            /**
                            * @var MagentoIndexerModelIndexerCollectionFactory
                            */
                            protected $indexerCollectionFactory;

                            /**
                            * Foo constructor.
                            * @param MagentoIndexerModelIndexerCollectionFactory $collectionFactory
                            */
                            public function __construct(
                            MagentoIndexerModelIndexerCollectionFactory $indexerCollectionFactory
                            )
                            $this->indexerCollectionFactory = $indexerCollectionFactory;


                            /**
                            * Run every indexer
                            */
                            public function runEveryIndexer()

                            $indexerCollection = $this->indexerCollectionFactory->create();
                            foreach ($indexerCollection->getItems() as $indexer)
                            $indexer->reindexAll();




                            A small sidenote: I don't know your use case, but it might make more sense to only reindex the required indexers, because some indexers might take a long time to run and are not always required to.







                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered Sep 14 '17 at 6:23









                            Giel BerkersGiel Berkers

                            7,17924382




                            7,17924382





















                                0














                                Simply call this function wherever you need to reindex. If you make it static, you can include and call it from anywhere you want, because it is class-independent.



                                use MagentoIndexerConsoleCommandIndexerReindexCommand;
                                public function reIndexing()

                                $obj = MagentoFrameworkAppObjectManager::getInstance();
                                $indexerCollectionFactory = $obj->get("MagentoIndexerModelIndexerCollectionFactory");
                                $indexerFactory = $obj->get("MagentoIndexerModelIndexerFactory");
                                $indexerCollection = $indexerCollectionFactory->create();
                                $allIds = $indexerCollection->getAllIds();

                                foreach ($allIds as $id)

                                $indexer = $indexerFactory->create()->load($id);
                                $indexer->reindexAll(); // this reindexes all







                                share|improve this answer



























                                  0














                                  Simply call this function wherever you need to reindex. If you make it static, you can include and call it from anywhere you want, because it is class-independent.



                                  use MagentoIndexerConsoleCommandIndexerReindexCommand;
                                  public function reIndexing()

                                  $obj = MagentoFrameworkAppObjectManager::getInstance();
                                  $indexerCollectionFactory = $obj->get("MagentoIndexerModelIndexerCollectionFactory");
                                  $indexerFactory = $obj->get("MagentoIndexerModelIndexerFactory");
                                  $indexerCollection = $indexerCollectionFactory->create();
                                  $allIds = $indexerCollection->getAllIds();

                                  foreach ($allIds as $id)

                                  $indexer = $indexerFactory->create()->load($id);
                                  $indexer->reindexAll(); // this reindexes all







                                  share|improve this answer

























                                    0












                                    0








                                    0







                                    Simply call this function wherever you need to reindex. If you make it static, you can include and call it from anywhere you want, because it is class-independent.



                                    use MagentoIndexerConsoleCommandIndexerReindexCommand;
                                    public function reIndexing()

                                    $obj = MagentoFrameworkAppObjectManager::getInstance();
                                    $indexerCollectionFactory = $obj->get("MagentoIndexerModelIndexerCollectionFactory");
                                    $indexerFactory = $obj->get("MagentoIndexerModelIndexerFactory");
                                    $indexerCollection = $indexerCollectionFactory->create();
                                    $allIds = $indexerCollection->getAllIds();

                                    foreach ($allIds as $id)

                                    $indexer = $indexerFactory->create()->load($id);
                                    $indexer->reindexAll(); // this reindexes all







                                    share|improve this answer













                                    Simply call this function wherever you need to reindex. If you make it static, you can include and call it from anywhere you want, because it is class-independent.



                                    use MagentoIndexerConsoleCommandIndexerReindexCommand;
                                    public function reIndexing()

                                    $obj = MagentoFrameworkAppObjectManager::getInstance();
                                    $indexerCollectionFactory = $obj->get("MagentoIndexerModelIndexerCollectionFactory");
                                    $indexerFactory = $obj->get("MagentoIndexerModelIndexerFactory");
                                    $indexerCollection = $indexerCollectionFactory->create();
                                    $allIds = $indexerCollection->getAllIds();

                                    foreach ($allIds as $id)

                                    $indexer = $indexerFactory->create()->load($id);
                                    $indexer->reindexAll(); // this reindexes all








                                    share|improve this answer












                                    share|improve this answer



                                    share|improve this answer










                                    answered Jul 25 '18 at 10:46









                                    ErunestaronErunestaron

                                    11




                                    11



























                                        draft saved

                                        draft discarded
















































                                        Thanks for contributing an answer to Magento Stack Exchange!


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid


                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.

                                        To learn more, see our tips on writing great answers.




                                        draft saved


                                        draft discarded














                                        StackExchange.ready(
                                        function ()
                                        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f193159%2fhow-to-reindex-programmatically-in-magento2%23new-answer', 'question_page');

                                        );

                                        Post as a guest















                                        Required, but never shown





















































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown

































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown







                                        Popular posts from this blog

                                        Can not update quote_id field of “quote_item” table magento 2Magento 2.1 - We can't remove the item. (Shopping Cart doesnt allow us to remove items before becomes empty)Add value for custom quote item attribute using REST apiREST API endpoint v1/carts/cartId/items always returns error messageCorrect way to save entries to databaseHow to remove all associated quote objects of a customer completelyMagento 2 - Save value from custom input field to quote_itemGet quote_item data using quote id and product id filter in Magento 2How to set additional data to quote_item table from controller in Magento 2?What is the purpose of additional_data column in quote_item table in magento2Set Custom Price to Quote item magento2 from controller

                                        How to solve knockout JS error in Magento 2 Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?(Magento2) knockout.js:3012 Uncaught ReferenceError: Unable to process bindingUnable to process binding Knockout.js magento 2Cannot read property `scopeLabel` of undefined on Product Detail PageCan't get Customer Data on frontend in Magento 2Magento2 Order Summary - unable to process bindingKO templates are not loading in Magento 2.1 applicationgetting knockout js error magento 2Product grid not load -— Unable to process binding Knockout.js magento 2Product form not loaded in magento2Uncaught ReferenceError: Unable to process binding “if: function()return (isShowLegend()) ” magento 2

                                        Nissan Patrol Зміст Перше покоління — 4W60 (1951-1960) | Друге покоління — 60 series (1960-1980) | Третє покоління (1980–2002) | Четверте покоління — Y60 (1987–1998) | П'яте покоління — Y61 (1997–2013) | Шосте покоління — Y62 (2010- ) | Посилання | Зноски | Навігаційне менюОфіційний український сайтТест-драйв Nissan Patrol 2010 7-го поколінняNissan PatrolКак мы тестировали Nissan Patrol 2016рвиправивши або дописавши її