価格設定ルールが機能しません
-
16-10-2019 - |
質問
私のカタログ価格ルールでは、2つのカテゴリに適用される日々の特別があります。私たちが抱えている問題は、私たちが見るページの上部にあります:
変更されたが適用されなかったルールがあります。カタログの即時効果を確認するには、[ルールを適用]をクリックしてください。
Apply]は非常に長い間実行されます。 PHPの実行とApacheのタイムアウトを拡張したため、500の返品はありませんが、適用ボタンはまったく機能しないように見えます。この問題についてもっと情報があればいいのにと思いますが、system.logまたはexception.logには何も表示されません。
この機能が無期限に吊るされる可能性のあるものについて誰かが洞察を持っているなら、それは大いに感謝されるでしょう。
解決
同じ問題があります。PHPスクリプトを使用して、次のPHPスクリプト(シェルディレクトリに配置)でカタログ価格ルールを適用します。
<?php require_once '../Mage.php'; ini_set('display_errors', 1);
#Varien_Profiler::enable();
Mage::setIsDeveloperMode(true);
umask(0); Mage::app('default');
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
try {
Mage::getModel('catalogrule/rule')->applyAll();
Mage::app()->removeCache('catalog_rules_dirty');
echo Mage::helper('catalogrule')->__('The rules have been applied.');
} catch (Exception $e) {
echo Mage::helper('catalogrule')->__('Unable to apply rules.');
print_r($e);
}
php nameofscript.phpで実行するだけで、ルールが適用されます。
他のヒント
これを追加するだけで、私が遭遇したばかりのものです。
ストアには、たくさんのSKUとカタログの価格ルールがあります。ルールは適用されていませんでした、そして、クロンや過去に問題となった他のものをデバッグした後、私は catalogrule_product_price
そこに何があったかを見るためのテーブル。私は単一のエントリを見ました:
の値に注意してください rule_product_price_id
- 確かに、anの最大値 INT(10)
分野。自動インクリメントをリセットすると、良いはずです。
データベースユーザーがMagentoデータベースにテーブルを作成する特権を確実に持っていることを確認することにより、これの解決策を見つけました。
価格ルールを適用すると、データベースユーザーが許可されていない一時的なテーブルが作成されるようです。
設定は、app/etc/local.xmlにあります
これが誰かの日を救うことを願っています:)
-mpu