Задать вопрос
  • Можно как-то вызывать определенный метод при обращении к несуществующему свойству?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    На сегодня только геттерами такое реализуемо.
    В скором времени должны появиться Proxy, там можно будет перехватывающие геттеры реализовывать, когда заранее набор свойств объекта неизвестен
    Ответ написан
    3 комментария
  • PHP7 и foreach. Коварное изменение?

    @nelson
    Читайте официальную документацию по переезду, там всё написано.
    php.net/manual/en/migration70.incompatible.php

    А именно, по вашему вопросу про foreach:
    foreach by-value operates on a copy of the array
    When used in the default by-value mode, foreach will now operate on a copy of the array being iterated rather than the array itself. This means that changes to the array made during iteration will not affect the values that are iterated.

    Перевод: в режиме foreach($arr as $v) - движок сначала сделает копию массива и будет проводить итерацию по копии. Даже если во время цикла вы сделаете $arr = [], то цикл всё равно пробежит до конца исходного массива, по всем элементам.

    То есть код теперь эквивалентен такому:
    $arr_copy = $arr;
    foreach($arr_copy as $k=>$v) {
    ...
    }
    за тем исключением, что к переменной $arr_copy вы не имеете прямого доступа.

    Это не значит, что переменная $arr внутри цикла начинает ссылаться на копию. Поэтому Ваш код будет работать.
    Вот если бы вы работали в цикле не только с текущим элементом, а например, и со следующими относительно текущего, изменяя или удаляя их, тогда поведение программы изменилось бы. Но я никогда не встречал подобного использования цикла foreach.
    Ответ написан
    2 комментария
  • Что значит "опыт верстки под битрикс, вордпресс и т. д."?

    Тут 2 варианта:

    1. Заказывают верстку, подразумевают создание шаблона/темы для CMS. По хитрости, по не знанию, по глупости - не важно. Важно не подписаться пилить это по цене только верстки.

    Верстка - это когда макет превращается в набор html/css/js файлов.

    Да, могут быть вариации. Может быть сразу под движок: Smarty, Twig, Jade, или все шаблоны в Handlebars, или сразу чтобы всё под Angular было. Но это всё частные случаи, требующие более высокой квалификации, или находящиеся уже где-то во front-end разработке.

    2. Просят учесть особенности CMS.

    Маленьких нюансов может быть много.

    Вот Битрикс, например, и его Эрмитаж (тыкнул в блок - тут же его отредактировал если по простому). Где-то лишняя обертка элемента, чтобы в режиме редактирования не разваливалось. Везде - z-index меньше 1000, чтобы Эрмитаж не перекрывало.

    Wordpress вообще генерирует огромное количество своих классов. Взять те же навигационные меню. Использовать их = наплевать на все эти ваши БЭМ и прочее.
    И т.д.

    Если я верстал и без проблем натягивал свои макеты на Wordpress - могу ли сказать что у меня есть опыт верстки под Wordpress?

    Могу.
    Так же как могу сказать что есть опыт верстки под Drupal (не знаю натягивали ли какие-то из моих работ на Drupal, но чё бы нет).

    Правда нет гарантии что человек, который будет натягивать мою верстку, не затупит например с
    .nav
        .nav__list
            .nav__item

    Когда ему движок выдаст меню в виде
    .menu
        ul
            li

    Но я не считаю это своей проблемой.
    Когда понадобилось, оказалось нет ничего сложного 1 раз потратить время и написать свой вывод меню в Wordpress, чтобы можно было любую верстку натянуть. Почему так не может сделать тот кто натягивает? Почему в ТЗ об этом не предупредили?

    Уменьшает ли "опыт верстки под CMS" время верстки?
    Если не были оговорены нюансы (те же меню WP) - то нет.
    Может увеличиться время натягивания верстки на движок, но это уже проблемы заказчика, который не озвучил требования заранее.

    Таким образом, хотя в идеале на движок должно быть возможным натянуть любую верстку, действительно некоторые имеют CMS особенности.
    Об этих особенностях следует договариваться заранее. Должно быть конкретное ТЗ на верстку.
    В остальном как правило речь об "опыте верстки под %CMS%" - просто болтовня.
    Ответ написан
    Комментировать
  • Области применения JS в современном IT?

    @nirvimel
    Кроме js вы пробовали только php, и этот горький опыт заставил вас остановить свой выбор на js? Не стоит на таком примере делать выводы обо всех других языках. В сфере профессионалов принято не подыскивать новые задачи под единственный известный язык, но, наоборот, подбирать (и изучать при необходимости) язык исходя из стоящих задач. Прежде чем останавливать свой выбор на каком-то конкретном языке или стеке технологий вам нужно сначала определиться с тем кругом задач, о области которых вам интересно работать, и потом подходить к выбору инструментов для решения этих задач. Все зависит от того что вас интересует: web-разработка, фронтэнд, бекэнд, десктопные приложения или мобильные, разработка игр, больше/меньше заниматься пользовательским интерфейсом, может быть, системное программирования?
    Ответ написан
    7 комментариев
  • Как сделать модальное окно с компонентом в битрикс?

    reaferon
    @reaferon
    1. Создайте новую страницу без подключения header & footer. Просто в начале файла укажите
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
    после чего вставьте код вызова нужного компонента.
    2. При вызове модального окна укажите этот файл в качестве источника. Например, bootstrap вызывает примерно так:
    <a class="btn" data-toggle="modal" href="remote.php" data-target="#modal">Click me</a>

    3. В принципе, Ынджой
    Ответ написан
    1 комментарий
  • Наше доменное имя и сайт 18+ тематики, как поступить?

    @JohnJon
    Как поступить? контента он генерирует не слабо (судя по яндекс картинкам)


    Закрыть веб-студию и заняться зарабатыванием денег. Теперь вы знаете как.
    Ответ написан
    1 комментарий
  • Наше доменное имя и сайт 18+ тематики, как поступить?

    @mantyr
    Пишу много Golang кода с удовольствием:)
    Отличный повод для PR. Слоганы такие "Мы не порно-сайт, но сайты делаем не менее интересными:)". Вообще от вас зависит что вам удобно или нравится. Проведите анкетирование у клиентов - предложите им пять-шесть других доменов и названий. С другой стороны - всё равно у кого там какой домен похожий на ваш - если ваш товар или услуга того стоит то ничто не помешает.
    Ответ написан
    Комментировать
  • Наше доменное имя и сайт 18+ тематики, как поступить?

    pozZzitiv
    @pozZzitiv Куратор тега Дизайн
    Дизайнер и перфекционист
    Эх, надо было погуглить и выкупить домены в других зонах)) Хотя, название для студии тоже следовало выбрать более тщательно))) Скажите хоть название, заинтриговали же!
    Делайте себе сексуальный слоган и обменяйтесь ссылками с тем сайтом, пусть траффик вам гонят. Ведь любители «клубнички» это такие же потенциальные заказчики)
    Ответ написан
    Комментировать
  • Стандартные браузерные сообщения?

    Ivanq
    @Ivanq
    Знаю php, js, html, css
    Никак. У поля стоит атрибут required. Можно только его убрать и обработать js. А js покажет div с сообщением об ошибке, который вы настроите сами.
    Ответ написан
    2 комментария
  • Как узнать расположение файла php отвечающего за блок?

    motokraft
    @motokraft
    Кратко о себе
    Для начала надо знать примерное место расположения файла. Но если не знаешь то ищи по всему сайту...
    Ищи в файлах по уникальному отрезку исходного кода.

    как узнать расположение файла php отвечающего за блок

    Так сложно сказать как найти, каждый ищет по своему...
    А что хочешь найти и где???
    Ответ написан
    Комментировать
  • Вопросы по быстродействию + Какую базу лучше всего использовать?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    все зависит от того что вы с этими данными делать будете. Если просто хранить - то выдержит конечно. Если делать сложные выборки - то зависит от нагрузки и количества запросов а так же расставили вы индексы или нет ну и все такое. Ну и для такой выборки памяти под индексы надо прилично и тюнить настройки mysql.

    Если вас интересует как ускорить запись - можно сначала загонять все в буфер (redis например) и потом пачками заносить все в базу.

    Если интересует как ускорить чтение - кеширование, индексы, агрегация штуками типа elasticsearch. Но опять же только если у вас есть проблемы с производительностью. Не занимайтесь преждевременной оптимизацией. Сначала напишите нагрузочные тесты и посмотрите насколько все плохо и надо ли что-то делать.
    Ответ написан
    1 комментарий
  • Какие библиотеки для конвертации цвета самые быстрые?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    о скорости работы различных библиотек


    Вообще-то там простая формула и она... ну как бы одинаково работает для всех в пределах одного языка программирования.
    Ответ написан
  • Какой футер для сайта?

    Therapyx
    @Therapyx
    Data Science
    По мне так, "вся" информация, которая должна меня заинтерисовать в плане покупок, должна находится в шапке. В футере же обычно находится
    - контактная информация
    - копирайт
    - как проехать к магазину
    - вакансии
    - о вас
    - FAQ,
    - методы оплаты итд
    В футер обычно заглядывают в том случае, когда надо копать глубже, т.е. клиента интерисует не только найти товар и нажать кнопочку "заказать". Поэтому все что касается удобства в плане покупок для клиента должно быть видно СРАЗУ. Вот серьезно иногда так бесит, когда важную информацию куда-то шкерят :)
    Ответ написан
    Комментировать
  • Как улучшить header?

    * {
        box-sizing: border-box;
    }

    Но лучше для этого иметь спиленный под себя ресет.

    Зачем нужен header_block?
    Зачем пустой wrapper?

    Я не даю советов, но задаю вопросы, дабы увидеть твою логику и понять где именно она порочна.
    Ответ написан
    1 комментарий
  • Битрикс. Как передать результат работы компонента в header.php шаблона?

    В header.php:
    <?php $APPLICATION->ShowViewContent('var-x') ?>

    B template.php компонента smartfilter:
    $arResult['VAR_X'] = $x;
    
    // some code
    
    $this->__component->setResultCacheKeys(array('VAR_X'));


    B component_epilog.php компонента smartfilter:
    $APPLICATION->AddViewContent('var-x', $arResult['VAR_X']);
    Ответ написан
    5 комментариев
  • Почему не выводятся разделы инфоблока?

    @warenikov
    Александр Вареников
    echo $arRes["NAME"];

    $arRes - это массив с разделами, если функция CIBlockSection::GetList отработала правильно.

    А вообще возьмите себе вот такую функцию для дебага и вывода массива на экран, мне помагает всегда:
    /**
         * @param array $what
         * @param bool $exit
         *
         * Вывод массива на экран.
         * Если $exit равен true - завершаем выполнение.
         */
    function pre($what, $exit = false)
        {
    	    if(count($what) == 0){
    		    echo "array is empty";
    		    return false;
    	    }
    
            echo '<pre>';
            print_r($what);
            echo '</pre>';
            if($exit) exit;
        }
    Ответ написан
    Комментировать
  • Какой тип ЧПУ будет предпочтительнее для русскоязычного сайта?

    kopcap_va
    @kopcap_va
    SEO Consultant
    Если у вас аккуратные англоязычные ЧПУ/транслит - устраивать переход на кириллический вариант не считаю правильным.

    Вообще, если у вас кириллический домен - смысл использования кириллицы в урл есть, а если домен с латинскими символами, то смешивать в URL кириллицу с латиницей я бы не стал.

    Хотите выделение URL в выдаче - лучше сделайте правильный транслит в ЧПУ.
    Ответ написан
    Комментировать
  • Первые шаги с MVC?

    Всё можно
    Ответ написан
    Комментировать
  • Разница между display:none и jQuery hide()?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Прочтите исходник, открыт же весь код
    Ответ написан
    Комментировать