• Блоги об IT+путешествиях?

    opium
    @opium
    Просто люблю качественно работать
    как всегда жалкий фрилансер зарабатывающий еле еле тыщу баксов в месяц
    pumainthailand.com
    Ответ написан
    2 комментария
  • Какую структуру выбрать для своей CMS?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    И вот задумался - какую структуру для неё выбрать?


    дерево
    Ответ написан
  • Как разрабатывать в жару без кондиционера и не сойти с ума?

    dintsec
    @dintsec
    Маркетолог, копирайтер
    12d910b4946742148e403769014c5ae8.jpg Как-то так...Жара 38, Волгоград.
    Ответ написан
    Комментировать
  • Есть ли в интернете литература на тему ООП PHP?

    Мэтт Зандстра. "PHP. Объекты, шаблоны и методики программирования"
    Ответ написан
    Комментировать
  • Как добавлять записи через сайт с произвольными полями без регистрации на WordPress?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    добавляете на страницу кнопку, кнопку вызова модального окна, в него вставляете форму с необходимыми вам полями, дальше все просто, отправляете форму в обработчик, в нем делаете
    update_post_meta('ID записи','ключ поля' ,'значение поля' );
    Ответ написан
    5 комментариев
  • Как стать верстальщиком в краткие сроки?

    bukinion
    @bukinion
    1) ...может скринкаст какой-то, может туторил крутой.
    Тут верно говорили, Sorax. Sorax наше все))) еще под мышку HTMLbook, разобраться хорошо с флотами и инлайн-блоками. Нравится сайт с реальными современными примерами кодропс. Там правда больше про фишки и украшайзинги в UI с помощью CSS, временами и с JS.
    Скринкастов по реальной верстке нет... Только практика, с ней и эрудиция, и доля воображения при реализации нетривиальных вещей, или наоборот простых вещей нетривиальным способом. Дорогу осилит идущий.
    2)...необходимые технологии и вещи, которые нужны...
    За день освоить yeoman, посомтреть его генераторы, позапускать, понастраивать, посмотреть структуру генерируемых проектов, он очень простой, с ним сразу grunt/gulp с базовыми настройками, что для простых проектов полностью хватает, тем временем и посмотрите как работают они. Bower аналогично, если есть клиентские зависимости, сам менеджер быстро изучается: пару команд в консоли. Да-да, всего лишь нужны знания консоли и базовый js, все это просто, изучил когда в js полным нубом был, просто не боялся, многие просто шугаются с ними связанного страшных слов: node.js, npm. Часто эти люди бэкэндщики (умора*2). Раннее, быстро подсел на препроцессоры и шаблонизаторы, лайврелоады, теперь без этого не могу, тогда просто пользовался GUI, навроде препроса.
    Подытожу, что без препроцессоров и шаблонизаторов этот пункт можете оставить до лучших времен.
    3)...чистый css без bootstrap?
    Бутстрапп знаю, но юзаю фаундейшн, почти любой проект начинаю с yoeman генератора для нее, всегда работаю с SCSS, поэтому просто выключаю ненужные компоненты и все, зачем заново придумывать ту же сетку?! Или искать нормалайз (не юзайте эрик майеровский reset — моветон), он там включен? Правильно, если человек юзает CSS версию бустраппа, то он тянет как правило все, а стоит? там под 110 КБ в минифицированной версии. Кстати бустрапп, по словам Otto, в 4ой версии с less перейдет на SCSS, это серьезная заявочка в миру CSS-процессинга, к слову, порт SCSS есть давно.
    Просто если вы будете юзать основные компоненты бустраппа, то велик шанс, что вашу верстку в последствии, не перезапишут, подключив к ней еще бустрапп, а такое бывает, мало того бывало, что писал на фаундейшн, так потом обнаруживал еще и подключенный бутстрапп, человек (в данном случае бэкендер) просто не хотел вникать фаундейшн, да и бутстрапп, он то немногим лучше знал)))
    Масштабирование и поддержка проектов лучше, как никак бустрапп стандарт де-факто, как и джикьюери. Про то что дизайн похож как один, ну так, а для того и есть препроцессоры)) Если изучить архитектуру фреймворка, то кастомизировать их можно до полной неузнаваемости.
    Не, ну конечно, можно забавы ради в разные проекты таскать разные компоненты или бойлепрлейты (вроде Skeleton можете посмотреть), только кто потом в них вникать будет?! Гораздо проще минимизировать один любимый фреймворк, а остальное дописать вручную.
    Кстати, про CSS? из личного опыта, после SCSS не могу себя заставить писать простой CSS, хоть убей)) К хорошему быстро привыкаешь.
    4) ...foundation?
    Отчасти выше затронул, вообще, она гораздо сложней того же Бустраппа. Кратко изложу почему, как то уже анализировал подробно:
    На первый взгляд как клавесин и рояль)) Фаундейшн, более гибкая, и более сложная, поэтому и исходники SCSS это что-то по сравнению с бутстраппом. Если же не вдаваться в препроцессорные архитектуры и возможности кастомизации, то они мало чем различаются, оба mobilefirst, ну только сетка в бутстраппе адаптивная(можно переопределить), а в фаундейшн отзывчивая. Ну из ключевых моментов, фанудейшн на rem, и это неисправимо, но исключительно в духе RWD и правильной типографики, в то время как бустрапп на пикселях. Если интересно почитайте по ссылке, там как раз курс по фаундейшн (сам не смотрел))).
    5) ...с обычной верстки на адаптивную?
    Вы в этом плане в выигрышном положении, особенно по сравнению с теми кто еще с таблиц начинал. Многие тогда и закостенели, так как RWD требует большей гибкости ума, и поменьше пикселов. Поищите на эту тему презентации (там просто херов мешок с ссылками и прочими, на видео он и половины не успевает осветить) и конфы (есть и на русском, например, или тут 3-е видео) Виталия Фридмана из Smashing Magazine, он выдает самые сливки по теме, также касаясь бэкэндерской стороны и плотно.
    6) ...задания, которые постепенно вводят в мир верстки
    Сверстайте Тостер)) Он кстати адаптивный ;)
    Ответ написан
    Комментировать
  • Как вывести миниатюру категории WooCommerce?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    $thumb_ID = get_woocommerce_term_meta( $cat->term_id, 'thumbnail_id', true );

    Пример вывода
    wp-panda.com/woocommerce_posts/woocommerce-display...
    Под свою задачу слегка модифицируйте
    Ответ написан
    3 комментария
  • Не оплатили отработанный месяц. Как поступить?

    Jump
    @Jump
    Системный администратор со стажем.
    Если вы были официально трудоустроены, либо был договор - в суд.
    Если нет - на нет и суда нет. Видимо вам нравиться работать бесплатно.
    Ответ написан
    4 комментария
  • Сколько времени должна занимать верстка этой страницы у опытного верстальщика?

    @raiboon
    Достаточно простой макет. Такие должны занимать < 8 часов. Если разрешено использовать css-фреймворки и того меньше, да ещё и с адаптивностью.
    Но +1 к вопросу от chlp - если вам сказали вот сайт, сверстай нам так же, то это будет подольше. Некачественный макет в фотошопе - опять дольше, пока разберешься.
    Ответ написан
    Комментировать
  • Как собрать команду "за идею", не слив проект на общее обозрение?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Идея не стоит ничего. Запомните это. Теперь, допустим, что это не так. Вы обладаете уникальной информацией и считаете, что она стоит много денег, за счёт того, что ожидания от неё очень позитивные. Вы пилите, пилите, пилите. Запилили, и идея оказалась действительно крутая, все про вас узнали. Через неделю у вас уже будет минимум два конкурента, у которых есть деньги. И где вы, которые без денег? Правильно, вы не спереди, вы сзади. За примером далеко ходить не надо - виджеты дозвона на сайт, чат-виджеты на сайт и т.д.
    Поэтому смело идите к таким же, как и вы, со своими "супер взрывными идеями лишь бы не украли" в какой-нибудь инкубатор и клянчите денег наравне со всеми.
    Ответ написан
    3 комментария
  • Как читать строку на php?

    slashinin
    @slashinin
    Задачи для PHP https://justcoding.ru
    PHP отличный язык на котором можно реализовать практически любой алгоритм.
    В первом случаи вы можете использовать функцию explode с разделителем в виде пробела, получите массив на выходе ровно в том порядке, в котором идут слова. А дальше обрабатывайте массив как угодно.

    Во втором случаи можно так же использовать explode только при переборе массива учитывать начало и конец заголовка, выставлять флаг начала и флаг конца тега.

    Все в ваших руках.
    Ответ написан
    1 комментарий
  • Как правильно в Wordpress реализовать 2-уровневое меню-фильтр товаров?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    ajax + wp_Query на пальцах досконально не объяснить
    но примерно так

    получаем категории в селект
    $terms = get_terms("category_tow");
     $count = count($terms);
     if($count > 0){
    	 echo "<select id='category-tow'>";
    	 foreach ($terms as $term) {
    	   echo "<option value='" . $term->term_id ." '>" . $term->name. "</option>";
    
    	 }
    	 echo "</select>";
     }

    аналогично для брендов

    дальше запуск по смене селекта
    $('#category-tow').change(function(){
    var data={
             action: 'sort_action',
            security: Ajax.security,
            cat : $(this).val()
    }
    $.post(Ajax.ajaxurl, data, function (response) {
                    тут разбираете response и пишете в нужные места
                });
    
    });


    обработчик
    add_action( 'wp_ajax_sort_action', 'sort_action_callback' );
    add_action( 'wp_ajax_nopriv_sort_action', 'sort_action_callback' );
    function sort_action_callback() {
        check_ajax_referer( 'my-special-string', 'security' );
    
        $data_brend = $_POST['cat'];
        $args = array(
            'post_type' => 'products',
            'tax_query' => array(
                'relation' => 'AND',
                array(
                    'taxonomy' => 'category_tow',
                    'field' => 'id',
                    'terms' => array($data_brend)
                ),
                array(
                    'taxonomy' => 'brend_tow'
                )
            ),
        );
    
    my_query = new WP_Query($args);
    /* тут ваш цикл  */
    // при этом для каждого поста получаете бренды и пишете их в отдельный массив 
    
    echo <div id="loop"> тут результат работы цикла</div>
    echo <div id="select"> тут разобранный на опции селекта массив брендов </div>
        die();
    }
    Ответ написан
    Комментировать
  • Как натянуть свою верстку на Wordpress?

    mahnunchik
    @mahnunchik
    https://about.me/vlasenko
    Если касаться только вёрстки, то советую присмотреться к вот этому "шаблону" темы:
    https://roots.io/sage/
    https://github.com/roots/sage
    Ответ написан
    Комментировать
  • Можно ли скачать из админки WordPress тему сайта?

    opium
    @opium
    Просто люблю качественно работать
    Есть плагины для бекапа можно бекапнуть и из бекапа скачать тему
    Ответ написан
    Комментировать
  • Как правильно подключать javascript и дополнительные стили к wordpress?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Запомните несколько простых правил.

    1. Никогда не используйте jQuery из стороннего источника (например, Google CDN). НИКОГДА. И другие библиотеки тоже. Кроме того, чаще всего не нужно jQuery грузить принудительно, достаточно для своего кастомного скрипта указать аргументом dependency значение array( 'jquery' ).
    2. Скрипты и стили подключаются ТОЛЬКО через функции wp_register_style() / wp_register_script() и wp_enqueue_style() / wp_enqueue_script(), вызов функций группируется в одну функцию, которая вешается на соответствующие хуки. Как правильно делать - написано в документации.
    3. Не обязательно подключать все вручную. Если вы правильно зарегистрировали ваши скрипты и стили (функциями wp_register_*), то можете просто подгрузить только один свой кастомный срипт (main.js например), а к нему все остальные указать в виде зависимостей (как и jQuery в п.1). Кроме того, можно (и нужно) подключать скрипты и стили только там, где они нужны. Например, если слайдер у вас только на главной, оберните его подгрузку в if( is_home() ).
    4. На продакшне убирайте ?xxx (версии скриптов и стилей), используйте плагин типа WP Better Minify для минификации и конкатенации скриптов и стилей.

    Кажется все.
    Ответ написан
    4 комментария
  • Как в wordpress вывести виджет?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    Задача достаточно тривиальная, в register_sidebar() вы передаете массив, добавить в него еще параметров не проблема как и в любой массив, другое дело как вы будете их получать, как минимум придется делать extends Class для каждого необходимого в выводу стандартного виджета.

    Однако виджеты обычно устроены так
    $before_widget . 
    $before_title . 
    $title .
    $after_title .
    $content .
    $after_widget;


    Соответственно вам достаточно сделать так
    register_sidebar( array(
        'name' => __( 'First Footer Widget Area', 'ykushev' ),
        'id'            => 'first-footer-widget-area',
        'description' => __( 'An optional widget area for your site footer.', 'ykushev' ), 
        'before_widget' => '<div id="%1$s" class="widget %2$s">',
        'after_widget'  => '</ЧЕГОТО ПОСЛЕ КОНТЕНТА></div>',
        'before_title'  => '<h4 class="widget-title">',
        'after_title'   => '</h4><ЧЕГОТО ДО КОНТЕНТА>',
      ) );

    вернет

    $before_widget .
    $before_title . 
    $title . 
    $after_title .
    <ЧЕГОТО ДО КОНТЕНТА> .
    $content .
    </ЧЕГОТО ПОСЛЕ КОНТЕНТА> .
    $after_widget;


    ну или jquery молоток
    $('.widget').append('<ЧЕГОТО ДО КОНТЕНТА></ЧЕГОТО ПОСЛЕ КОНТЕНТА>');
    $(".widget header").next().appendTo("ЧЕГОТО ДО КОНТЕНТА");
    Ответ написан
    2 комментария
  • Как изменить и добавить поля в корзине Woocommerce?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    Зачем гадать? Документация дает исчерпывающий ответ
    docs.woothemes.com/document/tutorial-customising-c...
    Ответ написан
    2 комментария
  • Есть ли интерактивная карта на wordpress?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    Плагинов таких конкретно под вашу задачу не видел, те что есть придется кастомайзить, ибо адрес не входит в стандартные поля юзеря. Однако проще такое написать самому, делов на пол часа.
    Получаете ваши адреса, оттуда где храните, и подставляете в gmap API https://developers.google.com/maps/documentation/j...
    Если напрямую с API работать тяжко есть хороший jquery плагин сильно это дело облегчающий gmap3.net
    Ответ написан
    Комментировать