Magento製品コレクションからソート順配列を読み取る賢い方法を知っている人はいますか? オブジェクトには保護されたプロパティ_orders
があります。私はそれを超えて到達することができました
$collection->getSelect()->getPart('order')
しかし、その後、文字列の解析を行う必要があります。製品コレクションからソート順情報を取得する何らかの公開メソッドがあることを望んでいましたか?
Magento製品コレクションからソート順配列を読み取る賢い方法を知っている人はいますか? オブジェクトには保護されたプロパティ_orders
があります。私はそれを超えて到達することができました
$collection->getSelect()->getPart('order')
しかし、その後、文字列の解析を行う必要があります。製品コレクションからソート順情報を取得する何らかの公開メソッドがあることを望んでいましたか?
使用できますReflection
:
$property = new ReflectionProperty(get_class($collection), '_orders');
$property->setAccessible(true);
$orders = $property->getValue($collection);
$field.' '.Varien_Data_Collection::SORT_ORDER_(ASC|DESC)
ただし、順序値は文字列 ( )に格納されるため、文字列の解析を避けることはできません。
ツールバー付きの製品コレクションの場合、ツールバーに現在の並べ替え順序を問い合わせることができます。
Mage::getBlockSingleton('catalog/product_list_toolbar')->getCurrentOrder()