使用jQuery移动后,发布、保存草稿和预览按钮不起作用

时间:2017-02-09 作者:poncho

我正在尝试更改post-new.php 页面,作为这一部分,我希望在表单下方而不是右侧使用“发布”、“保存草稿”和“预览”按钮。

因此,在我的插件js文件中,我使用jQuery。append()将它们移动到位于main下方的自定义中。我正在移动div:#保存操作、#预览操作和#发布操作。

这在布局方面非常有效。然而,现在似乎没有一个按钮能够完成它们的工作。“发布”按钮只是在url中添加一些文本,“预览”按钮只是刷新页面,“保存草稿”按钮什么都不做。我假设我通过移动它们破坏了某些东西,因为我的所有其他样式都与它们的功能相关。

wordpress是否引用了它们所在的或类似的内容来将操作附加到按钮上?

一种修复方法是自己在按钮上调用相关的wp\\u*\\ u()函数,但我似乎在法典中找不到它们。

我想另一个修复方法是移动它们,同时保持wordpress保持功能完整所需的结构。

我是后端插件的新手,所以我可能做错了什么。如果有人能给我指出正确的方向,我将不胜感激。或者帮助我找到相关的wp\\u*\\ u()函数以“重新连接”按钮。

感谢您抽出时间。

2 个回复
SO网友:Marc-Antoine Parent

我很确定有一个选项(每个用户)可以将页面的布局更改为单列,然后移动块以匹配您所需的顺序。此选项位于页面顶部,可从选项卡访问Screen options.

请注意,由于这是基于每个用户,因此您必须手动为每个人进行更改。

EDIT: 由于此解决方案不符合OP的要求,我建议验证$.append() 方法。如文件所述(http://api.jquery.com/append/):

如果以这种方式选择的元素被插入到DOM中其他位置的单个位置,它将被移动到目标中(而不是克隆)。

[…]

Important: 但是,如果有多个目标元素,则将为每个目标(最后一个目标除外)创建插入元素的克隆副本。

克隆意味着之前附加的事件处理程序将不会绑定到新元素上,从而使输入/按钮无用。确保只移动容器以避免元素克隆。

另请参阅此线程,了解如何使用$.detach() 功能:https://stackoverflow.com/a/29462003/7392929

SO网友:user6552940

一种可能的方法是设置默认屏幕选项,如下所述answer.
中提供了“保存”和“发布”按钮submitdiv
由于您只想将它们移动到屏幕底部,请移动submitdiv 从…起sideadvanced 在链接的answer. 您可以使用相同的方法自定义元数据库。我希望这有帮助。

相关推荐

在带有PHP的子主题中包含style.css

在里面https://codex.wordpress.org/Child_Themes 这是包含样式的最佳实践。css在子主题中,必须将下面的代码放入函数中。php的子主题,但将“父样式”替换为可以在函数中找到的父主题的参数。父主题的php。我在我的主题文件中找不到它,那里也没有多少代码。使用@import包含父主题样式表的方法不适用于我,放入文件的css不会在任何浏览器的站点上显示自己。function my_theme_enqueue_styles() { $parent_s