从magento中的列表中删除特定订单状态

时间:2010-08-21 06:39:05

标签: magento

我正在使用扩展程序

http://www.magentocommerce.com/magento-connect/eitai2001/extension/1468/order-status/reviews#reviews

提供大量订单状态的magento

但我的需求有限..所以我想从我的订单状态列表中删除一些状态...我该怎么做...请帮忙 谢谢!

被修改  我在 config.xml 中进行了更改 如果我评论任何订单状态......就像这样

<!--<processing_cc_settled translate="label"><label>Processing - Credit Card has been Settled</label></processing_cc_settled>-->

但在组合框中(状态显示在管理网站中)仍然 processing_cc_settled 出现在处理 - 信用卡已结算的同一位置,在评论之前显示

2 个答案:

答案 0 :(得分:1)

如果这是我见过安装过一个客户端站点的扩展名,那么它的/ etc子目录中应该包含一个config.xml文件(注意:不是全局/ app / etc但是somwhere在/ app / code / community /文件夹中)。在此文件中,您将找到所有其他状态的定义。只要注释掉你不想要的那些。您也可以更改您留下的那些,以便它们更适合您的需求。

<强>澄清:

这是我的config.xml的一部分:

<config>
    <modules>
        <Mage_Sales_Community>
            <version>0.1.2</version>
        </Mage_Sales_Community>
    </modules>
    <global>
        <sales>
            <order>
                <statuses>
                    <!--Complete Status Descriptions-->
                    <complete translate="label"><label>Dispatched</label></complete>
                    <!--Cancelled Status Descriptions-->
                    <canceled translate="label"><label>Suspended</label></canceled>
                    <!--<canceled_discontinued translate="label"><label>Suspended - No stock</label></canceled_discontinued> -->
                    <!-- /* Additional custom statuses will go here */ -->
                    <!-- Format of a status description is <name_of_status translate="label"><label>Name of Status</label?</name_of_status> -->
                </statuses>
            </order>
        </sales>
    </global>
</config>

请注意,已完成和已取消已定义不同的标签。还有一个cancel_discontinued状态,但它没有被使用,因为整个条目被注释掉了。如果在您评论后该条目保留在订单评论下拉列表中,请确保您已刷新缓存...

答案 1 :(得分:0)

我使用以下内容添加/删除安装脚本中的magento状态:

<?php
$installer = $this;

/*
Possible states:

Mage_Sales_Model_Order::STATE_CANCELED
Mage_Sales_Model_Order::STATE_CLOSED
Mage_Sales_Model_Order::STATE_COMPLETE
Mage_Sales_Model_Order::STATE_HOLDED
Mage_Sales_Model_Order::STATE_NEW
Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW
Mage_Sales_Model_Order::STATE_PENDING_PAYMENT
Mage_Sales_Model_Order::STATE_PROCESSING         
*/

$installer->startSetup();

// Get status model
$status = Mage::getModel('sales/order_status');


// Delete some statuses
$status->setStatus('processing_cc_settled')->delete();
$status->setStatus('another_status_code_to_delete')->delete();


//Add a new status
$status->setStatus('holded_cc_error')
       ->setLabel('On Hold: CC Error')
       ->assignState(Mage_Sales_Model_Order::STATE_HOLDED) 
//for example, use any available existing state from above
       ->save();

//To set an order to this status:
//$order->setData('state', "holded");
//$order->setStatus("holded_cc_error");
//$order->save();

$installer->endSetup();