Ответы в темах

Просмотр 15 ответов — с 1 по 15 (всего 28)
  • Всем спасибо)

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

    Можно об этом подробнее?

    Это шутка… там в контексте мои слова о том, что дочерние темы существуют, а дочерние плагины нет =)

    Если один виджет выбивается из общей картины, то проще сделать его форк/клон, чтобы был как все.

    Я с трудом представляю, как склонировать виджет, который является частью давольно большого плагина. Я думал есть какие-то готовые решения, как встроить нужный код перед определенным виджетом. Если нет — буду думать…

    • Ответ изменён 3 года, 11 месяцев назад пользователем zzzt.

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

    1. С помощью function.php дочерней темы переопределить before_widget и after_widget для уже заданного темой сайдбара. Если я правильно понимаю тогда любой виджет будет обведен рамкой если начало div’a вставить в before_widget, а закрытие div’a — в after_widget

    2. Найти функцию\код, которая обернет в div конкретный виджет

    Кстати, вы знаете что скрины ценятся в инстаграме, а не на техническом форуме?

    А еще наверное на техническом форуме ценятся сообщения по теме, а не пустые комментарии непонятно к чему. Мой скриншот демонстрирует виджеты про которые я говорю. Я могу показать страницу целиком, но тогда нужно помечать до куда мотать и т.д.

    Вообще изменения в любых файлах темы — до первого обновления

    Я попытался максимально лаконично описать свой вопрос, опустив детали. Надеялся, что люди на техническом форуме в курсе про существование дочерних тем (в отличии от дочерних плагинов), function.php которых не обновляется.

    • Ответ изменён 3 года, 11 месяцев назад пользователем zzzt.

    Действительно! Скопировал все стили плагина в свою тему и оттуда начал править.

    Прошу прощения за глупый вопрос — перемудрил

    Тема бесплатная — форум они закрыли. Пытаюсь найти их мейл. Пока не нашел, решил параллельно тут создать вопрос.
    Я просто не могу определить насколько это большая проблема. Может все решается правкой двух строчек в стиле «Да, сейчас так посты никто не считает. Используйте вместо count вот эту функцию» и всё

    К сожалению этот плагин тоже не то что нужно

    Возможно вот оно: https://wordpress.org/plugins/wp-original-media-path/
    Завтра проверю на деле

    Поищите: https://wordpress.org/plugins/search.php?type=term&q=cdn не уверен, что поможет Вашей задаче, но вдруг.

    Да, увы, это не то. Дело в том, что никакого специализированного CDN нет. Есть «подкастерский договор с soundclloud и на его основе возможность получить совершенно прямой URL mp3-файла.
    Его бы и хотелось скормить теме.

    Честно говоря думал, что подобное решение должно существовать. По сути ведь задача в базе создать сущность медиафайла со сторонним url. Ведь именно по нему (наверняка) идет обращение к файлу.

    Тема ничего такого требовать не может.

    Должно быть я не совсем корректно выразился.
    Тема = подкаст-терминал. Некоторые подкаст-плагины умеют отображать\воспроизводить mp3-файл по прямой ссылке (любой). А этой теме подавай файл из медиатеки. Хранить такое количество mp3 на сервере с сайтом нет возможности.
    Поэтому и хотелось создать «ложную медиатеку»

    То что вы посоветовали посмотрю, спасибо

    Да, спасибо. Это подходит для решения моей задачи. Большое спасибо )

    Итоговый, рабочий вариант подсказал мне добрый знающий человек на другом форуме:

    add_filter('widget_title', 'html_v_oglavlenii_widgeta');
    
    function html_v_oglavlenii_widgeta( $zagolovok ) {
        $temp = get_category(5)->category_count;
        $zagolovok = str_replace( '[cat5]', $temp, $zagolovok );
    
        return $zagolovok;
    }

    В окончательном варианте нужно было только добавить несколько переменных по аналогии:

    add_filter('widget_title', 'html_v_oglavlenii_widgeta');
    
    function html_v_oglavlenii_widgeta( $zagolovok ) {
        $c1 = get_category(5)->category_count;
        $c2 = get_category(11)->category_count;
        $zagolovok = str_replace( '[cat5]', $c1, $zagolovok );
        $zagolovok = str_replace( '[cat11]', $c2, $zagolovok );
     return $zagolovok;
    }

    Нашел сниппет для добавление bb-кодов в заголовок:

    <?php
    add_filter('widget_title', 'html_v_oglavlenii_widgeta');
    
    function html_v_oglavlenii_widgeta( $zagolovok ) {
        /* HTML теги: скобки открывающие/скобки закрывающие. */
        $zagolovok = str_replace( '[', '<', $zagolovok );
        $zagolovok = str_replace( '[/', '</', $zagolovok );
    
        /* Аналог тегов <strike> и </strike>. */
        $zagolovok = str_replace( 's]', 'strike>', $zagolovok );
        /* Аналог тегов <strong> и </strong>. */
        $zagolovok = str_replace( 'b]', 'strong>', $zagolovok );
    
        return $zagolovok;
    }
    ?>

    Интерпретировал его к своей задаче:

    function html_v_oglavlenii_widgeta( $zagolovok ) {
        /* HTML теги: скобки открывающие/скобки закрывающие. */
        $zagolovok = str_replace( '[cat5]', '<?php echo get_category(5)->category_count; ?>', $zagolovok );
    
        return $zagolovok;
    }

    Но теперь заголовок виджета Творчество [cat5] отображается вот так

    Тем временем я не стою на месте в своих изысканиях.
    Гугл говорит, что у виджета есть параметры before_title и after_title. Осталось понять как изменить их для конкретных виджетов.

Просмотр 15 ответов — с 1 по 15 (всего 28)