1

关于如何在 WSYWIG 编辑器上自定义 TinyMCE 面板的教程有一百万个……但这不是我想做的。

我想在帖子编辑视图中添加一个独立按钮,该按钮将进行 API 调用并自动填充页面上的某些字段。到目前为止,我最接近的是钩子simple_edit_formadvanced_edit_form它们都允许我将内容添加到编辑表单的最底部。最好将它添加到“添加媒体”按钮所在的顶部。

这可能吗?

4

1 回答 1

2

有一个动作叫做媒体按钮。以下是基本示例。我从插件重力表单中获取了这个示例,并对其进行了少量更改。祝你好运。

add_action( 'media_buttons', 'add_form_button' );

function add_form_button(){
        $is_post_edit_page = in_array(RG_CURRENT_PAGE, array('post.php', 'page.php', 'page-new.php', 'post-new.php'));
        if(!$is_post_edit_page)
            return;

        // do a version check for the new 3.5 UI
        $version    = get_bloginfo('version');

        if ($version < 3.5) {
            // show button for v 3.4 and below
            $image_btn = GFCommon::get_base_url() . "/images/form-button.png";
            echo '<a href="#TB_inline?width=480&inlineId=select_gravity_form" class="thickbox" id="add_gform" title="' . __("Add Gravity Form", 'gravityforms') . '"><img src="'.$image_btn.'" alt="' . __("Add Gravity Form", 'gravityform') . '" /></a>';
        } else {
            // display button matching new UI
            echo '<style>.gform_media_icon{
                    background:url(' . GFCommon::get_base_url() . '/images/gravity-admin-icon.png) no-repeat top left;
                    display: inline-block;
                    height: 16px;
                    margin: 0 2px 0 0;
                    vertical-align: text-top;
                    width: 16px;
                    }
                    .wp-core-ui a.gform_media_link{
                     padding-left: 0.4em;
                    }
                 </style>
                  <a href="#TB_inline?width=480&inlineId=select_gravity_form" class="thickbox button gform_media_link" id="add_gform" title="' . __("Add Gravity Form", 'gravityforms') . '"><span class="gform_media_icon "></span> ' . __("Add Form", "gravityforms") . '</a>';
        }
    }
于 2013-06-03T13:52:19.627 回答