Zend Feed с пользовательским пространством имен? - PullRequest
2 голосов
/ 14 июля 2011

Мне трудно создать пользовательскую ленту атомов для моего сайта с помощью класса zend_feed. Вот мой класс FeedController. Сначала я пытался создать собственное пространство имен в $feedArray, но это не сработало. Позже я попытался использовать registerNamespaces, но вывод не такой, как хотелось бы. Помоги мне!

public function indexAction()
{
    Zend_Feed::registerNamespace('mysite','http://dev.mysite.com');
    $feedArray = array (
        'title' =>  'my siteFeed',
        'link'  =>  'http://dev.mysite.com/feed',
        'charset'   =>  'UTF-8',
        'entries'   =>  array(),    
    );

    $deals = new Application_Model_Deal();

    $runningDeals = $deals->getRunning();
    //print_r($runningDeals);
    foreach ($runningDeals as $deal)
    {
        $feedArray['entries'][] = array (
            'title' => $deal['title'],              
            'link'  => 'dev.mysite.com/deals/'. $deal['slug'],
            'description' => $deal['description'],
        );

    }
    $rssFeedFromArray = Zend_Feed::importArray($feedArray, 'atom');
    $rssFeedFromArray->send();
     $entry = new Zend_Feed_Entry_Atom();
     $entry->title = 'my custom entry';
     $entry->link = 'http://dev.mysite.com/feed';
     $entry->charset    =   'UTF-8';
     Zend_Feed::registerNamespace('mysite','http://dev.mysite.com');
     $entry->{'mysite:title'} = 'Deal Title';
             $entry->{'mysite:maxQuantity'} = $deal['max_purchase_individual'];
             $entry->{'mysite:currentQuantity'} = 'qty';
     echo $entry->saveXML();
...