是否为非管理员用户删除了HTMLID?

时间:2013-12-21 作者:Ofer

我有一个自定义功能,可以使用表单上输入的信息创建自定义帖子

部分帖子内容是一行<div id="featuredcocktail">

当我以管理员的身份测试它时,一切都很完美,内容也按照我的要求创建,但一旦我以非登录用户的身份使用该表单,自定义帖子就只创建了<div>.

当我把id改成类时<div class="featuredcocktail"> 它对管理员和未登录用户都很有效。

$my_post = array(
                \'post_title\' => $company_field,
                \'post_type\' => \'bgmp\',              
                \'post_status\' => \'draft\',
                \'comment_status\'  => \'closed\',
                \'ping_status\' => \'closed\',
                \'post_content\' => $content
            );

    $id = wp_insert_post( $my_post );
    $cont   = \'<div id="featuredcocktail">\'. "\\r\\n";
    $cont  .= \'<img src="\'. $attach_data[\'file\'] .\'" alt="\'. $filename .\'" title="\'. $filename .\'" width="\'. $attach_data[\'width\'] .\'" height="\'. $attach_data[\'height\'] .\'" class="alignright size-medium" />\'. "\\r\\n";
    wp_update_post( array(\'ID\' => $id, \'post_content\' => $cont ) ); 
知道我如何使用id吗?

1 个回复
SO网友:Mark Kaplun

最简单的解决方案-将post\\u作者设置为管理员或编辑器用户。

从内容中删除“id”和其他属性和标记的原因是为了防止未经授权的用户注入可能用于“静止”其他用户凭据的内容。现在,您没有明确设置帖子关联的用户,这可能会导致wordpress过滤内容。

结束

相关推荐

If statement for admin page

我该怎么写if 仅当我进入此页面时才显示特定代码的条件:/wordpress/wp-admin/post-new.php?post_type=slideshow 这就是我想要得到的;)感谢Krzysiek!function plu_admin_enqueue($hook) { $screen = get_current_screen(); if ( \'post.php\' == $hook && $screen->post_type == \