2010-04-03 3 views
1

Я использую magento и встроен в функциональность для добавления продуктов на базу google. Я хотел бы изменить его так, чтобы он использовал краткое описание в качестве описания в базе Google. В отличие от подробного описания.Magento - Используйте краткое описание для описания базы Google

ответ

1

В соответствии с this Screencast вы должны установить атрибуты атрибутов атрибутов. Разве это не работает для вас?

Глядя глубже, я не имею аккаунта Google Base, поэтому я не могу проверить это, НО, когда я ищу через модуль Google Base это выглядит, как это там, где это захватывая описание

app/code/core/Mage/GoogleBase/Model/Service/Item.php  
protected function _setUniversalData() 
{ 
    //... 
    if ($object->getDescription()) { 
     $content = $service->newContent()->setText($object->getDescription()); 
     $entry->setContent($content); 
    } 
    //... 
} 

Мой общий подход здесь должен был бы создать переопределение для _setUniversalData метода на Mage_GoogleBase_Model_Service_Item класса, который выглядит как этот

protected function _setUniversalData() 
{ 
    parent::_setUniversalData(); 

    //your code to parse through this object, find the long desription, 
    //and replace with the short. The following is pseudo code and just 
    //a guess at what would work 
    $service = $this->getService(); 
    $object = $this->getObject(); 
    $entry = $this->getEntry();  

    $new_text = $object->getShortDescription(); //not sure on getter method 
    $content = $service->newContent()->setText($new_text); 
    $entry->setContent($content); 

    return $this; 
} 

удачи!

+0

сопоставления кажутся не для атрибутов по умолчанию. Описание, по-видимому, жестко закодировано, но я не могу найти, где. – a1anm

+0

Обновите ответ с дополнительной информацией. Удачи! –

1

Разобрался все, что я должен был сделать изменения:

if ($object->getDescription()) { 
    $content = $service->newContent()->setText($object->getDescription()); 
    $entry->setContent($content); 
} 

в

if ($object->getDescription()) { 
    $content = $service->newContent()->setText($object->getShortDescription()); 
    $entry->setContent($content); 
} 

в приложение/код/​​ядро ​​/ Mage/GoogleBase/модель/Услуги/Item.php

0

В итоге я получил модуль для работы и смог исправить все ошибки.

я соединял короткий шаг за шагом руководство о том, как настроить канал Magento Google Base, в том числе настройки учетной записи, добавив атрибут & атрибуты отображения условий и их публикации здесь http://blog.pod1.com/e-commerce/magento-google-base-feed/

0

Magento 1.7.0.2 Google Магазины 1.7.0.0

app/code/core/Mage/GoogleShopping/Model/Attribute/Content.php 

Изменить $description = $this->getGroupAttributeDescription();

В $description = $this->getGroupAttributeShortDescription();

Смежные вопросы