• Каким способом лучше запоминать значения фильтра?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Параметры фильтра должны храниться в адресной строке. Причин несколько, это удобство пользователю, удобство отладки, возможность перехода из рассылок сразу к нужной категории и параметрам товаров(например, если пользователь решил сделать рассылку на интересующие его характеристики товаров, опять же, если такая фича есть) или просто дал ссылку другу на указанные товары. Адресная строка не обязана быть человеко читаемой, но желательно. Для этого url и есть - сделать запрос на сервер и получить от него указанные данные.
    Ответ написан
    Комментировать
  • Как правильно написать рекурсию для древовидных категорий?

    @Arik
    ?
    public function index()
    {
        $categories = ...;
        echo self::getTree($categories);
    }
    
    public static function getTree($categories, $parent_id = 0) // или null, смотря что по дефолту
    {
        $result = '';
        foreach ($categories as $category) {
            if ($category->parent != $parent_id) {
                continue;
            }
    
            $result .= sprintf('<li><a>%s</a>%s</li>',
                $category->name,
                self::getTree($categories, $category->categories_id) // или $category->id, смотря где там id
            );
        }
    
        return $result ? sprintf('<ul>%s</ul>', $result) : '';
    }
    Ответ написан
    3 комментария
  • Как в функцию $() передать переменную?

    v3shin
    @v3shin
    Веб-шаман
    У jQuery нет своего "особенного" синтаксиса: это все js (а выборка селекторов - css).
    var item = $('[data-item="' + id + '"]');
    var item = $(`[data-item="${id}"]`);
    Ответ написан
    Комментировать
  • Как в html вывести переменную из js?

    sergiks
    @sergiks Куратор тега JavaScript
    ♬♬
    У вас же там просто строка текста собирается, ну..
    '<label class="component-input-checkbox-label" for="">' + html.data['name'] + '</label>\n' +
    Ответ написан
    1 комментарий
  • Как установить свою кнопку в slick?

    Попробуйте так:
    js

    $(document).ready(function(){
        $('.block-slick').slick({
            prevArrow: '.prev',
            nextArrow: '.next'
        });
    });


    html

    <div class="prev">Левая кнопка</div>
    <div class="next">Правая кнопка</div>
    Ответ написан
    1 комментарий
  • Как выбрать SEO компанию?

    Kadzi
    @Kadzi
    Ом
    Существует сто плохих способов запускать SEO и один хороший.
    Этот способ я называю лестница мудрости.

    Обычно, процесс разработки выглядит так:

    Рисуется говнодизайн → ыыыы надо прадвигадь! → приходит сеошник, в лучшем случае, не расп*здяй и сообщает: структура не полная, нужны новые разделы → оказывается, что так называемый дизайнер в принципе не учел, что такое может быть и вёрстка ломается, нужно дорисовывать и учитывать это в том числе, в мобильной версии (которая обычно, в 90% случаев выглядит как ГОВНО) → и вот долгожданный трафик! Прошло 3 месяца, стало миллиард посетителей, нооооооо.... продажи увеличились на 0 целых х*й десятых. Тут, внезапно всех осенило: хммм, дело в юзабилити и текстах! (при этом мало кто понял, что за юзабилити) → ищется копирайтер-редактор-маркетер-контентщик, который прочитал Ильяхова ииииии.... проходит ещё пол года, пока уважаемый клиент согласует текста → последний этап это осадок: клиент не доволен. Исполнитель сливается/его сливают. Рекламная кампания с горе пополам окупается, но не более того, а если более того, то все равно не устраивает клиента.

    У настоящего исполнителя всегда есть свой личный метод. Доверять нужно тем, кто проявляет заботу, озвучивает неудобную правду и, проактивен.

    Настоящий исполнитель понимает, что клиент пришёл с негативным опытом и кашей в бошке. Его задача, провести за ручку и объяснить, как так вышло.

    Лестница мудрости:

    Собрать СЯ → ключи разбить на разделы по экономике, доступности и логике, что не было в ключах — понять, дописать → понять, что важно в первую очередь экономически, создать смысловую карту всех разделов и услуг → найти нормальный хостинг, учесть рост трафика с технической точки зрения, придумать хорошее доменное имя, при покупке — проверить историю и громоздкость → составить экономику контента: в чем полезное действие? сроки, стоимость → проектирование взаимодействия: дизайнер получает от семантика кластеризацию запросов и структуру сайта, которую клиент утвердил с семантиком. Рисуются макеты, изначально учитывающие такие ситуации как: расширение структуры меню и разделов, переполнение контента, добавление в структуру страниц новых блоков, мобильный трафик. Изначально готовится гайдлайн для фронта: чтобы изначально весь код был оптимизирован для SEO → вёрстка с учётом скорости загрузки страниц (+уже заранее нашли норм хостера) → настройка админки (изначально согласовать оптимальный вариант под проект) → запуск любой рекламы

    Такой подход позволяет изначально делать сайт конкурентным, повышая изначально успех рекламной кампании.

    С одной из компаний работал 2 года. Паралельно велся контекст с другой компанией. По SEO за это время трафик вырос до 4,5 к посетитилей.


    если сайт коммерческий, то все эти миллионы-миллиарды трафика не имеют никакого смысла. Мерило успеха: заинтересованность и конверсии. Не пишу, что конверсии продаж, так как странно требовать конверсию продажи от сеошника, есть факторы: цена у клиента дорогая, сайт говно, продукт параша и т. д.

    Те кто в ТОП в Украине говорят, надо больше 12 месяцев для вывода сайта на позиции 5к, другие говорят, что уже за 5 месяцев я получу много трафика, а их клиенты обычно выходят в окупаемость за 2 - 6 месяца.


    Окупаемость чего? сео продвижения? Это в мире исполнителя, а не клиента. Клиенту от этого 0 пользы.

    Так же есть страх, что если SEO компания обладает своей сеткой сайтов, на которых они закупают для меня анкорные ссылки, то при прикращении работы с ними, все продвижение улетил в небытие.


    В свое время я сказал клиентам: закупать все ссылки будем с ваших аккаунтов, но, если вы будете каждый раз спрашивать за каждую ссылку, все перенесем обратно на свой аккаунт и, будем присылать скриншоты по запросу. В этом был рычаг: сеошники ругаются с клиентом и уносят все наработки с собой, в том числе контекстная реклама.

    На какие критерии отриентироваться?


    Ориентироваться на вопросы со стороны исполнителя. По вопросам станет понятно, с кем имеем дело. Нет вопросов, но есть обещания — звоночек. В 2019 уже очевидно, что просто SEO не достаточно, нужно решать проблемы скоростей сайта, говнодизайна и доступности.

    Настоящий исполнитель знает, что он НЕ умеет делать. Например:

    — Митрофан, мы посмотрели тематику сайта и спрос. SEO решит такую-то задачу, но сейчас сайт не подготовлен: страницы весят много, грузятся долго, текст паршивый а интерфейс непонятный (прикладываем пруфы). Год назад мы работали с аналогичным сайтом 7 месяцев и не показали результат: трафик был, а конверсия не выросла. Мы разобрались что нужно было сделать и предлагаем сначала отработать то-то а потом SEO. Мы заметили, что услугу спрашивают вконтакте, но мы не занимаемся SMM

    и так далее.

    Если клиент с коммерческой жилкой он сразу чует: ему не пытаются продать и впарить.
    Если клиент зомби, то никакие здравые аргументы в замусоренное сознание не дойдут: смотреть будет только стоимость, только сроки и только обещанные триллионы никому нахрен не нужного трафика.

    Люблю приводить пример с палаткой на рынке. Вот ваш сайт это палатка фруктов на рынке. Вот вы поставили задачу: приведите 100500 клиентов. Привели.

    Лампочка перегорела, продавец хам, фрукты плохо расставлены и не свежие, ценники не весят. Весы поломаны. Что тут решает трафик? Ничего. Все как пришли, так и ушли. Сначала подготовить ресурс, потом любая реклама (-:
    Ответ написан
    2 комментария
  • Как вывести данные из связанной таблицы в Laravel?

    usdglander
    @usdglander
    Yipee-ki-yay
    в виде
    foreach ($items as $rubric) {
        $rubric->news->map(function ($post) {
            echo $post->title;
            //Ну и остальные поля новости. Какие они там у вас.
        });
    }
    Ответ написан
    2 комментария
  • Как вывести данные из связанной таблицы в Laravel?

    @jazzus
    В Rubric
    public function news()
    {
         return $this->belongsToMany('App\News', 'news_to_rubric', 'rubric_id', 'news_id');
    }

    в контроллере
    $rubrics = Rubric::with('news')
                       ->get();

    в шаблоне
    @foreach ($rubrics as $rubric)
      {{$rubric->name}}
          @foreach ($rubric->news as $news)
               {{ $news->name }}
          @endforeach
    @endforeach
    Ответ написан
    5 комментариев
  • Можно ли через wp_query обратиться к кастомному полю в wp_posts?

    deniscopro
    @deniscopro Куратор тега WordPress
    WordPress-разработчик, denisco.pro
    Здравствуйте.
    Вы добавили новую колонку в wp_posts?
    Переделайте через произвольные поля и сможете сортировать с помощью стандартного WP_Query.
    Ответ написан
    6 комментариев
  • Как сделать, чтобы выводились все записи, когда год не выбран?

    sanek_os9
    @sanek_os9
    Работаю с Laravel, Vue, Vuetify, AWS Amazon, Linux
    у вас второй вопрос отвечает на первый
    $params = $year ? ['key' => 'year', 'value' => $year] : [];
    $res = new WP_Query(array(
            'meta_query' => array(
                   $params
             )
        )
    );
    Ответ написан
    Комментировать
  • Почему класс добавляется к каждому элементу цикла, а checked только последнему элементу?

    neuotq
    @neuotq
    Прокрастинация
    Если я верно собрал, все работает.
    <ul>
      <li class="genre-comedy">
                    <input class="input_box" type="checkbox">
                    Комедии</li>
      <li class="genre-drama">
                    <input class="input_box" type="checkbox">
                    Драмы</li>
      <li class="genre-horror">
                    <input class="input_box" type="checkbox">
                    Ужасы</li>
    </ul>

    var checkboxMap = ['genre-comedy','genre-drama'];
    for (var i in checkboxMap)
     {           // console.log('.'+checkboxMap[i]);
                $('.'+checkboxMap[i]).addClass('selected');
                $('.'+checkboxMap[i]+' input').attr('checked', 'true');
        }
    Ответ написан
    1 комментарий
  • Как через Jquery установить атрибут checked?

    .prop

    Properties generally affect the dynamic state of a DOM element without changing the serialized HTML attribute. Examples include the value property of input elements, the disabled property of inputs and buttons, or the checked property of a checkbox. The .prop() method should be used to set disabled and checked instead of the .attr() method.
    Ответ написан
    5 комментариев
  • Как передать get параметры в Url?

    Пример:
    http://mysite.ru/?a=2&b=3
    И в скрипте параметры можно получить так:
    <?php $c = $_GET['a'] + $_GET['b'];
    Ответ написан
    3 комментария
  • Почему когда я вешаю запрос на форму, то в ответ приходит error, а когда на див, то success?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    есть предположение что при клике на кнопку срабатывает форма и перезагружается страничка, так как нужно "выключить" ее обычное поведение если вы работаете с аяксом. Смотрите как использовать preventDefault(). У дива такого поведения нет, по этому все ок. Есть вариант убрать type="submit" из кнопки, тогда скорее всего все будет нормально работать без дополнительных танцев с бубном.
    Ответ написан
    1 комментарий
  • Как создаются браузерные игры?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Недостаточно данных, какую именно игру хотите? Например, Годвилль ничем не отличается от обычного SPA. Если что-то должно бегать-прыгать-взрываться, то надо смотреть на игровые движки (phaser.io, CraftyJS), писать будете на JS или TypeScript. Если 3D — BabylonJS или PlayCanvas. Не исключен вариант с конструкторами типа ClickFusion или Construct 2, которые умеют публиковать в веб, тут вообще программирование мышкой. Unity 3D тоже умеет публиковать в веб. Еще многообещающий инструмент Blend4Web.
    Ответ написан
    2 комментария
  • Как в Wordpress реализовать заполнение данных и их вывод из бд по блокам?

    @666Wolf666
    Правте нужный вам файл, получайте данные функциями, которые описаны в документации.
    Для того, что бы выводить страницу записи, то вам нужно single.php.

    ACF - для произвольных полей.
    Очень просто плагин и удобный: как им пользоваться есть море информации.

    А вообще лучше изучите произвольные типы данных в WP.
    Ответ написан
    2 комментария
  • Как сделать сайдбар в WP с сортировкой рубрик по нескольким значениям?

    VasyaPertrov
    @VasyaPertrov
    Изготовление и безопастность сайтов. WP и др.
    1. Сайдбар - это область темы. В нем нельзя ничего сортировать или что-то делать. В нём можно только выводить. Вставлять виджеты напр, которые уже будут делать то, что ты хочешь

    2. Что бы что-то сортировать нужно эти критерии как-то заносить. И только потом уже можно решать как сортировать.

    3. Тебе нужна фильтрация, а не сортировка. Сказанное в п2 справедливо и для фильтрации.

    4. Для фильтров есть масса плагинов в оф. каталоге.
    Ответ написан
    5 комментариев