4

我正在尝试使用我想使用元标记动态设置标题、描述和图像的 facebook 共享按钮

<meta property="og:title" content="title" />
<meta property="og:description" content="description" />
<meta property="og:image" content="thumbnail_image" />

这是同一个问题: Zend 框架:元属性集成

我已经尝试按照建议做 - 但它不起作用这是我在 layout.phtml 中实现的

<?php
$doctypeHelper = new Zend_View_Helper_Doctype();
$doctypeHelper->doctype('XHTML1_RDFA');
回声 $this->doctype();
?>

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/">
<头部>
<?php echo $this->headMeta();?>
</head>

然后在我看来,我尝试将元属性设置为

<?php $this->headMeta()->setProperty('og:title', '我的文章标题');?>

但是这段代码不会执行,并且在呈现视图时出现错误 - 类似于

传递给 set 的值无效;请使用 setMeta()
C:\webserver\apache\htdocs\dezyre\trunk\library\Zend\View\Helper\HeadMeta.php(164): Zend_View_Helper_HeadMeta->set(Object(stdClass))

任何想法,这里有什么问题感谢您的帮助

4

1 回答 1

7

_isValid() 方法中的视图助手中有一个隐藏的宝藏

// <meta property= ... /> is only supported with doctype RDFa

不幸的是,您将收到的错误消息只是“请使用 setMeta()”。在您的控制器或视图中执行以下操作应该可以解决此问题。

$this->view->doctype('XHTML1_RDFA');  // controller
$this->doctype('XHTML1_RDFA');  // view
于 2012-04-22T19:55:24.273 回答