• Contact form 7 + popup почему перегружается страница?

    @sofia_karroll
    Нашла святого человека
    в шапку добавь wp_head() если не помогает, то в wp-config добавь define ('WPCF7_LOAD_JS', true или false );

    или вообще можно принудительно прописать в шапку:
    <script type='text/javascript' src='/wp-content/plugins/contact-form-7/includes/js/jquery.form.min.js?ver=твоя версия скрипта'></script>
    <script type='text/javascript'>
    /* <![CDATA[ */
    var _wpcf7 = {"loaderUrl":"\/wp-content\/plugins\/contact-form-7\/images\/ajax-loader.gif","sending":"Sending ..."};
    /* ]]> */
    </script>
    <script type='text/javascript' src='/wp-content/plugins/contact-form-7/includes/js/scripts.js?ver=твоя версия скрипта'></script>


    Это не мой ответ, но у меня это сработало. Нашла ответ этого святого человека здесь

    Я так поняла, что подобная проблема возникает, когда сам пытаешься написать шаблон. Мысль пришла, когда проверила работу contact form 7 на обычной теме из предложенных WP
    Ответ написан
    5 комментариев
  • Какой способ лучщий для авторизации REST API в сборке JS(клиент) и PHP(сервер)?

    @Alex_mc Автор вопроса
    Веселый препод :)
    В общем так, 2 дня шаманство и куча всяких бесполезных статей, я разобрался во всем.

    Внедрение довольно простое. только вместо cURL использовл AJAX.
    Скрипт на PHP , пояснения тут.
    Я не использовал последний пункт (Create an Authorize Controller), пока не понял для чего он. Если кто сможет, поясните.

    Теперь JS:

    1. Получаем токен через AJAX.
    $.ajax({
        url: "token.php", // Линк API обработчика.
        beforeSend: function(xhr) { 
          xhr.setRequestHeader("Authorization", "Basic " + btoa("testclient:testpass"));  // Логин и пароль по мануалу, заменить на свои после интеграции и сделать hash или md5 для пароля.
        },
        type: 'POST',
        dataType: 'json',
        data: {grant_type:"client_credentials"},
        success: function (data) {
          console.log(JSON.stringify(data.access_token)); // Проверка что токен получен. 
          localStorage.setItem('token', data.access_token); // Помещаем в LocalStorage для последующей проверки на других страницах.
          isAuth(data.access_token); // Запуск глобальной функции для проверки доступа, авторизирован или нет пользователь.
        }
    });


    собственно глобальная функция.
    function isAuth(token){
    		$.ajax({
    		    url: "resource.php",
    		    type: "POST",
    		    dataType: "json",
    		    //contentType: "application/json",
    		        data: {access_token : token},
    		    success: function (data) {
    		      console.log(JSON.stringify(data));
                          // Функция обработчик.
    		    }
    		});
    	}


    Все работает, теперь шаманить с конфигурацией и настройкой глобальных функций.
    Ответ написан
    Комментировать
  • Направление для развития в React?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Redux в React-разработке надо знать обязательно. Еще, хорошо знать MobX, так как все больше компаний используют его в новых проектах.

    Так же, вам стоит познакомиться с такими инструментами как:
    typescript
    webpack/babel
    react-router
    redux-thunk
    redux-act (имхо, лучшая упрощалка бойлерпелйта redux)
    styled-components
    reselect
    next/create-react-app
    axios
    react-helmet
    react-portal
    classnames
    eslint/tslint/prettier/lint-staged/husky
    jest
    express

    Перечисленные инструменты, кроме redux-act, используют в React-разработке чаще всего.
    Ответ написан
    1 комментарий
  • Стоит ли делать скрипт фриланс-биржы на Битрикс?

    dimonchik2013
    @dimonchik2013
    полковник Андрейченко
    зашквар

    лучше уж Вордпресс
    Ответ написан
    1 комментарий
  • Чужие фото для выдуманной работы в портфолио, можно ли вляпаться?

    Jump
    @Jump
    Системный администратор со стажем.
    можно ли вляпаться?
    Вляпаться можно когда угодно, и во что угодно.
    Ответ написан
    2 комментария
  • Чужие фото для выдуманной работы в портфолио, можно ли вляпаться?

    @Kostik_1993
    Fullstack Web Developer | PHP | Laravel | Vue.js
    Когда уже 1-е сентября, поскорее бы
    Ответ написан
    7 комментариев
  • Как написать хороший javascript для Битрикс компонента?

    WebDev2030
    @WebDev2030
    Битриксоид до мозга и костей
    Примерно так и делается. В компоненте bitrix:catalog.section со списком товаров уникальный ID для товара генерируется так:
    $uniqueId = $item['ID'].'_'.md5($this->randString().$component->getAction());
    //$item['ID'] - ID товара
    //$this->randString() - рандомная строка
    //$component->getAction() - по документации "Метод возвращает название текущего действия."
    
    //Ниже пример подключения JS к списку товаров
    $obName = 'ob'.preg_replace('/[^a-zA-Z0-9_]/', 'x', $this->GetEditAreaId($navParams['NavNum'])); //название переменной в которой, помещен JS-объект с логикой компонента.
    
    //Ну и создание объекта в который передаются параметры.
    var <?=$obName?> = new JCCatalogSectionComponent({
    		siteId: '<?=CUtil::JSEscape($component->getSiteId())?>',
    		componentPath: '<?=CUtil::JSEscape($componentPath)?>',
    		navParams: <?=CUtil::PhpToJSObject($navParams)?>,
    		deferredLoad: false, // enable it for deferred load
    		initiallyShowHeader: '<?=!empty($arResult['ITEM_ROWS'])?>',
    		bigData: <?=CUtil::PhpToJSObject($arResult['BIG_DATA'])?>,
    		lazyLoad: !!'<?=$showLazyLoad?>',
    		loadOnScroll: !!'<?=($arParams['LOAD_ON_SCROLL'] === 'Y')?>',
    		template: '<?=CUtil::JSEscape($signedTemplate)?>',
    		ajaxId: '<?=CUtil::JSEscape($arParams['AJAX_ID'])?>',
    		parameters: '<?=CUtil::JSEscape($signedParams)?>',
    		container: '<?=$containerName?>'
    	});
    Ответ написан
    Комментировать
  • Надо ли на собеседовании показывать академическую справку?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Многим нанимателям даже диплом не интересен, а справка об окончании одного курса не интересна вообще ни кому.
    Ответ написан
    Комментировать