Ответы пользователя по тегу WordPress
  • В чем проблема с Contact form-7?

    trampick
    @trampick
    Веб-разработчик
    Попробуй отправить через php функцию mail письмо себе на почту(лучше на несколько яндекс, гугл). Функцию mail можно вставить тупо в начало functions.php и покликать по страницам сайта. Какие атрибуты передавать в эту функцию можно загуглить. Если письма не приходят, то попробуй использовать плагин SMTP.
    Так же нужно посмотреть в консоли, есть ли ошибки в JS. Если есть, то надо разобраться с ними.
    Ответ написан
    1 комментарий
  • Как правильно делать главную страницу Wordpress?

    trampick
    @trampick
    Веб-разработчик
    Нет строгого правила по этому поводу.
    Я лично поступаю на всех создаваемых сайтах так:
    - Создаю обычную страницу "Главная".
    - В настройках чтения указываю ее как главную страницу.
    - Создаю шаблон с именем front-page.php (Он служит для главной страницы по умолчанию).
    - Подключаю в него header и footer.
    - Можно скопировать код из index.php, либо написать свой вывод. На главной может быть секция с акциями, новостями, текстом о компании и т.д. Никогда просто не ограничивается статейной лентой.
    Ответ написан
    1 комментарий
  • Woocommere, как вывести товары под категорией на странице магазина?

    trampick
    @trampick
    Веб-разработчик
    Сам вопрос можно разделить на 2 части:

    - Верстка. Тут надо либо уметь самому, либо заказать у кого-то. Готового варианта Вам не предоставят.

    - Программирование этого функционала.
    У wc есть в настройках режим отображения каталога. Можно выводить подкатегории (если они есть), можно подкатегории и товар, можно только товар - возможно этого будет достаточно.
    Либо можно писать свой функционал. Вам нужно получить все категории таксономии products_cat через функцию get_terms();. Затем перебирать вся категории через foreach и формировать запросы для получения списка товара на основе wp_query. Ну и выводить список товаров.
    Ответ написан
    Комментировать
  • Как в WordPress сделать открытие сайта по https?

    trampick
    @trampick
    Веб-разработчик
    1 - Заменить все url в бд с http://mydomen.ru на https://mydomen.ru, Можно использовать плагин wp migrate db.
    2 - В wp-config добавить
    define('WP_HOME', 'https://mydomen.ru/');
    define('WP_SITEURL', 'https://mydomen.ru/');
    define('FORCE_SSL_ADMIN', true);
    if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && 'https' == $_SERVER['HTTP_X_FORWARDED_PROTO']) {
        $_SERVER['HTTPS'] = 'on';
    }
    Ответ написан
  • WooCommerce какого функционала не хватает?

    trampick
    @trampick
    Веб-разработчик
    - Почти всегда приходится добавлять кнопки плюс и минус для изменения количества в карточке и в корзине.
    - Нет автоматического пересчета при изменении кол-ва товара в корзине.
    - Как было написано - гибкой фильтрации, но тут есть свои наработки. Плюс каждый сайт индивидуален.
    - Покупки в 1 клик.
    - Иногда сталкиваюсь с разработкой интернет-магазинов для оптовиков. У woo есть плагин, что в зависимости от количества товара ставит разную цену. Но часто бывает такое, что в зависимости от роли(группы) пользователя, должна быть разная цена, причем в админке должны быть разные поля для установки цены.
    - несколько раз приходилось допиливать статистику в woo. У нас нигде не учитывается цена закупки и хотелось бы видеть что то типо чистой прибыли. К статистике еще дописываю вывод товара по частоте его заказа. Т.е. типо наиболее популярный товар.
    - уведомления по смс приходилось писать несколько раз.
    - Нормального плагина для импорта товара нету. Если товар обычный, то все ок. Но если вариативный, то приходится писать свой код. Тут у меня всегда есть момент с загрузкой миниатюр через ядро wp. Очень трудоемкий процесс и из-за этого приходится грузить минимальными порциями. На мой взгляд это очень нужный функционал. Плюс к нему сделать настройку к cron.

    Так то могу очень много чего пожелать реализовать к этому плагину:)
    Ответ написан
  • Как сделать на wordpress'е сортировку по цене?

    trampick
    @trampick
    Веб-разработчик
    acf работает на основе post_meta. Допустим если у тебя поле имеет имя _price, то в массив аргументов для wp_query тебе надо добавить:
    $args['orderby'] = 'meta_value_num';
    $args['meta_key'] = '_price';
    $args['order'] = 'asc'; //Выводить по возрастанию. Можно использовать desc вместо asc что бы выводить в обратном порядке.

    Если же у вас нет явного формирования wp_query, то вам нужно получить глобальный wp_query
    global $wp_query;
    Затем сформировать массив параметров
    $args['orderby'] = 'meta_value_num';
    $args['meta_key'] = '_price';
    $args['order'] = 'asc'; //Выводить по возрастанию. Можно использовать desc вместо asc что бы выводить в обратном порядке.

    И объединить с текущим запросом
    query_posts(array_merge($args, $wp_query->query));
    Ответ написан
    Комментировать
  • Как перенести WordPress на домен с SSL?

    trampick
    @trampick
    Веб-разработчик
    Сталкивался с подобной фигней не раз. Сложность еще бывает в том что редиректы кэшируются на разных уровнях. И лучше проверять через сторонние сервисы, типо bertal. На ту ли страницу переходит.

    По переносу:
    1 - меняем урлы базе c http на https.(ну и если лок. домен использовался на новый домен соответственно). Лучше делать через плагин.
    2 - На всякий случай в wp-config добавляем:)
    define('WP_HOME', 'https://mydomen.ru/');
    define('WP_SITEURL', 'https://mydomen.ru/');

    3 - добавляем в wp-config.php
    define('FORCE_SSL_ADMIN', true);
    4 - Ну и скорее всего что поможет в wp-config добавить ( я добавляю в начало файла):
    if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && 'https' == $_SERVER['HTTP_X_FORWARDED_PROTO']) {
        $_SERVER['HTTPS'] = 'on';
    }
    Ответ написан
    1 комментарий
  • Как получить все записи без прикрепленных термов таксономии?

    trampick
    @trampick
    Веб-разработчик
    Нужно получить массив id терминов, например через get_terms(). Если есть множество таксономий, то тут чуть немножко сложнее.
    Затем написать запрос
    $query = new WP_Query( array( 'category__not_in' => $termIdsArray ) );
    Ответ написан
    Комментировать
  • Можно ли фильтровать по брендам в WC Ajax Product Filter?

    trampick
    @trampick
    Веб-разработчик
    Не использовал плагин yith brands, но думаю что их совместить будет не так уж просто. Проще для товаров создать meta field с брендом. И настроить на него плагин WC Ajax Product Filter.
    Ответ написан
    Комментировать
  • Как на сайте wordpress сделать фильтр по дате календаря?

    trampick
    @trampick
    Веб-разработчик
    В использовании плагинов для фильтрации есть несколько значительных минусов:
    - в бесплатных версиях слишком ограниченный функционал.
    - Иногда хочется сделать какой нибудь необычный фильтр и для этого требуется установить несколько плагинов фильтрации. Заставить их работать взаимно достаточно трудозатратно.

    Поэтому если есть знания, то лучше написать самому. Написание такого функционала можно разделить на 2 части:
    1. Это заверстать форму фильтрации с необходимыми параметрами(можно использовать сторонние библиотеки js и css. Например для календаря).
    2. Написать php скрипт, который будет перехватывать GET (либо POST) запрос от формы и кастомизировать запрос вывода через wp_query.
    Ответ написан
    3 комментария
  • После переноса wordpress отдает 404 на контент?

    trampick
    @trampick
    Веб-разработчик
    Скорее всего у Вас абсолютные ссылки в бд.
    Файлы сайта можно перенести просто скопировав их, а вот для БД я советовал бы плагин.
    WP Migrate DB самый подходящий плагин для переноса БД. Через это плагин можно эскпортировать базу с заменой старых url-ов на новые.
    Ответ написан
    Комментировать
  • Как правильно записать ссылки в код темы WordPress?

    trampick
    @trampick
    Веб-разработчик
    Вам написали правильные варианты. От себя хочу еще добавить способ
    <a href="<?php echo get_permalink(777);?>">home</a>

    Вместо 777 ты должен вставить id страницы или записи. ID ты можешь увидеть в адресной строке при редактировании ее.
    Ответ написан
    Комментировать
  • Как реализовать вложенные категории Wordpress?

    trampick
    @trampick
    Веб-разработчик
    Конкретный код я вам не напишу, так как это не быстро, но в целом алгоритм скажу.
    1) То что дубли это назовем свойством wordpress. Решаю эту проблему тем что бы везде правильные ссылки были конкретно на этот элемент. В меню, хлебных крошках и т.д. Также надо правильно настроить постоянные ссылки. Робот поисковика не будет методом подбора все страницы перебирать и искать дубли. На страницу дубляжа может быть ссылка со стороннего сайта, тогда надо делать редирект. Может быть в карте сайта, если она автоматически генерируется, тогда карту надо настраивать. Так же для хлебных крошек и меню.
    2) С пагинацией надо разбираться. Часто такое бывает если вы кастомизируете wp_query. Решается установкой стороннего плагина и передаче в вызов функции плагина запроса wp_query.
    3) от слова category можно избавится плагином.

    Ну для того что бы выводить либо подкатегории если они существуют, либо продукты алгоритм прост
    1 Получить id текущей категории
    2 Получить дочерние элементы этой категории
    3 Если есть дочерние элементы, то выводим их, если нету то делам запрос товарам этой категории и выводим их.
    Ответ написан
    2 комментария
  • Как создать всплывающую контактную форму без плагинов?

    trampick
    @trampick
    Веб-разработчик
    Для самих форм используйте всегда плагин contact form 7. Очень удобный, функциональный плагин, который можно настроить под любые свои нужды, включая специфичное ПО на хостинге. Я сначала сам все писал свои скрипты, но постоянные хотелки со стороны клиентов отнимало много времени. Использую плагин я сократил затраты это времени в разы. Это что касается работы форм.

    Создание модальных окон (попапов) элементарная вещь для верстальщика. Если у Вас нет знаний по верстке, то обратитесь опять же к готовым плагинам, в которых кроме как кликать мышкой не нужно ничего. Их можно найти нагуглив по запросу "wordpress popup plugins". Попробуйте несколько и выберите подходящий.
    Ответ написан
    3 комментария
  • Работа с сессиями и куками в WordPress?

    trampick
    @trampick
    Веб-разработчик
    Я использую сессии. Для инициализации и удаления сессий использую следующий скрипт
    add_action('init', 'myStartSession', 1);
    function myStartSession() {
        if(!session_id()) {
            session_start();
        }
    }
    add_action('wp_logout', 'myEndSession');
    add_action('wp_login', 'myEndSession');
    function myEndSession() {
        session_destroy ();
    }

    Для работы с сессиями обращаюсь к массиву $_SESSION как на чистом php. Работает все стабильно и не мешает работе внутреннему механизму wp.
    Ответ написан
    2 комментария
  • Как перевести на https картинки в wordpress?

    trampick
    @trampick
    Веб-разработчик
    установить плагин WP Migrate DB
    Там в настройках есть пункт миграция. Далее выбираете Поиск и замена и меняете site.com на https://site.com. Советую перед этим сделать бекап базы:)
    Ответ написан
    1 комментарий
  • Как создать калькулятор Wordpress по двум значениям?

    trampick
    @trampick
    Веб-разработчик
    Запихивай это все 2-х мерный массив с индексами i - количество сотрудников, j - количество операций. По i и j получай значения из массива.
    Ответ написан
    Комментировать
  • Вывод записей по месяцам?

    trampick
    @trampick
    Веб-разработчик
    Тебе нужно использовать свой WP_Query.

    Суть алгоритма в том что бы выводить записи по дате. Так же требуется завести 2 временных переменные для месяца и года. При выводе смотреть если месяц или год отличный от того что хранится в переменных, то выводить заголовок нового месяца и перезаписывать переменные новыми значениями.
    Ответ написан
  • Безопасно ли разрабатывать сайт на Wordpress с нуля?

    trampick
    @trampick
    Веб-разработчик
    Все сайты ломаются и их ломают по мере нарастающего трафика на них. Защищай не защищай все равно сломают:) Так что сильно парится об это не всегда стоит, если говорить об обычном сайте. Проще говоря нужно не допускать грубых ошибок и использовать минимум плагинов. Ну и выполнить рекомендации как Алексей Николаев написал:)

    ВАЖНО! делайте бекапы ежедневно и сохраняйте их где либо, ну либо как минимум пару раз в месяц. Я делаю бекапы каждый день. По истечению месяца я оставляю пару версии прошлого месяца, а остальные удаляю потому что они не нужны:)
    Ответ написан
    Комментировать