Khi chúng ta update WordPress lên bản 4.5 thì plugin Visual Composer (VC) sẽ bị lỗi Uncaught TypeError: $template.get is not a function . Sau đây là cách fix lỗi cho các bạn dev tiếp tục sử dụng VC nhé 😀
Chúng ta sẽ cập nhật lại hàm html2element trong file /wp-content/plugins/js_composer/assets/js/backend/composer-view.js (với phiên bản <4.8) hoặc trong file wp-content/plugins/js_composer/assets/js/dist/backend-actions.min.js (Với phiên bản >4.9)
Chúng ta tìm đến hàm
Để duy trì blog nên mình có làm aff cho 1 số bên hosting. Nhưng dù aff mình cũng chọn 1 số nhà cung cấp uy tín về chất lượng và support nên các bạn cứ yên tâm nhé.
Nếu có mua hosting mà có trong list dưới đây các bạn click vào link trước khi mua để ủng hộ mình nhé. Mình cảm ơn nhiều
- Azdigi: Giá rẻ thì dùng gói Pro Gold Hosting còn chất lượng hơn thì em khuyên dùng Business Hosting. Có điều kiện thì lên VPS nhé
- Tino hosting
- iNet
- Nước ngoài thì Vultr
html2element: function(html) { var $template, attributes = {}; _.isString(html) ? (this.template = _.template(html), $template = $(this.template(this.model.toJSON(), vc.templateOptions["default"]).trim())) : (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() },
Sau đó thay thế bằng hàm sau:
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() },
Lưu lại rồi vào backend F5 đi bạn 😀
Code trong Gist:
Chúc bạn thành công ^^
- Bình luận