Задать вопрос
Занимаюсь программированием с 2001 года, разработкой сайтов с 2003 года. Много всего поделал на WordPress. Поддерживаю старую и огромную CRM на Yii - надеясь переписать её на Laravel. Пописываю иногда удобных Телеграм-ботов )) Пробую делать апки на Flutter'е.

Так как более 5 лет работал Project Manager'ом - очень ценю время и всегда стараюсь его всячески экономить! Поэтому не боюсь задавать здесь на Тостере, даже самые простые и глупые вопросы - потому что это экономит моё время и даёт возможности ускориться в работе!

Благодарю всех отвечающих мне и дискутирующих по разным вопросам здесь!
Спасибо TM за Тостер - отличный сервис ребята! Вы молодцы!

Достижения

Все достижения (22)

Наибольший вклад в теги

Все теги (142)

Лучшие ответы пользователя

Все ответы (110)
  • Как закрепить блок в Worpdress чтобы он был на всех страницах?

    @easycode
    не боюсь задавать глупые вопросы ))
    В файл functions.php в папке активной темы добавить код (можно в конец файла, но до закрывающего тега: ?> - если он там есть, а если его нет то просто в конец файла):
    register_sidebar(array(
            'name' => 'Мой блок',
            'before_widget' => '',
            'after_widget' => '',
            'before_title' => '<div class="title">',
            'after_title' => '</div>',
        ));


    далее, вам нужно определиться где будет расположен ваш блок - в каком месте страницы, если в подвале - то смотрите в файл footer.php, если в шапке - то возможно header.php. Тут всё очень тонко и зависит от конкретной темы, потому что разработчики тем могут чудить как угодно - у них полная свобода в этом, в footer.php или header.php - может вовсе не быть HTML-кода в рамках которого вы и должны действовать. Тогда Вам придется поискать в коде других файлов нужное место для вашего блока и когда вы его найдете вставьте туда:
    <?php dynamic_sidebar("Мой блок"); ?>

    опять же если будете вставлять внутри php-кода, то дескрипторы <?php и ?> не нужны будут - иначе получите или ошибку или ненужные символы на сайте.

    на у далее идете в Внешний вид / Виджеты и там появится колонка с названием: "Мой блок" - добавляете туда нужный Вам виджет и всё - как-то так )

    Но! Без хотя бы минимальных знаний HTML и понимания как устроены темы WordPress изнутри будет сложно разобраться. Установить хотя бы тот же Sublime Text редактор, добавьте туда папку с Вашей темой и через Ctrl + Shift + F можно искать нужный вам HTML-кусок кода во всех файлах этой папки, так порой приходится изощряться чтобы найти куда создатели темы запрятали окружающий нужное мне место HTML-код.
    Ответ написан
    1 комментарий
  • Как обработать нажатие на кнопку клавиатуры бота, созданном на Telegram Bot API - PHP SDK?

    @easycode Автор вопроса
    не боюсь задавать глупые вопросы ))
    Как я понял в версии 2.2 этой библиотеки можно использовать только обычные текстовые кнопки без callback_data - для передачи которого нужно использовать inline кнопки.

    1) Нужно обновится до dev-версии, если через composer то вот так:
    composer require irazasyed/telegram-bot-sdk:dev-master

    2) Далее код несколько меняется:
    <?php
    
    use Telegram\Bot\Commands\Command;
    use Telegram\Bot\Keyboard\Keyboard;
    
    $telegram = new Telegram\Bot\Api('MY_KEY'); 
            
    $update = $telegram->getWebhookUpdates();
    
    // данные сообщения в зависимости от callback_query
    if ( isset($this->update['callback_query'])) {
        $message = $update['callback_query'];
    } else {
        $message = $update;
    }
    
    $chatId = $message['message']['chat']['id'];
    
    // правильно формируем клавиатуру:
    $keyboard = [
        [
            Keyboard::inlineButton(['callback_data'=>'/butt1','text'=>'Кнопка 1']),
            Keyboard::inlineButton(['callback_data'=>'/buut2','text'=>'Кнопка 2'])
        ]
    ];
    
    $reply_markup = $telegram->replyKeyboardMarkup([ 
        // 'keyboard' => $keyboard, // вместо этого используем:
        'inline_keyboard' => $keyboard,
        'resize_keyboard' => true, 
        'one_time_keyboard' => false 
    ]);
    
    
    // если нажали кнопку:
    if ( isset($this->update['callback_query'])) {
    	$telegram->sendMessage(array(
    	  'chat_id' => $chatId,
    	    'text' => "Вы нажали на кнопку с кодом: " . $message['data'], // именно в $message['data'] - будет то что прописано у нажатой кнопки в качестве callback_data
    	    'reply_markup' => $reply_markup,
    	));
    } else {
    	$telegram->sendMessage(array(
    	  'chat_id' => $chatId,
    	    'text' => 'Нажмите на одну из кнопок:',
    	    'reply_markup' => $reply_markup,
    	));
    }


    Может кому-нибудь еще пригодится )
    Ответ написан
    Комментировать
  • 1С Бухгалтерия не создает счет при загрузке заказов с сайта?

    @easycode Автор вопроса
    не боюсь задавать глупые вопросы ))
    УРА! Разобрался.
    Для начала очень важная настройка:
    5e21e894323cf924871177.png
    по причине её у меня не загружались заказы в 1Ске, а далее я взял образец XML с сайта: https://www.cs-cart.ru/docs/4.3.x/developer/1c/ord... и он подошёл:

    5e21ea0f43aa2430708347.png

    <?xml version="1.0" encoding="utf-8"?>
    <КоммерческаяИнформация ВерсияСхемы="2.03" ДатаФормирования="2020-01-17">
    <Документ>
    	<Ид>108</Ид>
    	<Номер>108</Номер>
    	<Дата>2020-01-17</Дата>
    	<ХозОперация>Заказ товара</ХозОперация>
    	<Роль>Продавец</Роль>
    	<Валюта>руб</Валюта>
    	<Курс>1</Курс>
    	<Сумма>140.00</Сумма>
    	<Контрагенты>
    		<Контрагент>
    			<Ид>62E1BAD5-97D9-4A6D-AE51-51DBD6780837</Ид>
    			<Наименование>New New</Наименование>
    			<Роль>Покупатель</Роль>
    			<ПолноеНаименование>New New</ПолноеНаименование>
    			<Фамилия>New</Фамилия>
    			<Имя>New</Имя>
    			<АдресРегистрации>
    				<Представление>520111, Российская Федерация, Красноярск, Красная</Представление>
    				<АдресноеПоле>
    					<Тип>Почтовый индекс</Тип>
    					<Значение>520111</Значение>
    				</АдресноеПоле>
    				<Контакты>
    					<Контакт>
    						<Тип>Почта</Тип>
    						<Значение>new@test.test</Значение>
    					</Контакт>
    					<Контакт>
    						<Тип>Телефон</Тип>
    						<Значение>+79512111111</Значение>
    					</Контакт>
    				</Контакты>
    			</АдресРегистрации>
    			<Представители>
    				<Представитель>
    					<Контрагент>
    						<Отношение>Контактное лицо</Отношение>
    						<Ид>62E1BAD5-97D9-4A6D-AE51-51DBD6780837</Ид>
    						<Наименование>Покупатель</Наименование>
    					</Контрагент>
    				</Представитель>
    			</Представители>
    		</Контрагент>
    	</Контрагенты>
    	<Время>17:12:09</Время>
    	<Комментарий/>
    	<Товары>
    		<Товар>
    			<Ид>FF0AB9DD-D3B4-4AC6-9C54-2A4CE415000D</Ид>
    			<Наименование>Nike "Untouchable" Women's Tank Top</Наименование>
    			<БазоваяЕдиница Код="796" НаименованиеПолное="Штука" МеждународноеСокращение="PCE">шт</БазоваяЕдиница>
    			<ЦенаЗаЕдиницу>25.00</ЦенаЗаЕдиницу>
    			<Количество>1</Количество>
    			<Сумма>25</Сумма>
    			<ЗначенияРеквизитов>
    				<ЗначениеРеквизита>
    					<Наименование>ВидНоменклатуры</Наименование>
    					<Значение>Товар</Значение>
    				</ЗначениеРеквизита>
    				<ЗначениеРеквизита>
    					<Наименование>ТипНоменклатуры</Наименование>
    					<Значение>Товар</Значение>
    				</ЗначениеРеквизита>
    			</ЗначенияРеквизитов>
    		</Товар>
    	</Товары>
    	<ЗначенияРеквизитов>
    		<ЗначениеРеквизита>
    			<Наименование>Статус заказа</Наименование>
    			<Значение>Принят</Значение>
    		</ЗначениеРеквизита>
    		<ЗначениеРеквизита>
    			<Наименование>Метод оплаты</Наименование>
    			<Значение>Заказ по телефону</Значение>
    		</ЗначениеРеквизита>
    	</ЗначенияРеквизитов>
    </Документ>
    </КоммерческаяИнформация>
    Ответ написан
    9 комментариев
  • Долгий wp_insert_post() при массовой вставке (создании) записей в WordPress - как ускорить?

    @easycode Автор вопроса
    не боюсь задавать глупые вопросы ))
    Решение найдено. Посмотрел в логи MySQL, а там куча запросов вида:
    SELECT post_name FROM wp_posts WHERE post_name = 'труляля-765' AND post_type = 'post' AND ID != 0 LIMIT 1

    далее в массиве для wp_insert_post обратил внимание на
    'post_name' => '',
    тот самый slug используемый в URL'е (ЧПУ WordPress'а).
    быстренько добавил генератор уникальных значений post_name и запросы полетели (максимум 0,5 секунд).
    Ответ написан
  • Как в PHP отделить HTTP-запросы из мобильного приложения PhoneGap от всех остальных?

    @easycode Автор вопроса
    не боюсь задавать глупые вопросы ))
    Решение:

    Использовать в config.xml строку:
    <preference name="AppendUserAgent" value="Ваше добавочное значение" />


    ну а далее в PHP на сервере смотреть на наличие этого добавочного значение в $_SERVER['HTTP_USER_AGENT']
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (314)