繁体   English   中英

php-墙上的Facebook帖子,消息包含双引号

[英]php - Facebook post on wall, message containing double quotes

我正在尝试在Facebook墙上张贴以下代码。 该消息有时包含双引号或其他在墙上转换的字符,不知道该如何解决。 以下是我正在使用的代码

更新

$title = get_the_title($post->ID); // using wordpress posts' title

//$title = "John's message has \"\" double quotes"; I thought it might be facebook doing something with the title. but by using raw according to Tim, it worked.

                    $attachment = array(
                        'access_token' => $smm_fb_access_token,
                        'message' => $title,
                        'name' => "Site.com",
                        'link' => $handler_url,
                    );

                    $facebook->api(sprintf('/%s/feed', $fb_id), 'POST', $attachment);

Facebook上的帖子变得像这样

John’s message has ““ double quotes.

请指导我该怎么做才能使其正常工作?

您的代码中没有任何内容可以HTML转义您的$title字符串,因此它已在其他地方转义。

您提供的HTML编码也是“花式引号”,而不是示例$title字符串中的ASCII字符。 (即 not " ),因此,如果有其他东西在转义,它是故意在引用它(例如,WordPress可能会巧妙地这样做)

我建议您发布更多代码,以显示数据访问Facebook SDK时发生了什么

更新

由于这是wordpress,因此必须检索$title字符串而不能转义HTML。 避免get_the_title ,而是使用来获取原始帖子标题

$title = $post->post_title;
// rest of your code.

请注意, Wordpress筛选器不会应用于该字符串,希望这是您想要的。 如果不是您想要的内容,则必须像使用get_the_title ,然后HTML对该字符串进行解码 html_entity_decode对您的情况无济于事,因为PHP无法解码unicode实体。 无论如何,我强烈建议使用前一种方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM