Местоположение
Россия, Красноярский край, Красноярск

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (14)

Лучшие ответы пользователя

Все ответы (19)
  • Swiper не работает в другом блоке?

    @zordq Автор вопроса
    Так как второй слайдер находился в модальном окне Bootstrap, то -

    // Swiper JS Внутри карточки магазига //
    	var myswiper2 = new Swiper('.swiper-container-item', {
    		slidesPerView: 1,
    		spaceBetween: 4,
    		slidesPerGroup: 1,
    		loop: true,
    		loopFillGroupWithBlank: true,
    		navigation: {
    			nextEl: '.swiper-button-next',
    			prevEl: '.swiper-button-prev',
    		},
    	});
    
    	// Swiper JS Modal //
    	$('#product_view').on('shown.bs.modal', function(e) {
    		myswiper2.update();
    	    //var $invoker = $(e.relatedTarget);
    		//swiper.slideTo($invoker.data('slider'));
    		//swiper.update();
    	});


    Была создана вторая переменная, закомментированый код не влияет на работу, то был указан в решении другого источника.
    Ответ написан
  • Как зарабатывать 1000$ на фрилансе верстальщику?

    А в чём прелесть фриланса? Найдите удалённую работу. Улучшите стек, например, взгляните в сторону Vue.js, где сейчас платят очень хорошо. Сам верстаю и стою на распутье бэка и фронта. Не могу уйти с основной работы, так как «фрилансом», действительно, заработать стабильно и хорошо - сложно, если почти невозможно (на вёрстке).
    Ответ написан
  • Как лучше набираться знаний?

    Никаких чужих макетов, никаких "смотри" видео. На личном опыте могу сказать, что 99.9% "блогеров" в направлении веб-разработки - это некомпетентные люди, которые берут либо западные форматы с их контентом и просто копируют видеоролики с не русского пространства нашего любимого ютуба, причем с ошибками. Есть хорошие ребята, но почти у всех смысл такой "хотите узнать больше, подписывайтесь на вебинар и бла-бла-бла".
    Если Вы планируете заниматься вёрсткой, то желательно понимать и основы работы с макетами, да и самые примитивные идеи дизайна Вам тоже пригодятся. Попробуйте освоить, допустим, Figma. Создайте свой собственный макет и реализуйте его в явь.

    Есть очень хорошие курсы, которые объединяют практику и теорию, причем они бесплатны.
    https://htmlacademy.ru/ например. Таких ресурсов очень много, заработать на знаниях - тренд в 2019.

    От себя могу добавить прекрасное приложение Sololearn, в котором есть вся базовая информация.

    Если брать во внимание фреймворки, то только официальная документация, плюсом будет, если она на английском, зачастую при переводе совершают ряд ошибок.

    По PHP могу посоветовать Котерова. Отличная книга, где всё понятно разъяснено, но зачем сразу с PHP? Начните с базы, благо она сейчас тоже постоянно расширяет свой диапазон.

    А самое главное - ничего не бывает сразу. Я тоже год назад верстая первую работу для галереи использовал таблицу, а до адаптивности мне было как до Лондона пешком от моего Красноярска. Удачи.
    Ответ написан
  • Кастомный скелет поста Worpdress?

    @zordq Автор вопроса
    Добрый день, мною была решена поставленная задача. Благодаря azerphoenix и пробам, да ошибкам.

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

    add_action( 'init', 'register_post_types' );
    function register_post_types(){
    register_post_type('имя_вашего_типа_поста', array(
    'label' => null,
    'labels' => array(
    'name' => 'Проекты', // основное название для типа записи
    'singular_name' => 'Проект', // название для одной записи этого типа
    'add_new' => 'Добавить проект', // для добавления новой записи
    'add_new_item' => 'Добавление проекта', // заголовка у вновь создаваемой записи в админ-панели.
    'edit_item' => 'Редактирование проекта', // для редактирования типа записи
    'new_item' => 'Новый проект', // текст новой записи
    'view_item' => 'Смотреть проект', // для просмотра записи этого типа.
    'search_items' => 'Искать проект', // для поиска по этим типам записи
    'not_found' => 'Не найдено', // если в результате поиска ничего не было найдено
    'not_found_in_trash' => 'Не найдено в корзине', // если не было найдено в корзине
    'parent_item_colon' => '', // для родителей (у древовидных типов)
    'menu_name' => 'Проекты', // название меню
    ),
    'description' => '',
    'public' => true,
    'publicly_queryable' => null, // зависит от public
    'exclude_from_search' => null, // зависит от public
    'show_ui' => null, // зависит от public
    'show_in_menu' => null, // показывать ли в меню адмнки
    'show_in_admin_bar' => null, // по умолчанию значение show_in_menu
    'show_in_nav_menus' => null, // зависит от public
    'show_in_rest' => null, // добавить в REST API. C WP 4.7
    'rest_base' => null, // $post_type. C WP 4.7
    'menu_position' => null,
    'menu_icon' => null,
    //'capability_type' => 'post',
    //'capabilities' => 'post', // массив дополнительных прав для этого типа записи
    //'map_meta_cap' => null, // Ставим true чтобы включить дефолтный обработчик специальных прав
    'hierarchical' => false,
    'supports' => array('title','thumbnail'), // 'title','editor','author','thumbnail','excerpt','trackbacks','custom-fields','comments','revisions','page-attributes','post-formats'
    'taxonomies' => array(),
    'has_archive' => false,
    'rewrite' => true,
    'query_var' => true,
    ) );
    }


    Где add_action( 'init', 'register_post_types' ); действие инициализации функции регистрации типа поста, которая и приведена выше в коде.

    Далее ставим плагин для кастомных полей нашего поста.
    После чего в панеле управления CMS, появляется пункт с группой наших полей. Именуем группу, добавляем поля, у которых есть ярлык - имя самой строки \ поля, и имя - которое нужно для обращения к нашей верстке.

    В нашей верстке, где нужно то или иное значение или элемент из наших полей мы добавляем обращение через
    <?php the_field("имя_наших_полей") ?>.

    Создаем страницу с нашими постами, куда требуется вывод (каталог, например). В моем случае - это страница projects.php и в него пишем (далее идёт пример на основе моих данных, но интуитивно понятно):
    <?php
    /*
    * Template Name: Проекты
    */
    ?>
    
    <?php get_header(); ?>
    
    <?php
    
    /*
    * Получаем все посты
    * post_type - название нашего произвольного типа записей (идентификатор)
    * posts_per_page - количество получаемых записей
    * (в нашем случае стоит -1, это значит, что нужно получить все посты)
    */
    $projects = new WP_Query(array('post_type' => 'ваш_тип_постов', 'posts_per_page' => -1));
    
    ?>
    
    <div class="wrap">
    
    <!— Не забудьте в цикл добавить полученный объект постов $reviews —>
    <?php if ( $projects->have_posts() ) : while ( $projects->have_posts() ) : $projects->the_post(); ?>
    
    <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
    <div class="review-excerpt"><?php the_excerpt(); ?></div>
    <span>Цена проекта: <?php the_field("цена_проекта") ?></span>
    <span>Кол-во спален: <?php the_field('количество_спален') ?></span>
    
    <?php endwhile; ?>
    <?php endif; ?>
    
    </div>
    
    <?php get_footer(); ?>


    После чего в админке создаем страницу с шаблоном, который создали выше. Публикуем и видим цикл наших постов, то есть все посты, которые мы "попросили" вывести на странице. Постарался обратить внимание на все детали. Буду рад вопросам и замечаниям, если кто столкнется с подобным.
    Ответ написан

Лучшие вопросы пользователя

Все вопросы (35)