• Решено DS

    (@dosolnce)


    Есть ли возможность отключить новый редактор в виджетах? Пропадает код в текстовых виджетах.

Просмотр 13 ответов — с 1 по 13 (всего 13)
  • Модератор Yui

    (@fierevere)

    永子

    преключайте на режим текст, перед тем как сохранить

    WP 4.8 только вышел, лучшего способа отключения tinymce для виджетов пока не предложено

    Автор DS

    (@dosolnce)

    Это все понятно, но по умолчанию в момент редактирования открывается не текст-режим и при переключении уже нет кода.

    Модератор Yui

    (@fierevere)

    永子

    в момент редактирования открывается не текст-режим и при переключении уже нет кода.

    у меня коды счетчиков и adsense не пропадают в текстовом режиме после переключения

    Автор DS

    (@dosolnce)

    Такие коды да. Но скрипт или php самоуничтожаются. Нашел решение здесь: https://wordpress.org/support/topic/new-text-widget-p-tags-problem/

    Модератор Yui

    (@fierevere)

    永子

    https://ru.wordpress.org/plugins/classic-text-widget/
    ну вот, уже оказывается сделали плагин 😀
    спасибо что поделились

    Автор DS

    (@dosolnce)

    Костыли, но рабочие))) Спасибо за диалог)

    Модератор Yui

    (@fierevere)

    永子

    <script>
    у меня не уничтожался кстати

    а насчет костылей… вообщем-то оно всегда в таком виде выходит, плагинами восстанавливают старое измененное или удаленное поведение. Вопрос был только в том, кто и насколько быстро такой плагин напишет )

    Автор DS

    (@dosolnce)

    У меня почти все виджеты в табах самописные на php-коде, поэтому актуально. И да, Вы правы. Возможно, вскоре кто-то опубликует и короткий код для functions.php для этой цели, и плагин станет не нужен.

    Модератор Yui

    (@fierevere)

    永子

    навряд ли
    во-первых код из functions.php всегда можно конвертировать в плагин, и соответственно обратно
    разницы для небольшого кода немного, плагин конечно более универсален и будет работать с любой темой, поэтому этот подход более удобен

    во-вторых короткого кода тут не выйдет
    https://plugins.trac.wordpress.org/browser/classic-text-widget/trunk/plugin.php
    тут конечно немного, подключен перевод и выполнение шорткодов в виджете
    https://plugins.trac.wordpress.org/browser/classic-text-widget/trunk/lib/class-classic-wp-widget-text.php
    а вот тут для functions.php я бы сказала что уже многовато кода

    Автор DS

    (@dosolnce)

    Спасибо. Сейчас почитаю по ссылкам. А вернулся дописать, что рано радовался)) Плагин действительно добавляет текст-виджет-альтернативу, внешне копия прежнего, и после обновления в нем код php не исчезает, но на страницах сайта не работает. У меня добавлена поддержка php в виджетах, почему она не распространяется на этот, без понятия. Где-то какой-то конфликт, видимо. Пошел ручками перепишу всё взад))

    Модератор Yui

    (@fierevere)

    永子

    для PHP кода наверное стоило и виджеты использовать соответствующие

    https://ru.wordpress.org/plugins/php-code-widget/
    https://ru.wordpress.org/plugins/code-php-in-widget/
    https://ru.wordpress.org/plugins/php-everywhere/

    Автор DS

    (@dosolnce)

    Даже в голову не приходило, все работало до 4.8 и так. Спасибо большое.

    Автор DS

    (@dosolnce)

    Нет, решил вопрос без плагинов все же. Может, еще кому-то пригодится. В сети бродят разные коды для включения php-кодов в виджетах, но суть у них одна. В них всегда есть часть ‘widget_text’.
    Обычно такой код прописывают в functions.php, у меня этот файл сделан отдельным плагином, но не суть. Главное добавить к этому коду поддержку виджета из данного нового плагина, тогда и он все подхватит. Просто я не учел сразу, что тектовый виджет теперь носит другое имя — ‘classic_widget_text’. Потому он и не подхватил php-код на лету. После добавления строки с новым именем все работает, как встарь.
    add_filter('classic_widget_text', 'php_in_widgets', 99);

Просмотр 13 ответов — с 1 по 13 (всего 13)
  • Тема «Как отключить новый редактор в виджетах?» закрыта для новых ответов.