我正在寻找一种方法将小部件控制区域集成到页面编辑屏幕中.对于我正在制作的网站,它具有相同的拖放功能.
我想要一个可以拖放到页面小部件区域的可用小部件列表.然后,小部件将仅显示在该特定页面上.
我查看了wp-admin/widgets.php文件,并尝试使用那里的一些代码.我甚至尝试在post.php的末尾包含widgets.php(这基本上就是我想要的,但当然给了我有趣的结果).请不要建议像Widget Context或Widget Logic这样的插件.如果我不能这样做,那些是我的后备:)
所以我想了解如何实现这一点的想法和/或输入.我想在functions.php文件或插件中这样做.
编辑:我仍然对此感兴趣.只是关于如何做到这一点的理论描述会很棒:)
有人知道从页面编辑屏幕中删除主编辑器的方法吗?而不只是与CSS.我添加了一些带有tinymce的其他元框,它们与主要元素碰撞.
我有一个类从编辑屏幕中删除其他元框,但我不能这样摆脱主编辑器.我试图将'divpostrich'和'divpost'添加到类中的数组中(但没有运气):
class removeMetas{
public function __construct(){
add_action('do_meta_boxes', array($this, 'removeMetaBoxes'), 10, 3);
}
public function removeMetaBoxes($type, $context, $post){
/**
* usages
* remove_meta_box($id, $page, $context)
* add_meta_box($id, $title, $callback, $page, $context = 'advanced', $priority = 'default')
*/
$boxes = array( 'slugdiv', 'postexcerpt', 'passworddiv', 'categorydiv',
'tagsdiv', 'trackbacksdiv', 'commentstatusdiv', 'commentsdiv',
'authordiv', 'postcustom');
foreach ($boxes as $box){
foreach (array('link', 'post', 'page') as $page){
foreach (array('normal', 'advanced', 'side') as $context){
remove_meta_box($box, $type, $context);
}
}
}
}
}
$removeMetas = new removeMetas();
Run Code Online (Sandbox Code Playgroud)
我也尝试用jquery删除'divpostrich'.但是无法弄清楚将js放在哪里工作.当我用firebug删除浏览器中的'postdivrich'时 - …