• Как добавить код php из своего плагина Wordpress на страницу сайта?

    YBB
    @YBB
    Просто я думал, что нужно создать свою функцию на php, а потом при объявлении шорткода указать, какая функция будет выполняться

    Ну так именно это я и написал в коде, просто использовал анонимную функцию (https://www.php.net/manual/ru/functions.anonymous.php). Анонимная функция гарантировано ни с кем не будет конфликтовать за имя.
    С именованной было бы так:
    add_shortcode('my_shortcode', 'my_shortcode_handler');
    function my_shortcode_handler() {
    // обработчик шорткода
    }

    ...только в профиль :)
  • Как добавить код php из своего плагина Wordpress на страницу сайта?

    YBB
    @YBB
    После добавления строки add_shortcode сайт ломается,

    Проверьте синтаксис. И куда Вы добавляете "строку"? (не, можно, конечно, и в одну строку всё написать, но зачем?)
    И что здесь означает обработчик шорткода?

    Что в том месте, где я поставил комментарий, должен быть реальный обработчик шорткода, который я по очевидным причинам написать не могу.
    Я думал вставляется только команда для создания шорткода и всё.

    А чем должен заменяться шорткод движок должен сам угадать или как?
  • Как натянуть карточку тарифа на WordPress?

    YBB
    @YBB
    Нет, не костыль. Нормальная доработка, компенсирующая отсутствие в плагине необходимого функционала.
  • Почему хук не выводит контент ниже изображения товара, если есть галерея?

    YBB
    @YBB
    Дмитрий, а что именно добавляется в код?

    Я ожидал, что в результате маневра <div class="woocommerce-product-gallery__wrapper"> закроется и после него появится еще один div с Вашим контентом.
    Но судя по всему, не видя всей картины (то есть сайта), а только кусок шаблона, я промахнулся - добавленный в это место div выводится справа, над <div class="summary entry-summary">. Увы. Видимо, надо искать какое-то другое решение.
  • Почему хук не выводит контент ниже изображения товара, если есть галерея?

    YBB
    @YBB
    Возможно, этот Ваш контент стили обрабатывают как еще одну картинку в галерее. Попробуйте в начале контента добавить </dev><dev> и пошаманить со стилями этого нового divа через инструменты разработчика браузера.
  • Почему хук не выводит контент ниже изображения товара, если есть галерея?

    YBB
    @YBB
    Необходимый контент не попадает в html страницы или попадает, но его не видно?
  • Как настроить поведение кнопки "Назад"?

    YBB
    @YBB
    С переходом с внешнего ресурса есть нюанс: если ссылка с target=_blank или ручками открыли ссылку в новом окне/табе, то history.back не вернет браузер на внешний ресурс, в противном случае вернет. Вот тут для изменения поведения можно использовать реферрер: сравнивать его со своим доменом и в зависимости от задачи либо делать возврат на внешний ресурс там, где его нет, либо блокировать переход на внешний там, где он есть, но не нужен. Также можно подменять переход на внешний на переход на свою главную, если ссылка с внешнего была на внутреннюю страницу сайта (мне кажется это логичным)
  • Как натянуть карточку тарифа на WordPress?

    YBB
    @YBB
    А что то типа массива в ACF я не нашёл

    Кажется, у ACF это называется "повторитель" и есть только в PRO-версии. Могу ошибаться, я с ACF сталкивался всего один раз несколько лет назад.
  • Как задать кнопку назад на предыдущую страницу?

    YBB
    @YBB
    Об этом я не подумал...

    Не Вы первый, не Вы последний ;) Очень распространенные грабли, многие на этом набили себе шишек.

    Наверно, можно проверять document.referrer (javascript у клиента) или $_SERVER['HTTP_REFERER'] (php на стороне сервера): если там чужой домен, делать переход на главную. Но referrer не очень надежная штука, хотя и лучше чем ничего ))
  • Как можно сделать отдельные метки (таксономии) для каждой категории с помощтю ACF?

    YBB
    @YBB
    В стандартном функционале WP если нажать на метку Овощи в категории Ашан, то покажутся и овощи из категории Лента, а нужно только овощи из категории Ашан.

    Вордпресс поддерживает (раньше точно поддерживал, за новый не знаю) "гибридные" ссылки типа /category/ашан?tag=овощи. Не очень красиво, зато ничего дополнительного не нужно. А с учетом тенденции браузеров "спрятать всё" можно не сильно беспокоится о красоте адреса.
  • Как настроить каноникал для рубрик wordpress?

    YBB
    @YBB
    Я обычно вообще запрещаю индексацию рубрик, если у них нет описания, достойного индексации.

    Ну сами посудите, какой смысл индексировать нижеследующий текст?
    [CE_Table title="Курс вьетнамского донга" currency="VND" ] Калькулятор курса вьетнамского донга к доллару и рублю [CE_Calc currencies="USD,UAH,RUB,BYN,KZT,VND"] [CE_Share currency="VND"]...

    Все достойные индексации слова есть на странице самой записи.

    Я уже не говорю о том, что к моменту, когда поисковик выдаст юзеру ссылку, искомого текста по ней может уже не быть.
  • Вывод отзывов ВК на сайт Wordpress?

    YBB
    @YBB
    что судя по вопросу ему надо при каждом открытии станицы свежимие данные...

    Кто знает, кто знает. Многие и не догадываются, что им надо, пока не покажешь, что можно и так :)

    так при чем тут кеш - то.?!

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

    при высокой частоте запроса имеет смысл вовсе кешировать..?

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

    В теории все просто. Кэшировние имеет смысл, если за время жизни кэша он может быть использован более одного раза, а время жизни/частота обновления определяется частотой обновления исходных данных и требованиями к их актуальности при выдаче клиенту. На практике, кончено, все гораздо сложнее.
  • Вывод отзывов ВК на сайт Wordpress?

    YBB
    @YBB
    Кеширование будет вам показывать не актуальные данные всегда.

    Владимир Брумер, Что значит "всегда"? Не всегда, а только в период между обновлением исходных данных и обновлением кэша. Такова цена экономии ресурсов и уменьшения времени реакции. Поэтому время жизни кэша и способ его обновления критически зависят от конкретной ситуации.

    Через планировщик же вы можете каждые несколько минут данные дергать и это будет не заметно.


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

    М/у кешированием и планировщиком разца, что м/у небом и землей...

    Это да. И даже больше! Потому что не стоит сравнивать теплое с мягким :) Кэш - способ хранения данных ("легкодоступно и недолго"), планировщик - способ обновления данных в кэше.
  • Вывод отзывов ВК на сайт Wordpress?

    YBB
    @YBB
    Владимир Брумер, Планировщик - не более чем один из способов запуска скрипта формирования кэша (то же кэширование, только в профиль). К тому же способ далеко не всегда целесообразный.

    С cron/crontab отдельная история, но это уже оффтоп.
  • WP Costum Post Type - Как правильно создать несколько CPT?

    YBB
    @YBB
    На здоровье! ))
    Плагин не обязательно использовать as is, из него можно извлечь "действующее вещество", хотя это не всегда просто и не всегда оправдано.
  • Почему в WP не работает preg_replace или str_replace?

    YBB
    @YBB
    Именно!
    В WP вообще принято называть the_* функции, которые выводят (echo) и get_* - которые возвращают.
    Думаю, что нужна get_sub_field(). И хорошо бы не забыть вывести полученный результат.
  • Как словить данные с вебхука из Elementor Pro Form?

    YBB
    @YBB
    parzif4l, если я правильно понял, этот скрипт живет на вашем сайте, а значит, и логи где-то рядом. Найти лог доступа сайта (файл называться может по-разному, зависит от настроек сервера) и посмотреть строки, в которых есть 'webhookformtg.php'
  • Как словить данные с вебхука из Elementor Pro Form?

    YBB
    @YBB
    Я бы для начала в логах посмотрел, какой реально запрос к вебхуку формируется.
  • Как запустить один ajax-запрос внутри другого?

    YBB
    @YBB
    Я бы оба запроса слепил в один "пагинация с фильтром", и на фронте, и на бэке. imho это проще и эффективней, чем "один ajax-запрос внутри другого".