Đặt giá trị mặc định thành thuộc tính tùy chỉnh cho tất cả các sản phẩm


7

Tôi đã tạo các custom attribute (test)sản phẩm dưới dạng trường văn bản với default value('test')từ bảng quản trị

Và gán thuộc tính đó cho tập thuộc tính mặc định.

Bây giờ tôi có thể thấy thuộc tính tùy chỉnh mới trong trang chỉnh sửa sản phẩm.

Khi tôi cố gắng lọc với bộ sưu tập sản phẩm

Mage::getModel('catalog/product')->getCollection()
       ->addAttributeToSelect('*')
       ->addAttributeToFilter('test', array('like' => 'test'))->getData();

Nó trả về mảng trống.

Câu hỏi của tôi là :

Có cách nào để đặt giá trị mặc định thành thuộc tính thông qua tập lệnh cài đặt không?

Tại sao giá trị mặc định không được đặt thành thuộc tính đó?

Có cách nào để thêm các giá trị mặc định cho tất cả các sản phẩm không?. Tôi có hơn 10.000 sản phẩm trong cửa hàng của tôi.

Ghi chú :

Tôi không muốn tải toàn bộ bộ sưu tập sản phẩm và đặt giá trị cho từng sản phẩm.

Câu trả lời:


11

Bạn có thể thử một cái gì đó như thế này. Tôi tin rằng phương pháp dưới đây là khá hiệu quả.

$attrData = array(
    'attribute_code_here'=> 'Default Value Here',
);
$storeId = 0;
$productIds = Mage::getModel('catalog/product')->getCollection()->getAllIds();
Mage::getModel("catalog/product_action")->updateAttributes(
    $productIds, 
    $attrData, 
    $storeId
);

@marius Tôi là một fan hâm mộ lớn. Cảm ơn các upvote :)
NathanielR

Có cách nào để đặt giá trị này trong tập lệnh cài đặt hoặc tệp config.xml không?
saravanavelu

@Marius Tôi đang xây dựng một phần mở rộng mới. Vì vậy, tôi sẽ tạo thuộc tính này thông qua tập lệnh cài đặt. Có thể đặt giá trị mặc định này trong scritp trình cài đặt không?
saravanavelu

@saravanavelu Bạn có thể xem tập lệnh dữ liệu hoặc tạo thuộc tính của mình thông qua trình cài đặt và sau đó chạy đoạn mã dưới dạng tập lệnh độc lập
NathanielR

Trong khi cài đặt mô-đun, cần cập nhật các thuộc tính là điều này có thể mà không có tập lệnh độc lập?
saravanavelu
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.