• Как задать значение данным в структуре на Си?

    Vagrant0610
    @Vagrant0610
    PHP разработчик
    Возможно здесь есть решение: https://learnc.info/c/structures.html
    #include<stdio.h>
    
    struct tableI  
    {
        char *name[4];
        float doctor[16];
        float bunk[16];
    } tableI;
    
    int main()
    {
        struct tableI a;
        a.name[0] = "РСФСР";
        a.name[1] = "Украина";
        a.name[2] = "Латвия";
        a.name[3] = "Эстония";
        // и т.д. ...
        printf("%s|%s|%s|%s", a.name[0],a.name[1],a.name[2],a.name[3]);
    }
    Ответ написан
    2 комментария
  • Почему в vs code код сдвигается влево?

    Vagrant0610
    @Vagrant0610
    PHP разработчик
    У меня была похожая ситуация в таком случае:
    Пример кода
    for($i = 0;$i<100;$i++)
         for($j = 0;$j<100;$j++)
         {
         // ...
         }

    Возможно у вас что-то подобное, обратите внимание. В моём случае, поведение редактора было обосновано.
    Ответ написан
  • Как новый тип записи в WordPress вывести при поиске?

    Vagrant0610
    @Vagrant0610 Автор вопроса
    PHP разработчик
    Проблема решена! Большое спасибо Василий Пупкин за его ответ в комментариях к вопросу. Направил в нужную сторону. Теперь подробнее о том с чем была связана проблема. В моём случае, в файле functions.php использовался фильтр (так же, есть хук) 'pre_get_posts'. Он срабатывает перед каждым обращением в базу данных с использование класса WP_Query. И изменял тип поста среди которых происходил поиск.
    Код в котором и была проблема
    function excludePages($query)
    {
    	if($query->is_search)
    	{
    		$query->set('post_type', 'post');
    	}
    	return $query;
    }
    add_filter('pre_get_posts','excludePages');

    Решение довольно простое. Необходимо установить проверку на нахождение в админ панели.
    Исправленный код
    function excludePages($query)
    {
    	if($query->is_search) // Если запрос в БД отправляется в результате поиска по сайту
    	{
    		if(!is_admin()) $query->set('post_type', 'post'); // Если пользователь не находится в панели администратора
    	}
    	return $query;
    }
    add_filter('pre_get_posts','excludePages');

    Возможно кому-то поможет мой ответ в будущем.
    Ответ написан
    Комментировать
  • Как исправить ошибку PHP "Cannot modify header information - headers already sent by"?

    Vagrant0610
    @Vagrant0610 Автор вопроса
    PHP разработчик
    Проблема решена! Была она в плагине WP Super Cache. На время доработки сайта я отключил функцию кеширования в плагине. В следствии чего у меня появлялась такая ошибка. При отключении плагина, ошибка не пропадала. Выяснилось это самым грубым образом. Я сделал копию сайта до того как начал заниматься доработками, в копии всё работало. После чего, когда надежда была потеряна, последним рывком было просто взять и грубо заменить все файлы в wp-content файлами копии. В числе этих файлов, вне папки плагинов и тем был файл под названием wp-cache-config.php. В нём находятся генерированные настройки плагина WP Super Cache. И после замены всех файлов в папке wp-content, всё заработало. Ну а далее методом исключения я выяснил что вышеуказанный файл с настройками, содержал в себе как раз отключённую настройку кеширования. Которую я благополучно отключил в середине разработки, что бы она не мешала. После включения этой настройки, всё снова заработало но уже с моими файлами и папками. Надеюсь мой опыт пригодится кому-то, так как потратил на это я почти месяц) занимался даже на работе, дома до 4 утра, на выходных, под коньяк) в общем, дай Бог всем терпения)
    P.S.: Появилась мысль написать небольшой плагин для логирования действий с сайтом, что бы не забывать такие мелочи, но уверен уже что-то такое есть)
    Ответ написан
    Комментировать
  • Как узнать переменную в woprdpress+woocomerce?

    Vagrant0610
    @Vagrant0610
    PHP разработчик
    Если опишете задачу, возможно вам посоветуют как реализовать её наилучшим образом.

    В шаблоне письма впишите следующее:
    // Запишите в $order_id ID заказа.
    $order_id = 86;
    $order = new WC_Order($order_id);
    $address1 = $order->get_shipping_address_1();

    Подробнее о классе WC_Order и о том как получать данные заказа (начиная с метода get_data()).
    Ответ написан
    2 комментария
  • Почему не проходит заказ на woocommerce, и просит ввести адрес для продолжения?

    Vagrant0610
    @Vagrant0610
    PHP разработчик
    Указанные выше решения сработали 1 раз (лично у меня).
    По этому я решил проблему так:
    1. Создаёте в стилях класс:
    .vag-hide { display: none; }
    2. Добавляем класс к полю "Страна":
    add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
    function custom_override_checkout_fields( $fields )
    {
    	array_push($fields['billing']['billing_country']['class'], "vag-hide"); // Добавляем класс для скрытия поля.
    	return $fields;
    }
    Ответ написан
    Комментировать
  • Как настроить передачу цены вариативного товара WooCommerce?

    Vagrant0610
    @Vagrant0610
    PHP разработчик
    Судя по всему у вас изменены настройки вывода в шаблоне или файле function.php. Когда я хочу разобраться в чём проблема, я копирую допустим вот так: <p class="price">, далее открываю notepad++ и включаю поиск в файлах, указываю папку: "\wp-content\plugins\woocommerce" или папку темы, допустим: "\wp-content\themes\shapely". Если соответствий не находится, ищу другие классы или определяющие признаки того места на странице которую хочу настроить. Если учесть что по умолчанию цена выводится в теге <span> а у вас выводится один товар в <p> а другой в <span> то следует по искать именно так как я написал выше: <p class="price"> и первым делом я советовал бы вам поискать в файле function.php в папке темы. А потом уже искать по файлам. Если найдете, смотрите при каких условиях выводится и меняйте на свои.
    Ответ написан
    Комментировать
  • Не приходят письма при новом заказе в WooCommerce, что можно сделать?

    Vagrant0610
    @Vagrant0610 Автор вопроса
    PHP разработчик
    Вопрос решён. Настроил отправку писем через плагин WP Mail SMTP.
    Сделал следующим образом:
    1. Выбрал в настройках "Other SMTP".
    2. Вписал параметры (нашёл на сайте mail.ru) для почтовых программ:
    SMTP Host smtp.mail.ru
    SMTP Port 465
    Encryption None (Выбрать - SSL) TLS
    Auto TLS ON
    Authentication ON
    SMTP Username Knife@mail.ru
    SMTP Password *******************
    3. Очень важный момент! Что у mail, что у yandex и возможно у других почтовых сервисов, отправитель проверсяется на соответствие. По этому в самом верху на странице настроек плагина обязательно укажите тот же самый адрес почты что и в "SMTP Username".
    From Email Knife@mail.ru
    4. Преимущества такой настройки в том что при отправлении писем через такие сервисы, письма имеют безопасные подписи, по этому все письма которые приходят клиентам и вам, не попадают в папку "спам".

    На этом всё. После этого заработала почта в магазине.
    Ответ написан
    3 комментария
  • Почему в WooCommerce не отображаются способы оплаты?

    Vagrant0610
    @Vagrant0610 Автор вопроса
    PHP разработчик
    Вопрос решён. При добавлении товара в корзину со стоимостью 0 рублей, способы оплаты не выводятся :)
    Ответ написан
    Комментировать
  • Как в MODX Revolution отправляются письма через Formit?

    Vagrant0610
    @Vagrant0610 Автор вопроса
    PHP разработчик
    В проблеме разобрался. Даже немного стыдно что не догадался сразу посмотреть логи. Когда я в них заглянул по адресу "/core/cache/logs/", то увидел следующее сообщение:
    ... /core/components/formit/model/formit/fihooks.class.php : 580) [FormIt] Произошла ошибка при попытке отправить почту. Ошибка соединения с SMTP-сервером https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
    Проблема оказалась в работе PHPMailer. Решается эта проблема путём переключения версии PHP (в моём случае с 5.3) на 5.6. После чего всё начинает работать нормально. Но перед этим, я убрал свои изменения которые внёс ранее в раздел Почта (в системных настройках), сделал всё по умолчанию. Возможно, данная информация, в будущем кому-то поможет. По этому, привет вам из прошлого ;-)
    Ответ написан
    Комментировать
  • За что программист получает деньги?

    Vagrant0610
    @Vagrant0610
    PHP разработчик
    Все люди получают деньги либо за знания либо за умения. В зависимости от того на сколько доступно и легко учатся определённые знания и получается опыт, или на сколько легко и быстро можно научиться определённому умению, зависит в принципе сумма которую получает человек. Например сайт можно поддерживать так же улучшая его код, ускоряя загрузку страниц или исправляя баги, как уже сказали выше, нельзя написать идеальный код. Но можно сделать его приближенным к идеальному.
    Ответ написан