自定义媒体上传内容,用于插入自定义帖子简码


12

我正在使用一个可创建自定义帖子类型“投资组合”以及可插入任何页面或帖子的简码的插件。

简码是: [portfolio option1=“1” option2=“0” option3=“1” ]

而且效果很好,它通过custom显示所有自定义帖子WP_query。但我想走得更远。

在旁边upload media生成一个自定义按钮以生成投资组合短代码输出,用户可以在其中选择要包括的帖子并定义所有选项。因此输出为:[portfolio option1=“1” option2=“0” option3=“1” ids=“12,311,432,443,” ]

这是我在wp的media.php中找到的按钮的代码:

add_action( 'media_buttons', array( $this, 'media_buttons' ) );

public function media_buttons($editor_id = 'content') {
    $post = get_post();
    if ( ! $post && ! empty( $GLOBALS['post_ID'] ) )
        $post = $GLOBALS['post_ID'];

    wp_enqueue_media( array(
        'post' => $post
        ) );
    $img = '<span class="wp-media-buttons-icon"></span> ';

    echo '<a href="#" id="insert-media-button" class="button insert-media add_media" data-editor="' . esc_attr( $editor_id ) . '" title="' . esc_attr__( 'Add Portfolio' ) . '">' . $img . __( 'Add Portfolio' ) . '</a>';
}

它会做什么。但是,现在,修改已创建窗口内容的最佳方法是什么?这是我的看法,最好是任何描述:

在此处输入图片说明 这将有多么复杂和棘手?我不知道我应该朝哪个方向前进,那可能吗?请提出任何建议,从哪里开始寻找解决方案。

PS:或者也许我一开始错了,应该考虑使用ThickBox?但我想保持媒体上载弹出窗口的本机外观。

干杯!

编辑:

好吧,也许更好的解决方案是使用本机库短代码模式。正如在此举例说明的,在媒体上载窗口中添加新菜单项并不难。

所以最终的愿景是这样的:

在此处输入图片说明 在此处输入图片说明

我相信必须使用Backbone.js完成它吗?但是主要的问题是,它可以操纵自定义帖子而不是图像吗?


1
我认为使用媒体编辑器管理自定义帖子可能不是一个好主意。您是否可以使用现有的简码和媒体编辑器管理来创建一个名为“ portfolio”的新附件mime类型并创建作品集画廊?
Fabien Quatravaux 2014年

感谢@FabienQuatravaux,我不确定我是否知道该如何工作,但是我现在将朝这个方向进行调查,您能推荐一些阅读方法吗?
Nikita 2014年

自定义帖子类型的确切用途是什么?您是否仅使用自定义帖子类型,因为它在管理区域中插入了正确的菜单?您如何将图像链接到投资组合帖子(如屏幕截图所示)?
Fabien Quatravaux 2014年

我在Twikin插件中使用了自定义附件mime类型,但是我不确定它与您的用例是否完全相关。
Fabien Quatravaux 2014年

Answers:


1

在此处输入图片说明

在这里查看我的指南-http: //www.wpexplorer.com/wordpress-tinymce-tweaks/-这样您就可以看到如何创建一个弹出窗口,您可以在其中选择选项而不是插入简码。如果您下载了我的免费Symple Shortcodes插件,则也可以看到实时实施。

无需让用户选择要插入的帖子,而是将类别分类法添加到您的投资组合中,以便用户可以将项目分类。然后,您可以在弹出窗口中有一个简单的下拉菜单,供用户选择从中提取帖子的类别。

最终用户将来可以更轻松地进行管理,因为他们只需将其帖子添加到类别中,并且简码将自动显示它们,而无需手动更新简码以包括新帖子。

  • AJ
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.