如何在zend for facebook共享中动态设置打开的图元标记

时间:2016-02-03 19:29:49

标签: php facebook zend-framework zend-framework2 og-meta

我想动态设置开放图元标记,以便可以从控制器或视图中完成。我尝试了很多在搜索过程中得到的东西,但是没有成功。以下是我已经尝试过的解决方案:

我在Module.php的onBootstrap方法中写了以下几行

    $doctypeHelper = new Doctype();
    $doctypeHelper->setDoctype('XHTML1_RDFA');

然后在视图的index.phtml中,我尝试通过编写以下代码行来设置描述元标记。

    <script>
    <?php echo $this->doctype('XHTML1_RDFA'); ?>
    <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:og="http://opengraphprotocol.org/schema/">
    <head>
    <meta property="og:description" content="musician" />
    </script>

我也试过这个解决方案,我在控制器中编写了以下代码行。

    $renderer = $this->getServiceLocator()->get('Zend\View\Renderer\PhpRenderer');  
    $renderer->headMeta()->appendName('og:description', 'pimcore is great'); 

有什么方法可以动态设置开放图元标记?我必须设置这些元标记“og:url”,“og:title”,“og:image”,“og:description”。

1 个答案:

答案 0 :(得分:1)

HeadMeta助手http://framework.zend.com/manual/current/en/modules/zend.view.helpers.head-meta.html

肯定会奏效。看一下该页面上的最后一个例子:

$this->doctype(Zend\View\Helper\Doctype::XHTML1_RDFA);
$this->headMeta()->setProperty('og:title', 'my article title');
$this->headMeta()->setProperty('og:type', 'article');