Magento - 以编程方式禁用自动索引 [英] Magento - Programmatically Disable Automatic Indexing

查看:34
本文介绍了Magento - 以编程方式禁用自动索引的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 Magento 1.9 Enterprise(本质上是 1.4 社区版)中,以编程方式禁用索引以使其不会在每次产品更新后重新索引的正确方法是什么?

In Magento 1.9 Enterprise (which is essentially the 1.4 Community Edition), what is the correct way to disable the index programmatically so that it wont reindex after every product update?

我们有一个复杂的产品导入程序,所以我们不能使用内置的目录导入.

We have a complex product import procedure, so we can't use the built-in catalog import.

推荐答案

将索引器设置为手动"模式将阻止它在保存/编辑/删除时自动索引.

Setting the indexer to "manual" mode will prevent it from automatically indexing on save/edit/delete.

在 MAGE_ROOT/shell 中,您可以找到一个名为 indexer.php 的脚本,它允许您启用/禁用索引器:

In MAGE_ROOT/shell you can find a script called indexer.php that, between others allows you to enable/disable indexers:

php indexer.php --mode-manual catalog_url
php indexer.php --mode-realtime catalog_url

您可以有一个脚本将所有索引器设置为手动

You can have a script that sets all the indexers to manual

如果您想以编程方式执行此操作,则应该按照以下方式进行操作:

If you want to do it programatically, something along the lines should work:

$pCollection = Mage::getSingleton('index/indexer')->getProcessesCollection(); 
foreach ($pCollection as $process) {
  $process->setMode(Mage_Index_Model_Process::MODE_MANUAL)->save();
  //$process->setMode(Mage_Index_Model_Process::MODE_REAL_TIME)->save();
}

这篇关于Magento - 以编程方式禁用自动索引的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