通过jQuery调用提交来发布页面

时间:2012-11-08 作者:INT

我正在寻找一个问题的解决方案,该问题发生在an earlier question.

一般的想法是,我想在post表单上调用submit并发布页面。现在发生的情况是页面重新加载,并显示消息“页面已更新”,但页面未发布,甚至未起草

我创建了一个小演示,可以放到您的functions.php 来测试一下。在演示中,我创建了一个二级发布按钮,您可以使用它来体验问题,这只是为了演示,在the real case 提交是通过ajax调用的

add_action(\'add_meta_boxes\', \'add_metaboxes_pages\', 10, 2);
function add_metaboxes_pages($post_type, $post)
{
    add_meta_box(\'pagesubmitdiv\', \'WPSE_DEMO_META_BOX\', \'page_submit_meta_box\', \'page\', \'advanced\', \'low\');
}

function page_submit_meta_box($post) 
{?>
    <a id="secondary-publish" class="button-primary">Secondary Publish</a><?php
}

add_action( \'admin_head-post.php\', \'wpse_publish_admin_hook\' );
add_action( \'admin_head-post-new.php\', \'wpse_publish_admin_hook\' );
function wpse_publish_admin_hook()
{
    global $current_screen;
    if( \'page\' != $current_screen->post_type )
        return;

    ?>
    <script language="javascript" type="text/javascript">
        jQuery(document).ready(function() {
            jQuery(\'#secondary-publish\').click(function() 
            {
                jQuery(\'#post\').submit();
            });
        });
    </script>
    <?php
}

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

触发click 事件的发布按钮,并让WP做的工作。

<script>
    jQuery(document).ready(function( $ ) {
        $( "#secondary-publish" ).click(function () {
             $( "#publish" ).click()
        });
    });
</script>
不使用language (HTML 4.01中不推荐使用它!)-你可以放弃type 也是(WP现在有一个HTML5 doctype)。

结束

相关推荐

Can't access wp-admin

当尝试登录我的一个WP安装(常规WP 3.4.2-无多站点)时,我一直被重定向到wp-login.php 文件我几乎检查了所有内容:密码正确且已更改。。。没有什么重置为默认主题。。。没有什么已停用所有插件。。。没有什么重新发布了我的wp-login.php 文件没有什么检查.htaccess 文件。。。没有什么wp-config.php 看起来还是一样。删除了我的浏览器数据并使用了其他浏览器。。。还是没什么。通过新的下载安装,完全覆盖了每个WordPress文件。这还能是什么?我没有对代码进行任何升级。