Подтвердить что ты не робот

Визуальный композитор не загружается и дает TypeError: _.template(...). Trim не является функцией

Мой плагин визуального композитора не работает. Он застрял на странице загрузки. И это выдает ошибку "TypeError:.template(...). Trim не является функцией" Ошибка в этой строке кода: this. $ Controls = $ (. Template (template, data, vc.template_options).trim()) addClass ( 'vc_controls').

Пожалуйста, помогите мне исправить это.

Вот ошибка, которую я получаю:

screenshot

4b9b3361

Ответ 1

В этой статье предлагается отменить вашу версию worpress до 4.5. http://forums.artbees.net/t/urgent-wordpress-4-5-broken-vc-backend-editor-workaround-fix-in-comments/2734

Здесь вы можете найти более старые версии wp для установки https://wordpress.org/download/release-archive/30

Я не пробовал это сам, просто предложение.

Если это все еще проблема для вас, я решил ту же ошибку, которую я получал, вручную обновляя мою тему через ftp. Я загрузил последнюю версию темы, потому что автоматические обновления не работали. Я сохранил версию Wordpress 4.5. Вот шаги, которые я сделал следующим образом.

  • Я переименовал пример темы x-update после загрузки именовал текущую тему x-previous, а затем изменил x-update на x и удалил x-previous.
  • Я обновил js_composer так же, как шаг 1. Загрузила последнюю версию js_composer, которая была связана с темой. Это обновляется в плагинах вне темы. На этом этапе вы сможете обновить визуальный композитор с панели инструментов wp, если он еще не был.
  • Это снова активировало vc, но оставило меня с некоторыми странными ошибками, происходящими в файле vc_templates vc_column.php. Мне пришлось вручную прокомментировать код неисправности, чтобы убрать ошибки.

Эти три шага немного нервничают, если вы не знакомы с загрузкой файлов непосредственно в свой общедоступный каталог public_html вашего сайта. Некоторые темы могут предлагать поддержку и выполнять загрузку ftp для вас, если вы предоставите им пароль пользователя ftp.

Еще одна вещь, которую нужно сделать - это очистить свой кеш для вашего сайта. В chrome вы можете очистить кеш, перейдя в chrome://settings/cookie введите веб-сайт в строке поиска и нажмите "Удалить все очищающие все локально сохраненные данные для вашего сайта". Ручное обновление тем и плагинов рекомендуется только в том случае, если автоматическое обновление невозможно, вы делаете это. Для моей темы и той же самой точной ошибки я следил за этими действительно сделанными шагами https://community.theme.co/kb/updating-your-theme-and-plugins/. Однако это будет отличаться в зависимости от вашей темы. И если вы скорее откажетесь от своей версии wp, вы можете следовать моему первоначальному предложению. Но для меня мне нравится иметь все новое и современное.

Еще одна важная нота, если у вас есть эта тема, тогда мне пришлось удалить плагин x-shortcodes из плагинов, управляющих моим сайтом, потому что моя обновленная тема использует краеугольный камень вместо x-shortcodes для обработки важных коротких кодов, чтобы заставить vc работать правильно. Еще одна вещь, которую нужно знать: ни одна из ваших данных не должна вредить при загрузке плагинов и тем, все данные/содержимое хранятся безопасно в вашей базе данных, а не в вашей теме.

Ответ 2

Если вы не можете решить эту ошибку, обновив или понизив тему или плагин, вы можете, по крайней мере, внести следующие изменения.

1. Откройте следующие два файла:

wp-content\plugins\js_composer\assets\js\frontend_editor\frontend_editor.js
wp-content\plugins\js_composer\assets\js\frontend_editor\custom_views.js

2. Заменить
  this. $controls = $(_.template(template, data, vc.template_options).trim()).addClass('vc_controls');   <Ь > с
  это. $controls = $(( "vc.template_options" ).trim()).addClass('vc_controls');

Это, безусловно, будет работать.

Ответ 3

Решение. Отправьте файл /wp -content/plugins/js_composer_salient/assets/js/dist/backend.min.js вокруг строки 4045:

====== > Заменить код

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()
},

Ответ 5

