将新图像添加到现有图库顶部,而不是底部

时间:2015-01-08 作者:Janis Krievins

我有现有的wordpress库。当我向其中添加新图像时,它们会自动添加到gallery的底部,但我希望将它们作为gallery中的第一个图像放在顶部。当然,我可以手动将它们拖放到顶部,但如果你有一个大型图库并添加大约30个新图像,这并不容易。

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

以下是链接解决方案的一个版本,可以覆盖galleryAddToolbar 有一个额外的按钮(insertTop) 要想做你想做的事情(在“functions.php”中):

add_filter( \'media_view_strings\', function ( $strings, $post ) {
    $strings[\'addToGallery\'] = __( \'Add to end of gallery\' );
    $strings[\'addToGalleryTop\'] = __( \'Add to start of gallery\' );
    return $strings;
}, 10, 2 );

add_action( \'admin_footer\' , function () {
    ?>
    <script>
    jQuery(document).ready(function() {
        (function ($) {
            if (typeof wp.media !== \'undefined\') {
                wp.media.view.MediaFrame.Post.prototype.galleryAddToolbar = function () {
                    var media = wp.media, l10n = media.view.l10n;
                    this.toolbar.set( new media.view.Toolbar({
                        controller: this,
                        items: {
                            insert: {
                                style:    \'secondary\',
                                text:     l10n.addToGallery,
                                priority: 70,
                                requires: { selection: true },

                                /**
                                 * @fires wp.media.controller.State#reset
                                 */
                                click: function() {
                                    var controller = this.controller,
                                        state = controller.state(),
                                        edit = controller.state(\'gallery-edit\');

                                    edit.get(\'library\').add( state.get(\'selection\').models );
                                    state.trigger(\'reset\');
                                    controller.setState(\'gallery-edit\');
                                }
                            },
                            insertTop: {
                                style:    \'primary\',
                                text:     l10n.addToGalleryTop,
                                priority: 80,
                                requires: { selection: true },

                                /**
                                 * @fires wp.media.controller.State#reset
                                 */
                                click: function() {
                                    var controller = this.controller,
                                        state = controller.state(),
                                        edit = controller.state(\'gallery-edit\');

                                    edit.get(\'library\').unshift( state.get(\'selection\').models );
                                    state.trigger(\'reset\');
                                    controller.setState(\'gallery-edit\');
                                }
                            }
                        }
                    }) );
                };
            }
        })(jQuery);
    });
    </script>
    <?php
} );

SO网友:Cy Lina

这对我的一个客户项目帮助很大!但随着Wordpress 4.4的更新,“添加到Gallery的开始”按钮消失了。

我发现按钮所在的div在更新后变为33%的宽度。您可以将宽度更改为100%,按钮将重新出现。课程为“.media-modal-content .media-toolbar-primary.search-form“在media-views-rtl.min.cs可在wp includes>css中找到

我希望这能帮助其他发现修复有价值的人。

结束

相关推荐

Gallery thumbnails very small

当我使用标准WordPress图库时,我会在内容中获得非常小的缩略图:由于内容中有很多空间,我想显示更大的图像。我该怎么做?主题中没有添加特定的库代码。