我正在使用 RokCandy 宏扩展。此扩展从简单文本创建复杂的 HTML 代码,因此更容易为某些对象提供常规格式。
问题是,在每篇文章的开头,我都有一段让 Facebook OG 工作的代码:
<meta property="og:description" content="'.strip_tags($this->item->introtext).'"/>
好吧,现在的问题是:由于宏在读取打印 META 描述后发挥了作用,因此 HTML 标签不会被删除,因为它们是在之后插入的。所以我在页面头部插入了很多 iframe、对象和表格,使格式变得一团糟。
我已经询问了RokCandy的创作者,但还没有答案。您知道删除所有标签的有效方法吗?
谢谢
我编辑:
我找到了一个糟糕的解决方案(字符串被删除,但代码很乱):
$data= $this->item->introtext;
$new_data = str_replace ("[", "", $data);
然后:
<meta property="og:description" content="'.strip_tags($new_data).'"/>
调整是我删除了 [ 字符,这使得宏起作用。但我无法删除其中的代码(例如:[youtube])。
让它变得更好一点:
$doc =& JFactory::getDocument();
$data= $this->item->introtext;
$bideogabe = str_replace ("[youtube]", "http://youtu.be/", $data);
$bestelakoak = array("[/youtube]", "[", "]");
$new_data = str_replace ($bestelakoak, "", $bideogabe);
然后:
<meta property="og:description" content="'.strip_tags($new_data).'"/>