Sắp xếp theo sản phẩm theo ngày tạo trong EE với SOLR


7

Tôi cần sắp xếp bộ sưu tập sản phẩm theo ngày tạo. Đó là thuộc tính tĩnh trong bảng thực thể sản phẩm. SOLR có thể lập chỉ mục và sắp xếp theo các thuộc tính eav. Một tùy chọn là tạo một thuộc tính mới và ngày sao chép vào sự kiện lưu sản phẩm. Bất cứ một đề nghị nào khác? Ý tưởng cách tốt nhất để thêm dữ liệu tùy chỉnh vào chỉ mục SOLR là gì?

Câu trả lời:


4

Nếu bạn đang đề cập đến sản phẩm created_atupdated_atthuộc tính, thì chỉ cần nhận xét ->addVisibleFilter()trong Lưới Thuộc tính Sản phẩm Danh mục trong quản trị viên và chỉ cần đặt các trường Tìm kiếm và Sắp xếp thành Có và lập chỉ mục lại, bạn sẽ nhận thấy ngày bây giờ trong catalogsearch_fulltextbảng mà Enterprise Solr cũng sẽ nhận ra và thêm dữ liệu vào các bản ghi tài liệu của nó.

LƯU Ý: Đừng quên xóa thay đổi mã lõi hoặc thực hiện thông qua nhóm mã cục bộ rõ ràng nếu bạn muốn.

class Mage_Adminhtml_Block_Catalog_Product_Attribute_Grid extends Mage_Eav_Block_Adminhtml_Attribute_Grid_Abstract
{
    /**
     * Prepare product attributes grid collection object
     *
     * @return Mage_Adminhtml_Block_Catalog_Product_Attribute_Grid
     */
    protected function _prepareCollection()
    {
        $collection = Mage::getResourceModel('catalog/product_attribute_collection');
            //->addVisibleFilter();
        $this->setCollection($collection);

        return parent::_prepareCollection();
    }

Sau này, bạn sẽ muốn cho Solr biết trường siêu dữ liệu có thể sắp xếp của nó.

Doanh nghiệp / Tìm kiếm / Mô hình / Bộ điều hợp / Tóm tắt.php bạn sẽ nhận thấy:

/**
 * Store common Solr metadata fields
 * All fields, that come up from search engine will be filtered by these keys
 *
 * @var array
 */
protected $_usedFields = array('sku', 'visibility', 'in_stock');

Bạn cũng có thể muốn xem qua phương thức: _prepareIndexProductDatatrong

Doanh nghiệp / Tìm kiếm / Mô hình / Bộ điều hợp / Tóm tắt.php

/**
 * Prepare index data for using in search engine metadata.
 * Prepare fields for advanced search, navigation, sorting and fulltext fields for each search weight for
 * quick search and spell.
 *
 * @param array $productIndexData
 * @param int $productId
 * @param int $storeId
 *
 * @return  array|bool
 */
protected function _prepareIndexProductData($productIndexData, $productId, $storeId)

Tôi chỉ kiểm tra khả năng chỉnh sửa các thuộc tính "không nhìn thấy" và xác nhận bổ sung vào bảng fulltext, hiện tại tôi không có Solr chạy cục bộ để kiểm tra nó, nhưng về lý thuyết nên hoạt động mà không cần phải phản chiếu Dữ liệu dự phòng.

Hi vọng điêu nay co ich!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.