我正在尝试使用facebook分享按钮,我想使用元标记动态设置标题,描述和图像
<meta property="og:title" content="title" /> <meta property="og:description" content="description" /> <meta property="og:image" content="thumbnail_image" />
这是同一个问题: Zend framework: Meta property integration
我已经尝试过做的建议 - 但它不起作用 这就是我在layout.phtml中实现的内容
<?php $doctypeHelper = new Zend_View_Helper_Doctype(); $doctypeHelper->doctype('XHTML1_RDFA'); echo $this->doctype(); ?> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/"> <head> <?php echo $this->headMeta();?> </head>
然后在我的观点中,我尝试将元属性设置为
<?php $this->headMeta()->setProperty('og:title', 'my article title');?>
但是这段代码不会执行,而且我在呈现视图时会出现错误 -
Invalid value passed to set; please use setMeta() C:\webserver\apache\htdocs\dezyre\trunk\library\Zend\View\Helper\HeadMeta.php(164): Zend_View_Helper_HeadMeta->set(Object(stdClass))
任何想法,这里有什么不对 谢谢你的帮助
答案 0 :(得分:7)
_isValid()方法中的视图助手中有一个隐藏的宝藏
// <meta property= ... /> is only supported with doctype RDFa
不幸的是,您将获得的错误消息只是“请使用setMeta()”。您可以在控制器或视图中执行以下操作来解决此问题。
$this->view->doctype('XHTML1_RDFA'); // controller
$this->doctype('XHTML1_RDFA'); // view