print_media_temsheet không được áp dụng trong plugin quản lý phương tiện


7

Tôi đang cố gắng xây dựng thư viện phương tiện nơi người dùng có thể chọn ảnh đang được truy xuất từ ​​các thư mục tùy chỉnh mà họ có thể chỉ định cơ sở dữ liệu. Tôi đang lấy lại hình ảnh chính xác, nhưng mẫu được chỉ định không được áp dụng cho hình thu nhỏ. Nó không tìm thấy chú thích (xem thanh bên khi img được chọn)

hình ảnh từ thư mục 2013_accs

Thay vì áp dụng mẫu mong muốn, nó nói

<div class="filename"><div></div></div>

nhập mô tả hình ảnh ở đây

Tôi thực sự thậm chí không cần một mẫu tùy chỉnh, tôi rất vui khi hình ảnh hiển thị như trong thư viện tiêu chuẩn, nhưng dường như tôi không thể có được kết quả chính xác.

Trong tập tin media-library-manager.js tôi có cái này

var MfmView = Backbone.View.extend({
    tagName: "li",
    className: "mfmimage attachment",
    template: wp.media.template('mfmimage'),
    render: function(){
        this.$el.html(this.template(this.model.toJSON()));
        return this;
    }
});

Và trong media-thư mục-manager.php có

public function print_media_templates() {
    if(!$_POST['id']){
        $this->printInit();
    }

    ?>

    <script type="text/html" id="tmpl-mfmimage">
        <p class="test"></p>

        <img id="{{ data.id }}" class="<# if ( typeof(data.folder) !== 'undefined' ) { #>folder<# } else { #>image<# } #>" src="{{ data.thumbnail }}" alt="{{ data.caption }}" title="{{ data.caption }}" data-full="{{ data.full }}" data-link="{{ data.link }}" />
        <# if ( typeof(data.folder) !== 'undefined' ) { #>
        <p>{{ data.caption }}</p>
        <# } #>
        <a class="check" id="check-link-{{ data.id }}" href="#" title="Deselect"><div id="check-{{ data.id }}" class="media-modal-icon"></div></a>

    </script>

    <?php

}

Mục tiêu là giữ chức năng WP (hình ảnh nổi bật, tạo thư viện, chèn vào trang / bài đăng), nhưng với cấu trúc thư mục có cấu trúc chặt chẽ hơn (vì khách hàng đã sẵn sàng có cấu trúc thư viện hình ảnh hoàn chỉnh).

Các bước tiếp theo sẽ là:

  • khi tập tin được kéo vào cửa sổ, phải được tải lên thư mục đang mở
  • tạo / xóa thư mục (với các đặc quyền theo vai trò người dùng)
  • kéo img sang thư mục khác (tùy chọn)

Tôi hy vọng ai đó có thể giúp tôi giải quyết vấn đề này, tôi chưa quen với Backbone.js.

Cảm ơn bạn trước!


Trong trường hợp bất cứ ai cũng thắc mắc về if (! $ _ POST ['id']) {$ this-> printInit (); } trong print_media_temsheet, tôi đã xóa nó ngay bây giờ, vì vậy điều này không thể giữ mẫu được lấy đúng cách ...
Anneke

Câu trả lời:


1

Ok tôi đã tìm ra một số điều bây giờ: Tôi đã không trả lại hình ảnh được hiển thị vào bất cứ điều gì

Trong javascript tôi có chức năng kết xuất

media.view.AttachmentsBrowser = media.view.AttachmentsBrowser.extend({
        render: function(){
            var that = this;
            if(this.collection){
                if(this.collection.models.length > 0){
                    this.clearImages();
                    _.each(this.collection.models, function (item){
                        //old way: that.renderImage(item);
                        //now:
                        this.$el.find('#lastli').before(that.renderImage(item));
                    }, this);
                }
            }
        }
});

Rõ ràng hình ảnh của tôi không hiển thị ...

Nhưng vì tôi không thực sự cần một mẫu, tôi đã xóa mã này, do đó, tmpl tiêu chuẩn được thực hiện.

Nhiệm vụ của tôi vẫn tiếp tục, hiện tại tôi đang gặp rắc rối với việc điền đối tượng dữ liệu được sử dụng trong mẫu phương tiện, nhưng tôi sẽ đăng một câu hỏi khác cho vấn đề này, vì đó là một vấn đề khác. Trong trường hợp quan tâm, bạn có thể tìm thấy câu hỏi ở đây: mô hình dữ liệu mẫu phương tiện đính kèm (data.size.url)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.