Как сказал Shady sherif в Maulik, это то, что я изменил в 2-х местах на frontend-editor.min.js, и это сработало!! Спасибо вам обоим!

Измените это:

this.$controls=$(_.template(template,data,_.extend({},vc.template_options,{ evaluate:/\{#([\s\S]+?)#}/g})).trim()).addClass("vc_controls");  

При этом:

this.$controls=$(("vc.template_options").trim()).addClass("vc_controls");

Ответ 6

У меня были проблемы с WPBakery Page Builder в версии 6.0.2.
Wordpress: версия 5.2.1

ERROR: Uncaught TypeError: window.vc.frame_window.jQuery is not a function at window.vc.ShortcodesBuilder.buildFromContent (frontend-editor.min.js? Ver = 6.0.2: 10)
     at Object.vc.build (frontend-editor.min.js? ver = 6.0.2: 10)
     at frontend-editor.min.js? ver = 6.0.2: 10

Я неохотно обновлялся, так как может быть ошибка. (Но это факт, что обновление исправляет ошибку)

Поскольку обновление до версии 6.0.3 не было успешным.

Решение:

Мой восстанавливал резервную копию всего сайта.

Совет: Никогда не забывайте Резервное копирование.

Ответ 7

Я пробовал следующие решения:

  • maulik (но в моей папке плагинов таких файлов не было - frontend_editor.js и custom_views.js, просто папка "vendors" в "/wp-content/plugins/js_composer/assets/js/frontend_editor"),

  • Решение Amritosh Pandey (не работает даже после очистки кэша и истории),

  • Раствор Берейна (тоже не работает).

Я решил проблему с помощью решения Amritoshpandey: https://gist.github.com/levantoan/519bb0d42c9f7bd6c4d78ef1686bb848 ("Следующий код полностью исправил мои проблемы, я могу загрузить страницу, добавить, клонировать, удалить и т.д.")

Код Amritoshpandey должен быть вставлен в /wp-content/plugins/js_composer/assets/js/dist/backend.min.js вместо:

render: function() {var $ shortcode_template_el = $ ("# vc_shortcode-template -" +this.model.get("shortcode")); if ($ shortcode_template_el.is("script")) this.html2element (_.template($ shortcode_template_el.html(), this.model.toJSON(), vc.templateOptions ["default"])); else {var params = this.model.get("params"); $. ajax ({ Тип: "POST", URL: window.ajaxurl данные: {действие: "wpb_get_element_backend_html", data_element: this.model.get( "шорткод"), data_width: _ isUndefined (params.width) "1/1".?: params.width, _vcnonce: window.vcAdminNonce}, dataType: "html", context: this}). done (function (html) {this.html2element (html)})} вернуть this.model.view = this, this. $ controls_buttons = this. $ el.find(". vc_controls>: first"), this},

Ответ 8

Если у вас Visual Composer 4.9, просто замените эти 2 файла из архива - frontend-editor.min.js - backend.min.js

path: /wp-content/plugins/js_composer/assets/js/dist

Не забудьте сделать резервную копию ваших файлов.

https://yadi.sk/d/JH4cbtnH3UoU3F

нажмите "загрузить добавить" (протестировано с VC 4.9 и WP 4.9.5)

Ответ 9

Вы должны попытаться исправить это путем повышения/понижения вашей темы/плагина. Но если вы, как и я, не можете решить эту проблему таким образом, и вам просто нужно быстро взломать эту проблему, мне помогло следующее.

Отредактируйте следующие два файла:

wp-content\plugins\js_composer\assets\js\frontend_editor\frontend_editor.js
wp-content\plugins\js_composer\assets\js\frontend_editor\custom_views.js

Измените одну строку в каждом из них, добавив (). Изменить:

this.$controls = $( _.template( template, data, vc.template_options ).trim() ).addClass( 'vc_controls' );

чтобы:

this.$controls = $( _.template( template, data, vc.template_options )().trim() ).addClass( 'vc_controls' );

Ответ 10

1.Пожалуйста, отключите плагин. 2. Удалите все файлы из папки плагина (папка js_composer) 3.Загрузить последнюю версию Visual Composer 4. Добавить новый плагин → и выберите загруженный плагин → Загрузить --- > Активировать