如何清理我的曲奇名称

时间:2018-03-13 作者:Paulo Gabriel

伙计们!提交重力表单后,我正在设置cookie。名称基于当前页面,因此具有此表单的每个页面都有自己的cookie。某些URL以/324234-2结尾的页面不会设置cookie并返回错误消息(Warning: Cookie names cannot contain any of the following \'=,; \\t\\r\\n\\013\\014), 而其他名字比较固定的人会。我正在尝试清理此cookie名称,以便不会出现任何错误。

这是我的职责:

add_action( \'gform_after_submission_6\', \'contentCookie\', 10, 2);
function contentCookie($entry, $form) {
    $from_page = rgar( $entry, \'6\' );
    setcookie( \'unrestrict_\'.$from_page, 1, strtotime( \'+30 days\' ), COOKIEPATH, COOKIE_DOMAIN, false, false);
};
如何清理cookie名称?非常感谢。

1 个回复
最合适的回答,由SO网友:David Sword 整理而成

假设$from_page 是字符串值,而不是数组或对象,sanitize_key() 应该做到这一点,它只允许a-z0-9_- 我相信是用于permalink的。

$cookiename = sanitize_key( \'unrestrict_\'.$from_page );
setcookie( cookiename, 1 ...
有一大堆wordpress清理功能,reference available in the docs.

结束