Ajax dans magento (charge ou produit)bloc de

Ce que je veux réaliser:
En cliquant sur un lien du produit/de l'image (au moins dans certaines régions) pour ouvrir une pop-up avec le plein de produits (essentiellement tout le contenu de la vue du produit page).

Ce que j'ai fait/essayé jusqu'à présent:

  • créé toutes les choses à l'extérieur de l'ajax code php (le module, des liens, des modèles, des réécritures)
  • créé l'ajax contrôleur (qui peut être l'accès par un lien de ce type: http://test.com/index.php/ajaxproductview/ajax/index/id/2 ).
  • de suivre les différents tutoriels ( comme cette ou cette ) - qui m'a aidé à en arriver là. Mais je ne veux pas charger mon bloc personnalisé, je veux que le défaut du produit bloc(s).
  • essayé d'ajouter un peu de code dans le indexAction(). Il y arrive, mais le code ne fonctionne pas. Je ne reçois pas toutes les erreurs/avis/rapports, juste ce qu'il semble comme une boucle infinie qui tue mon processeur.
    $body = $this
        ->getLayout()
        ->createBlock('product.info') //taken from catalog.xml
        ->toHtml();
    $this->getResponse()->setBody($body);

Toutes les autres pages fonctionnent très bien, et c'est un nouveau magento avec seulement magnéto et mon module est installé et activé.

Ma fonction AJAX obtient tout simplement ce code HTML de réponse, le met dans un div, et ouvre un pop-up.

Ma question(s) est(sont) - comment puis-je régler l'id de produit, de sorte que le bloc sait ce produit à charger, et comment puis-je charger ce bloc correctement. J'ai aussi essayé quelque chose de similaire à ceci:

Merci.

PS: j'ai aussi essayé ceci:

    $layout = $this->getLayout();
    $update = $layout->getUpdate();
    $update->load('catalog_product_view');
    $layout->generateXml();
    $layout->generateBlocks();
    $output = $layout->getOutput(); //$output is an empty string

OriginalL'auteur Vlad Preda | 2013-01-18