Ответы пользователя по тегу WordPress
  • Как осуществить перенос записей с joomla на wordpress?

    kumaxim
    @kumaxim
    Web-программист
    Подход, на мой взгляд, здесь один INSERT INTO SELECT.... Пример

    Пойми как лежат данные в текущей БД, разберись как нужно положить данные в новую БД и, используя MySQL Workbench переносишь их между базами. Также, рекомендую создать рабочие копии обоих БД под правами одного пользователя или вообще обе структуры слить в одну БД.
    Ответ написан
    Комментировать
  • Почему не подключаются стили и скрипты из плагина Wordpress?

    kumaxim
    @kumaxim
    Web-программист
    Все функции, которые ты используешь в качестве callback'ов в add_action/add_filter должны быть объявлены как public внутри твоего класса. Ни protected ни private в качестве callback'а не смогут быть вызваны при выполнении хука/фильтра
    Ответ написан
  • Как можно перенести тему с Joomla на wordpress?

    kumaxim
    @kumaxim
    Web-программист
    Полная перевестка проекта, будет самым быстрым длинным методом.

    Единственная альтернатива, которая мне приходит в голову такая:
    - В теле шаблонов joomla есть вставки вида JoomlaComponent->get_title()
    - Создать класс JoomlaComponent c методом get_title, который будет вызывать WP функцию get_the_title()
    - Отдельно дописывать свой кастомный роутинг частей шаблона

    Последнее поясню - для шаблона WP нужны только два файла: index.php + style.css. Все остальные подключаются только в случае если в WP_Query заполнены конкретные переменные, по типу is_single или is_post и т.п. Шаблоны Joomla имеют свою собственную структуру, отличную от WP, однако, там есть что-то похожее, т.е. страницы и посты. Собтвенно, ты можешь в index.php шаблона напихать кучу if ... else, которые будут определять что именно за страница у тебя сейчас загружается и в зависимости от этого делать нужный тебе require_once с путем до правильных файлов в joomla-шаблоне. Думаю, идея понятна, хотя лично мне кажется, что чем таким извратом заниматься, лучше переверстать шаблон под Wordpress

    Как еще одна альтернатива - смотри в сторону Divi Builder или чего-то аналогичного. Это визуальные конструкторы шаблонов. Помогают ускорить верстку, однако, для посещаемых проектов(от 100 тыс хостов в день) не годятся.
    Ответ написан
    Комментировать
  • Как сохранить произвольное поле?

    kumaxim
    @kumaxim
    Web-программист
    Это называется "Дополнительные пользовательские поля". В plugin cookbook о них все прекрасно написано.
    Если нет времени со всем этим сильно заморачиваться, тогда смотри в сторону Advanced Custom Fields. Читай документацию по нему на сайте у автора.
    Ответ написан
    Комментировать
  • Woocommerce страницы конфликтуют с категориями?

    kumaxim
    @kumaxim
    Web-программист
    === VANGA MODE ON ===
    Вам нужно ознакомиться с принципом работы Rewrite API в Wordpress. Если очень коротко, то есть список из 16-ти базовых правил: категории(/category/), теги(/tags/), страницы, посты и навигация/пагинация, т.е. циферки внизу страниц категорий/тегов(/page/1/ или /page/2 и т.п.).

    Разумеется, WP дает возможность разработчику самому добавить новое правило, если ему это необходимо. Новое правило может быть добавлено либо в начало(рекомендуется) либо в конец стандартного списка правил.
    Для добавления нового правила, чаще всего используют функцию add_rewrite_rule, однако, если ты начнешь копать в старые плагины, то ты увидишь, что на ряду с этим также, новое правило может добавляться на фильтре generate_rewrite_rules.

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

    На сколько я помню, Woocommerce добавляет свои правила через функцию add_rewrite_rule в начала списка правил, поэтому, если у Вас есть две страницы с одним УРЛом(товар в Woocommerce и категория/страница/тег), то Wordpress отправит Вас на первое что ему попадется. Ранее, по всей видимости, у Вас первым был товар Woocommerce, потом категория.

    Как Вы думайте где WP хранит правила? Я вариантов кроме таблицы wp_option в БД не знаю. При переносе Вашей БД между серверами, возможно, при экспорте/импорте там чего-то оптимизировалось, и теперь Ваше правило Woocommerce упало вниз, т.е. стало идти после стандартных правил Wordpress. По этой причине Вы и наблюдайте такое поведение.
    === VANGA MODE OFF

    Как такое исправить:
    • Самый правильный, на мой взгляд, способ - добавить префикс категории и тегу, чтобы они не пересекались. Смотреть внизу странице Settings => Rewrite в админке.
    • Второй - попробуйте деактивировать все плагины и обновить/переустановить Wordpress из самого Wordpress(страница Home => Updates). После активируйте снова все плагины. Гипотетически, это должно запустить где-то функцию flush_rewtire_reles(), которая очищает все УРЛ-правила для WP и Ваше ожидаемое поведение должно восстановиться. Хотя, лично мне это кажется "тугим" методом....


    Если вариант 1 и 2 не выгорают - ставите плагин Query Monitor и начинайте дебажить
    Ответ написан
    Комментировать
  • Перенос контента с ModX на Wordpress?

    kumaxim
    @kumaxim
    Web-программист
    Тебе нужно 6 чашек кофе + одна ночь + SQL

    Возьми за основу 2-3 записи в MODx. Добавь их в ручную на Wordpress. Используя phpMyAdmin или Mysql Workbench найди соответствие между полями таблиц обоих БД. Далее тебе на помощь приходит конструкция вида SELECT ... INTO

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

    Я переносил с кучи CMS контент на WP. Если статей на исходном сайте более 1к - то подключайся к БД и ищи в каких полях/таблицах лежит контент исходных статей. Затем, поняв это, тебе нужно перенести все это дело в таблицу wp_posts. Попутно, присваиваешь туда категории/теги, возможно добавляешь записи. Если переносишь комменты(wp_comments) или юзеров(wp_users), тогда, нужно обратить внимание на формат даты(комменты) и сбросить пароли(хеши паролей лучше не переносить, вставь любое случайное значение)

    Перед началом переноса почитай WP Database Description. Если есть какие-то конкретные вопросы - пиши в комменты ниже или приглашай меня экспертом к ним, когда будешь постить на тостере.
    Ответ написан
  • Как вывести в url категории custom type в wordpress?

    kumaxim
    @kumaxim
    Web-программист
    На мой взгляд все довольно просто. Обнови свой код, добавив туда ключ rewrite. Вот так:
    register_post_type('product',[
                'label' => 'Товары',
                'public' => true,
                'show_ui' => true,
                'show_in_menu' => true,
                'menu_position' => 2,
                'hierarchical' => false,
                'supports' => ['title','editor', 'thumbnail'],
                'taxonomies' => ['products'],
                'has_archive' => true,
                'rewrite' => [
                    'slug' => 'new_custom_stug/you/want'
                ]
    ]);


    Документация по register_post_type
    Ответ написан
  • Как добавить цену товара в мета-описание?

    kumaxim
    @kumaxim
    Web-программист
    Повесь функцию, которая будет дописывать в начало описания цену через фильтр wpseo_metadesc
    Ответ написан
    Комментировать
  • Как заменить внешний css на свой стиль на сайте Wordpress?

    kumaxim
    @kumaxim
    Web-программист
    Попробуй вот так
    add_action( 'wp_footer', function() {
    ?>
    	.widget-shop {
    	    background-color: #f7eac8 !important;
    	    padding: 20px !important;
    	    margin: 0px 0px 0px !important;
    	    width: 100% !important;
    	    box-shadow: 0 0 0 1px rgb(247, 234, 200), 0 3px 4px -3px rgb(247, 234, 200) !important;
    	    box-sizing: border-box !important;
    	}
    <?php
    }, PHP_INT_MAX );


    Разумеется, код необходимо добавить в function.php текущей темы
    Ответ написан
  • Где в WP подключается родной jquery?

    kumaxim
    @kumaxim
    Web-программист
    Читам документацию по функции wp_register_script

    Выключаем родной JQuery примерно так wp_dequeue_script( 'jquery' ) или wp_deregister_script( 'jquery' );

    Первоисточник - сделайте поиск ключевого слова 'jqeury' по содержимому файлов в папке wp-includes.
    Ответ написан
    Комментировать
  • Почему не подключается к фтп netbeans?

    kumaxim
    @kumaxim
    Web-программист
    Установите для родительского каталога права 777. Помогает в 98% случаев.

    Если не поможет, тогда нужно смотреть настройки Вашего FTP сервера/подключения.
    Ответ написан
    Комментировать
  • Как правильно настроить плагин UpdraftPlus Backup для сохранения резервной копии в Google Drive?

    kumaxim
    @kumaxim
    Web-программист
    Вы на форум поддержки UpdraftPlus заглядывали? Две недели назад аналогичная проблема всплывала уже.
    Ответ написан
    1 комментарий
  • WordPress - откат изменений в шапке сайта?

    kumaxim
    @kumaxim
    Web-программист
    Если мне не изменяет память, эти состояние шапок, виджетов и т.п. лежат в таблице wp_options, поэтому самым разумным способом будет найти бэкап БД и восстановиться из него.

    Как другой вариант, если шапка там была стандартная, тогда удалите/установите повторно Вашу тему

    Последний вариант - лезть в кэш Гугла, например, смотреть что там было в этой шапке и восстанавливать все руками

    Какой из способов наиболее разумен в Вашем случае решайте сами.
    Ответ написан
    Комментировать
  • Почему WP убирает тег, в который обернута выводимая дата?

    kumaxim
    @kumaxim
    Web-программист
    <?php echo sprintf( '<div class="found-post-date">%s</div>', get_the_date() ); ?>


    Как вариант. Попробуй..
    Ответ написан
    Комментировать
  • Как ускорить загрузку сайта на wordpress?

    kumaxim
    @kumaxim
    Web-программист
    Самое простое решение - подключайтесь к Cloudflare

    Если это не помогает, тогда берите виртуальный/выделенный сервер и, в зависимости от Вашего сайта, уже настраиваете там необходимую Вам конфигурацию. Вариантов этих самых конфигураций, как Вам уже сказал WordPress WooCommerce, могут быть тысячи. Все зависит от постановки задачи и исходных данных.
    Ответ написан
    9 комментариев
  • Плагин фильтр товаров для WP?

    kumaxim
    @kumaxim
    Web-программист
    WooCommerce смотрел?
    Ответ написан
    Комментировать
  • Как положить данные из одного массива в другой на php?

    kumaxim
    @kumaxim
    Web-программист
    Во первых у Вас не массив, а какой-то объект.
    Во вторых - для этой цели я использую функции array_map() / array_walk() / array_filter() из стандартной библиотеки PHP. В документации примеров достаточно, думаю сами разобраться что там к чем сможете.

    Также в следующий раз форматируйте нормально дамп своих объектов, чтобы их прочесть можно было.
    Ответ написан
    1 комментарий
  • Почему при переносе wordpress сайта теряется меню и другие изменения?

    kumaxim
    @kumaxim
    Web-программист
    Потому что не нужно переносить все это дело руками. Есть замечательный плагин All in one Migration от Servmask. Используйте его.
    Ответ написан
    Комментировать
  • Wordpress: Как вывести посты текущей категории через wp_query?

    kumaxim
    @kumaxim
    Web-программист
    Как получить информацию о текущий странице
    global $wp_query;
    print_r( $wp_query );


    Найти в выводе id категории и подставь туда тебе надо.\

    И один совет - переименуй свою переменную $query в какую-нибудь $category_hot_query, дабы избежать потенциального переопределения. Оно и в твоем случае работать будет, просто из опыта могу сказать, что сейчас ты написал тут $query, через неделю твой клиент тебе пишет "А вот хорошо бы еще вот тут вывести..." и ты делаешь еще одну переменную $query, потом твой коллега где-то еще $query и т.д. В итоге ты тратить 10 минут лишнего времени на поиск и исправления тупой ошибки, которую можно очень легко избежать.
    Все это чисто лирическое отступление, основанное на моем личном опыте.
    Ответ написан
    1 комментарий
  • Как сделать интеграцию Wordpress > Android?

    kumaxim
    @kumaxim
    Web-программист
    Тебе нужно копать в сторону REST API от Wordpress'а, однако, на сколько сторонние плагины поддерживают его и как хорошо я не знаю.
    Ответ написан
    Комментировать