我有一系列类别,其中一些有&即事件和娱乐。
我的脚本导入这些类别,并使用其名称获取每个类别的ID。
即:$cat_id = array(get_cat_id($linearray[0]),get_cat_id($linearray[1]),get_cat_id($linearray[2]),get_cat_id($linearray[3]));
然后我的脚本使用这些类别ID向wp添加帖子。
我的问题是我导入的类别与&不是进口的。
这些相同的类别(发送电子邮件通知时)会中断&的电子邮件。
有一个简单的解决方法吗?
答案 0 :(得分:0)
当您撰写帖子时,您可以在&
处写&
而不是&
,而不会出现任何问题。
您也可以使用str_replace
函数将其转换为&
,例如:
$new_text = str_replace('&', '&', $your_string);
答案 1 :(得分:0)
我认为在某些情况下,我对Wordpress使用了自己的自定义慢行功能:
function sluggify($text) {
$text = strtolower(htmlentities($text));
$text = str_replace("&", "and", $text);
$text = str_replace("andamp;", "and", $text);
$text = str_replace(get_html_translation_table(), "-", $text);
$text = str_replace(" ", "-", $text);
$text = preg_replace("/[-]+/i", "-", $text);
return $text;
}
请注意两条重复的行:
$text = str_replace("&", "and", $text);
$text = str_replace("andamp;", "and", $text);
尽管重复,但这是非常必要的!
对于下面的无知评论者-这是一个可重用的函数,您可以在其中传递任何字符串值,并且该函数会被使用。因此,适用于上述情况。
答案 2 :(得分:0)
有一个 WP 内置函数:
$new_text = wp_specialchars_decode($your_string);
<块引用>
将许多 HTML 实体转换为它们的特殊字符。 具体处理:&、<、>、"和'.