Uncaught TypeError: $template.get is not a function

后端 未结 8 1277
遥遥无期
遥遥无期 2020-12-24 01:28

I am getting this error in WordPress when I am using a plugin called WpBakery Visual Composer.

I am using the latest version of WordPress (4.5), using the latest Go

8条回答
  •  伪装坚强ぢ
    2020-12-24 01:48

    @Sorin Haidau

    Hi guys, I am using the Astra theme. This fix is 99.9 % working. For some tho, this only stops the spinning wheel, but once the page loads visual composer does not.

    I made a slight change to this code (that is posted everywhere by now)

    Original Astra theme code here (composer-view.js)

            html2element:function (html) {
            var attributes = {},
                $template;
            if (_.isString(html)) {
                this.template = _.template(html);
                $template = $(this.template(this.model.toJSON()).trim());
            } else {
                this.template = html;
                $template = html;
            }
            _.each($template.get(0).attributes, function (attr) {
                attributes[attr.name] = attr.value;
            });
            this.$el.attr(attributes).html($template.html());
            this.setContent();
            this.renderContent();
        },
    

    The code that works :

    html2element: function(html) {
        var $template, 
        attributes = {},
        template = html;
        $template = $(template(this.model.toJSON()).trim()), 
         _.each($template.get(0).attributes, function(attr) {
        attributes[attr.name] = attr.value
    }); this.$el.attr(attributes).html($template.html()), this.setContent(), this.renderContent()
    },
    

    The main difference is located here (versus original code)

    }); this.$el.attr
    

    There is a semicolon instead of the original comma :) :

    }), this.$el.attr
    

    Cheers folks :)

    Update : This fixed about 19 out of 20 sites I had with theme astra with the same error as mentioned above... all except one site.

    I had this error after the visual composer finally appeared (missing half of the design elements)

    Uncaught Error: Syntax error, unrecognized expression: .ui-tabs-nav [href=#tab-1415196282-1-8]
    

    I fixed this by updating the line 552 of the composer-custom-views.js :

    $('.ui-tabs-nav [href="#tab-' + params.tab_id + '"]').text(params.title);
    

    And voilà everything now works. Im sorry if it does not work for all themes, do try to use the code mentioned by others above. If that does not work try my solutions :)

提交回复
热议问题