Задать вопрос
  • Как скрыть блок если поле src пустое?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Может просто не выводить картинку, если ее нет?
    Условно (php):

    if ($src) {
      echo '<img src="'.$src.'">';
    }


    Можно в css.
    Если отсутствие картинки выражается в пустом src, то так

    img[src=""] {
      display: none;
    }


    Если отсутствие src, то так

    img:not([src]) {
      display: none;
    }


    Ну и т.п. насколько фантазии хватит.
    Ответ написан
    1 комментарий
  • Правильно я планирую развернуть сеть из серверов?

    @neol
    Скорее всего (не видя код сложно сказать точно) корень вашей проблемы в том, что данные с сайтов получаются последовательно. В таком случае вам достаточно будет выполнять запросы параллельно с помощью https://docs.guzzlephp.org/en/stable/quickstart.ht... или https://www.php.net/manual/ru/function.curl-multi-...
    Ответ написан
    1 комментарий
  • Где можно ознакомиться с полным списком тегов CSS 3?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Теги - это все же про HTML, а не про CSS.

    А со всем, что есть в CSS, можно познакомиться на сайте W3C. Они заботливо делают странички с состоянием CSS на текущий год, где есть перечисление всего со ссылками на стандарты, где можно более подробно обо всем почитать. Но это такой источник информации для теоретиков, если хотите погрузиться действительно глубоко. На сайте MDN есть почти то же самое, но в формате, более ориентированном на практику, чем на теорию.
    Ответ написан
    1 комментарий
  • Делаются ли на практике подобные сайты?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Делаются ли на практике подобные сайты?

    Делаются. Рынок таких дизайнерский сайтов всегда был не очень большим, но он есть. Познакомиться с разными примерами таких сайтов можно на сайтах вроде Awwwards, CSS Design Awards, FWA и им подобных. В русскоговорящем сегменте интернета в целом таких проектов меньше, но они тоже есть. Ну и не все отправляют свои сайты на конкурсы, не всем это нужно.

    как у них осуществляется адаптив?

    С точки зрения разработчика - так же, как и на любом другом сайте. Никаких сюрпризов, только "уверенные знания CSS/SVG/JS/GLSL" должны быть в реальности, а не на бумажке.

    Из соседнего комментария: только проблема в том, что в 99% - всё это неюзабельное говно в красивой обертке

    Часто можно встретить такого рода сайты, красивые, но забагованные в край, и тормощящие настолько, что телефоны просто вешаются. Или мобильных версий вообще нет, т.к. не осилили в сжатые сроки. А бывает, что и на десктопах тормозит и лагает. Но тут вопрос больше к бизнесу - за сколько заплатили, то и получили. Если разработчики тянут, то остается дизайнер. Вот ему может быть сложно, и на самом деле не так много дизайнеров, которые могут что-то такое проектировать, чтобы и красиво, и адаптивно, и юзабельно одновременно. Нужен опыт. Нужно много чего знать, и, что важно, уметь слушать разработчиков на тему того, что можно, а чего нельзя сделать, и вести соответствующие переговоры с заказчиком. На рынке фриланса не раз видел заказы в духе "нам тут дизайнер все придумал, а мы теперь сделать не можем", или "мы что-то сделали, а оно грузится по пол минуты", а это вообще никак не сделать, чтобы нормально работало на реальном железе. Тут нужен был диалог между специалистами из разных областей, а его не было. Но опять же - за сколько заплатили, то и получили.
    Ответ написан
    Комментировать
  • Как вывести древовидные таксономии в списке ul wordpress?

    @vaajnur
    битриксоид
    наболевшая тема, почему нет в ВП по умолчанию, неизвестно. Могу предложить такое решение

    $category_id = get_query_var( 'cat' ); // Get current catgory ID
    $category = get_term( $category_id, 'category' ); // Fetch category term object
    
    // get_categories(['']);
    
    // Now, we check if the category has a parent
    // If it has, we use that ID
    // If it doesn't have a parent, it is a parent category itself and we use its own ID
    $parent = $category->parent ? $category->parent : $category_id;
    
    $args = array(
        'show_count' => false,
        'hide_empty' => false,
        'title_li' => '',
        'show_option_none' => '',
        'echo' => false
    );
    
    echo "parent: {$category->parent}";
    // echo "category_id: $category_id";
    // Show the children of parent category
    if ( $category->parent ) {
        $args['child_of'] = $category->parent;
        $args['exclude'] = $category_id; // Don't display the current category in this list
    }
    else {
        // $args['child_of'] = $category_id;
    }
    
    // $args['show_option_all'] = 'Все';
    $args['hide_empty'] = true;
    // Get the category list
    $categories_list = wp_list_categories( $args );
    
    if ( $categories_list ) {
        ?>
        <div class="category-wrapper">
            <ul class="child-categories">
                <?php echo $categories_list; ?>
            </ul>
        </div>
        <?php
    }
    Ответ написан
    Комментировать
  • Как убрать повторяющиеся слэши в .htaccess?

    Два коммента выше про:

    RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$
    и про
    RewriteCond %{THE_REQUEST} ([^\s]*)\/{2,}(\?[^\s]*)?

    Вы вообще сами проверяли как будет происходить редирект? А я отвечу, что станицы вида site.ru/page//// будут редиректиться сначала на site.ru/page/// потом на site.ru/page// потом только на site.ru/page/

    Потому как что (.*), что ([^\s]*) - жадные! Нужно указывать (.*?) и ([^\s]*?)

    Господа, проверяйте свой код прежде, чем рекомендовать кому то.
    Ответ написан
    Комментировать
  • Как быстро загружать массивы JSON?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Если это JSON'ы локальные, то держать их в базе данных.
    Если они берутся с удалённого сервера, то кэшировать их в БД, периодически загружая их туда отдельным скриптом.
    Ответ написан
    6 комментариев
  • Как делается кнопка "скопировать"?

    Get-Web
    @Get-Web Куратор тега JavaScript
    Front-End Developer
    Помимо своих костылей и современного апи, есть еще библиотека clipboard.js
    Ответ написан
    Комментировать
  • Как делается кнопка "скопировать"?

    @xIgoRx
    Можно на чистом js
    <script type="text/javascript" >
    function Copy(containerid) {
    	    let textarea = document.createElement('textarea');
    	    textarea.id = 'temp';
    	    textarea.style.height = 0;
    	    document.body.appendChild(textarea);
    	    textarea.value = document.getElementById(containerid).innerText;
    	    let selector = document.querySelector('#temp');
    	    selector.select();
    	    document.execCommand('copy');
    	    document.body.removeChild(textarea);
    }
    </script>
    
    <button onclick="Copy('toCopy')" title="Copy">Copy</button>
    <div id="toCopy">text to copy!</div>
    Ответ написан
    Комментировать
  • Как делается кнопка "скопировать"?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Ответ написан
    Комментировать
  • Как запретить менять тему на сайте?

    @alekcena
    Нелинейный наставник
    Никак. Это не зависящие от браузера обстоятельства.
    Ответ написан
    Комментировать
  • Как закрыть такие страницы от индекса?

    Grinvind
    @Grinvind
    Помогаю увеличивать трафик с поисковых систем
    Исходя из того, что среди примеров единственный паттерн, который присутствует, это "/безымянный", следовательно такие страницы можно закрыть в robots.txt, добавив правило:
    Disallow: */xn--90aigioga3id1b*
    (кириллицу в robots-e надо переводить через пуникод)

    Только проверьте, чтобы в тех урлах, которые вы не хотите закрывать от индексации не присутствовало в url вхождение "/безымянный".
    Ответ написан
    Комментировать
  • Как понять что сайт не упадет и не будет виснуть при определенном трафике?

    vabka
    @vabka Куратор тега Веб-разработка
    Зависит ли это от стека технологий?

    зависит буквально от всего.
    Может быть есть какие нибудь специальные тесты для проверки этого?

    Да, для этого существует нагрузочное тестирование.
    Провести его можно при помощи яндекс танка/jmeter/gatling
    Ответ написан
    2 комментария
  • Почему в google search console страница отображается некорректно?

    Вполне может консоль чудить, не успевает обработать стили и выдает такую штуку.
    Я бы проверял визуальщину в инструменте для проверки мобильных версий search.google.com/test/mobile-friendly?utm_source=mft&utm_medium=redirect&utm_campaign=mft-redirect&hl=ru&id=vfRDUawDf1oJyheHLYbyqg

    Я ошибки не заметил критичной. Пару раз проверил - всегда одинаково грузится.

    Имейте ввиду, также google может не грузить часть страницы, если медленный хостинг, ошибки js или заблокировано в robots.txt. У вас вроде в роботсе все норм, но можете и внимательнее посмотреть, потому что именно эти ошибки и запреты могут вести к разному виду страниц:


    С чем могут быть связаны непредсказуемые результаты проверок или проблемы с загрузкой страницы

    Если при загрузке страницы возникают неполадки (например, не удается обработать тот или иной ресурс), то при каждой проверке вы можете получать неодинаковые результаты. Это объясняется тем, что во время каждой проверки загружаются разные ресурсы. Если вы ничего не меняли, но при проверках на странице появляются разные ресурсы, выясните, показывается ли предупреждение о проблемах при загрузке страницы. Если предупреждение появляется, нажмите на него, чтобы узнать, почему страница загружается некорректно.


    Более подробно тут гугл расписал support.google.com/webmasters/answer/6352293#blocked-resources&zippy=%2C%D0%B5%D1%81%D0%BB%D0%B8-%D0%BD%D0%B0-%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B5-%D1%81%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B0%D1%82%D1%81%D1%8F-%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D1%8B%D0%B5-%D1%80%D0%B5%D1%81%D1%83%D1%80%D1%81%D1%8B
    Ответ написан
    Комментировать
  • Как убрать пустое пространство в навигации?

    LenovoId
    @LenovoId
    svg, css,js
    в фотошопе сотрите .... научить как ластиком пользоваться ?
    Ответ написан
    Комментировать
  • Как правильно посчитать макс. число в массиве?

    rozhnev
    @rozhnev Куратор тега PHP
    Fullstack programmer, DBA, медленно, дорого
    Используем array_column и max
    <?php
    $raw = '{
    	"lastUpdateId":4409859389,
    	"bids":[
    		["2.13000000","6472.90000000"],
    		["2.12900000","50106.20000000"],
    		["2.12800000","63127.60000000"],
    		["2.12700000","31495.40000000"],
    		["2.12600000","41493.30000000"]
    	],
    	"asks":[
    		["2.13100000","24755.90000000"],
    		["2.13200000","86227.50000000"],
    		["2.13300000","58302.20000000"],
    		["2.13400000","61187.90000000"],
    		["2.13500000","39494.50000000"]
    	]
    }';
    $data = json_decode($raw, true);
    $bids = array_column($data["bids"], 1);
    $asks = array_column($data["asks"], 1);
    
    
    echo "Max bid: " . max($bids) ,PHP_EOL;
    echo "Max ask: " . max($asks) ,PHP_EOL;


    Run PHP online
    Ответ написан
    Комментировать
  • Нужно ли и как обезопасить сайт-магазин?

    solotony
    @solotony
    покоряю пик Балмера
    если вам нужен (прямо сейчас) работающий интернет магазин, при помощи которого можно что-то продавать - воспользуйтесь готовым онлайн сервисом типа insales

    альтернатива - готовое решение на битриксе

    а если хотите "прокачать себя" - тогда действительно берите готовый движок магазина и ковыряйтесь в нем (только упаси вас бог от опенкарта) - лучше уж тот же самый woocommerce(wordpress) или Virtuemart (joomla)

    p.s. - делать магазин вручную - это хороший способ занять себя на пару лет и возможно неплохо изучить программирование
    Ответ написан
    Комментировать
  • Как вывести JSON данные на главную страницу wordpress?

    zkrvndm
    @zkrvndm
    Архитектор решений
    Попробуйте так:
    <?php
    
    header('Content-Type: text/plain; charset=UTF-8');
    
    $data = file_get_contents('https://site.com/json_config/count.json');
       
    if ($data !== false) {
        $arr = json_decode($data, true);
        echo "Из конфига получены следующие данные:\n";
        echo print_r($arr, true);
    }
    
    else {
        echo "Не удалось прочитать файл конфигурации!";
    }
    
    ?>
    Ответ написан