protected function _toHtml() { $html = parent::_toHtml(); if (Mage::registry('current_product') && Mage::getStoreConfig('mageworx_seo/seosuite/product_og_enabled')) { $product = Mage::registry('current_product'); $product = Mage::getModel('catalog/product')->load($product->getId()); $doubleQuoteTitle = '"'; $doubleQuoteDescr = '"'; $descr = strip_tags($product->getShortDescription() ? $product->getShortDescription() : $product->getDescription()); $title = strip_tags($product->getName()); if (strpos($title, $doubleQuoteTitle) !== false) { $doubleQuoteTitle = "'"; } elseif (strpos($descr, $doubleQuoteDescr) !== false) { $doubleQuoteDescr = "'"; } $ogs = "<meta property=\"og:title\" content={$doubleQuoteTitle}" . $title . "{$doubleQuoteTitle}/>\n<meta property=\"og:description\" content={$doubleQuoteDescr}" . $descr . "{$doubleQuoteDescr}/>\n<meta property=\"og:url\" content=\"" . $product->getProductUrl() . "\"/>\n"; $ogs .= "<meta property=\"og:type\" content=\"product\"/>\n"; $gallery = $product->getMediaGallery(); if (isset($gallery['images'])) { foreach ($gallery['images'] as $_image) { $ogs .= "<meta property=\"og:image\" content=\"" . Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . 'catalog/product' . $_image['file'] . "\"/>\n"; } } $pos = strpos($html, 'xmlns:fb="http://www.facebook.com/2008/fbml'); if ($pos === false) { $html = str_replace("<html", '<html xmlns:fb="http://www.facebook.com/2008/fbml"', $html); } $pos = strpos($html, ' prefix="og: http://ogp.me/ns#"'); if ($pos === false) { $html = str_replace("<html", '<html prefix="og: http://ogp.me/ns#"', $html); } $html = str_replace("<head>", "<head>\n" . $ogs, $html); } return $html; }
/** * Render the page html * Renders all placeholders inside the page. * * @return string */ protected function _toHtml() { if (!Mage::getStoreConfig('design/aoe_templateimport/enabled')) { return parent::_toHtml(); } $fullActionName = $this->getFullActionName(); $storeId = Mage::app()->getStore()->getId(); $origin = Mage::getModel('aoe_templateimport/origin'); /* @var $origin Aoe_TemplateImport_Model_Origin */ $origin->loadByFullActionNameAndStore($fullActionName, $storeId); if (!$origin->getId()) { Mage::log('[Aoe_TemplateImport] No configuration found for: ' . $fullActionName . ' in store ' . $storeId, Zend_Log::ERR); if (Mage::getIsDeveloperMode()) { return '[no config found for "' . $fullActionName . ' in store ' . $storeId . '"]'; } else { return ''; } } $source = $origin->getSource(); if (empty($source)) { $origin->refresh(); $source = $origin->getSource(); if (empty($source)) { Mage::log('[Aoe_TemplateImport] Error retrieving source for: ' . $fullActionName . ' in store ' . $storeId, Zend_Log::ERR); if (Mage::getIsDeveloperMode()) { return '[no content found for "' . $fullActionName . ' in store ' . $storeId . '"]'; } else { return ''; } } } $sourceHelper = Mage::helper('aoe_templateimport/source'); /* @var $sourceHelper Aoe_TemplateImport_Helper_Source */ $source = $sourceHelper->injectChildBlocks($source, $this); return $source; }