Ответы пользователя по тегу WordPress
  • 2 Шаблона поста Wordpress?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Я понял задачу следующим образом: выводить карточки постов в двух разных шаблонах по очереди. Если задача другая, поправьте.

    Находим в теме нужный файл шаблона (например index.php) и цикл Вордпресса, он будет выглядеть примерно так:

    while (have_posts): the_post();
      //Загружаем шаблон записи
      get_template_part('content', 'single');
    endwhile;


    Наша задача — сделать так, чтобы в одном случае грузился один шаблон во втором случае второй. Для этого создадим файлы шаблонов, например template-one.php и template-two.php и переместим туда вашу верстку/код. Поменяем цикл Вордпресса таким образом, чтобы шаблоны выбирались по очереди

    //Добавим переменную-счетчик, чтобы различать четные и нечетные посты
    $counter = 0;
    while (have_posts): the_post();
      //добавим проверку на четность
      if ( $counter % 2 == 0 ):
         //загружаем первый шаблон для четных 
         get_template_part('template', 'one');
      else:
        //загружаем второй шаблон в другом случае
         get_template_part('template', 'two');
      endif;
      $counter++;
    endwhile;
    Ответ написан
    1 комментарий
  • Через Advanced Custom Fields можно добавить доп. поля к page (изображения)?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    У вас на скриншоте нативные кастомные поля Вордпресса, не ACF.
    Чтобы использовать ACF вам нужно (после установки плагина):
    1) В меню админки Ворпдесса найти пункт Группы полей
    2) Создать новую группу полей
    3) Добавить в группе нужное количество acf-полей разных типов
    4) В настройках группы указать где данные поля будут показываться (по типу записей, конкретной странице и т.д.)

    Надеюсь ответил
    Ответ написан
    Комментировать
  • Что проще (или как правильнее), изучить Wordpress или научится писать свой движок на php?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Странный у коллег ответы, вставлю свои 5 копеек. Чтобы сделать полноценный современный сайт с CMS нужно решить кучу вопросов: написать админку, авторизацию, восстановление пароля, вывод новостей, страниц, меню, добавить для всего удобное администрирование и так далее.

    Написать все это на чистом php потребует времени, и скорее всего вы не один раз заглянете на Тостер, СтэкОверфлоу или подобные сайты. Так как вы будете писать решение первый раз в нем будут дыры в безопасности и гарантированно сомнительный интерфейс (вряд ли в команде у вас есть ux-дизайнер)

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

    Изучение WordPress != изучению php, это разные пути развития. В php вы пишите чистый код, в вордпрессе используете функции более высокого порядка на которые люди до вас за 15 лет развития системы потратили десятки тысяч человеко-часов
    Ответ написан
    1 комментарий
  • Как натягивать кастомные страницы на Wordpress?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Может уже не актуально, но попробую ответить развернуто

    1) Для начала вам понадобится стартовая тема. Это специальный вид тем для WordPress, который не имеет своего дизайна или он минимальный и заточены под то, чтобы их редактировать и делать сайты. Например тема Underscores

    2) Начните редактировать тему. Перенесите стили в style.css, шапку и подвал сайта в header.php и footer.php соответственно.

    3) Если шаблоны страниц разные, то имеет смысл создать файлы (я обычно называю по такому принципу) page-contacts.php, page-history.php и т.д. Важно каждый файл должен начинаться с <?php //Template Name: Имя Шаблона ?> тогда Вордпресс поймет, что это шаблон страницы

    3Б) Затем в админке создаете соответствующие страницы и назначаете им шаблоны. Чтобы дать возможность пользователю загружать контент по частям (вот логотип, заголовок, список услуг, карта и т.д.) -- воспользуйтесь плагином Advanced Custom Fields
    Ответ написан
    Комментировать
  • Как предотвратить "ломание" страницы при изменении ее ширины в Bootstrap 4?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Общий ответ: использование Media Queries, т.е. в CSS вы прописываете отдельные правила для конкретного размера экрана. Например можно сделать текст логотипа поменьше, убрать или сузить строку поиска и т.д. для промежуточных разрешений, например c 768 до 1200 пикселей.

    Выглядеть будет примерно так:

    @media (min-width: 768px) and (max-width: 1200px) {
    .logo {
     font-size: 14px
    }
    
    .search-bar {
     display: none
    }
    }


    Данный пример условный, он лишь показывает направление мысли. Это вполне частая, что приходится манипулировать с элементами, если у вас кастомный дизайн, а не набор бутстраповских блоков.
    Ответ написан
    1 комментарий
  • Как выводить по умолчанию посты wordpress не на главной странице?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    В Настройках / Чтение -- выберите статическую страницу, которую хотите сделать главной и выберите другую страницу, которая будет заменена на страницу с постами
    5b33396bea53d286655228.png
    Ответ написан
    Комментировать
  • Как ввести список ссылок из произвольного поля Wordprress?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Для решения задачи воспользуйтесь плагином Advanced Custom Fields Pro, он позволит добавить к каждой записи любое количество пар ID поста + Новый заголовок с удобным интерфейсом:

    Для примера название поля-повторителя relatives, подполей relative_id и relative_title, тогда код будет выглядет так:

    <?php if( have_rows('relatives') ): ?>
      <ul>
      <?php while ( have_rows('relatives') ) : the_row(); ?>
      <li><a href="<?php $id = get_sub_field('relative_id'); echo get_the_permalink($id); ?>"><?php the_sub_field('relative_title'); ?></a></li>
     <?php endwhile; ?>
      </ul>
    <?php endif; ?>


    Подробнее о поле Repeater https://www.advancedcustomfields.com/resources/rep...
    Почти то же самое можно сделать и с обычным ACF без PRO
    Ответ написан
    Комментировать
  • Как измененить ключевое поле при просмотре постов в админке?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Евгений (надеюсь угадал по нику), вы двигаетесь в правильном направлении, ACF -- прекрасный плагин для создания кастомных слайдеров. Чтобы было еще удобнее -- приобретите PRO-версию, стоит 25$, откроются фантастические перспективы.

    Во-первых, вместо отдельных записей вы сможете использовать поле Repeater (повторитель), в котором можно задать любой набор полей. Вопрос о редактировании на страницы со списком постов отпадет автоматически

    Вот пример слайдера (на каждом слайде фото, город, цитата, ширина цитаты и расположение):
    5afb658dd1327019513135.jpeg

    Вот как выглядит с ACF PRO
    5afb65eeb833b021447084.png

    Во-вторых это не единственный преимущества про-версии
    Ответ написан
    Комментировать
  • Как исправить заголовки H2?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    1. Создать дочернюю тему. (Можно с помощью Orbisius Child Theme Creator)
    2. Скопировать часть файлов из основной темы в дочернюю
    3. Поменять в коде H2 на H1

    Какие файлы копировать -- зависит от конкретной темы и тех страниц, которые вы хотите поменять.
    Ответ написан
    Комментировать
  • Как вывести список страниц с произвольным полем ACF в Wordpress?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Вам понадобится класс WP_Query(), который позволяет создавать дополнительные циклы с нужными вам параметрами. Сделаю допущение, что acf-поле с информацией о округе назывыается okrug.

    Пример вывода всех страниц в ЗАО:

    <?php 
    // Задаем параметры цикла:
    $args = array(
    	'numberposts'	=> -1,
    	'post_type'		=> 'page',
    	'meta_key'		=> 'okrug',
    	'meta_value'	=> 'ЗАО'
    );
    
    // С помощью WP_Query создаем переменную, содержащую все страницы со значением ЗАО в поле округ
    $the_query = new WP_Query( $args );
    
    ?>
    
    <?php if( $the_query->have_posts() ): ?>
    	<ul>
    	<?php while( $the_query->have_posts() ) : $the_query->the_post(); ?>
    		<li>
    			<a href="<?php the_permalink(); ?>">
    				<img src="<?php echo get_the_post_thumbnail_url(); ?>" />
    				<?php the_title(); ?>
    			</a>
    		</li>
    	<?php endwhile; ?>
    	</ul>
    <?php endif; ?>
    
    <?php wp_reset_query();	 // Возвращаем в норму все глобальные переменные ?>
    Ответ написан
    9 комментариев
  • Поменять место отображения слайдера на странице?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Здравствуйте. Ваша галерея подключена через плагин Fotorama. Надо разобраться вставлены ли фотографии внутрь текста страницы с помощью шорткода или слайдер заложен в шаблон. В первом случае можно просто перенести копи-пейстом галерею наверх, во втором случае поменять код шаблона.

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

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Проблема в том, что с полями категорий ACF работает немного по-другому
    Вот офф. документация https://www.advancedcustomfields.com/resources/add...

    Если кратко:
    // Нужно определить переменную с текущей категорией
    $term = get_queried_object();

    И ваш код будет выглядеть так:
    <?php $term = get_queried_object(); ?>
    <section class="section_pict" style="background-image: url('<?php the_field('picture-rubric',$term);?>">
    Ответ написан
    1 комментарий
  • Как создать страницу в теме с заданным шаблоном?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Для подключения файла шаблона нужно прописать в начале
    <?php
    /*
    Template Name: Название шаблона страницы
    Template Post Type: post, page, event
    */
    ?>
    Название файла, вроде, не играет особой роли. Вторая строка c Template Post Type позволяет указать типы записей для которых можно применить данный шаблон. Если оставить только Template name, то шаблон будет применим только для страниц
    Ответ написан
    Комментировать
  • Как переделать header и footer под wordpress?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Не очень понятно что такое "пустая тема", но попробую ответить. За шапку и подвал отвечают файлы header.php и footer.php соответственно. Вы можете создать файлы с такими названиями внутри папки с темой и вставить свою вёрстку туда.
    Чтобы шапка и подвал стали "родными" для WordPress вам нужно будет прописать ключевые функции, добавив
    строчку <?php wp_head(); ?> в шапку перед закрывающим тегом /head и строчку <?php wp_footer(); ?> в файл подвала перед строчкой закрывающим тегом /bоdy
    Также полезно строчку с тегом bоdy заменить на bоdy <?php body_class(); ?>

    Для того, чтобы в Шапке была навигация контролируемая через интерфейс Вордпресса нужно сделать 3 вещи:
    1) Зарегистрировать меню в файле functions.php c помощью функции register_nav_menu()
    2) Наполнить это меню с помощью интерфейса админ-панели в разделе Внешний вид > Меню
    3) Подключить это меню в шапке сайта с помощью функции wp_nav_menu()
    Ответ написан
    Комментировать
  • Какой есть плагин WP для галереи который удовлетворяет определенным параметрам?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Здравствуйте. Порекомендую Advanced Custom Fields, там есть поле Галерея https://www.advancedcustomfields.com/resources/gal... Т.е. при правильной настройке у вас появится отдельное поле, где вы сможете управлять картинками.

    Важно: для вывода галереи на фронт-енд понадобится доработать шаблон темы и добавив немного php и js. Цикл php довольно простой, есть примеры в документации, а js зависит от задач, можно подключить конкретную библиотеку или воспользоваться плагином.
    Ответ написан
    Комментировать
  • Как в woocommerce для разных категорий сделать разные атрибуты?

    solidcreature
    @solidcreature
    Развиваю сообщество WordPress в Москве
    Виктор, лучше всего с этим справиться плагин Advanced Custom Field, он позволяет добавить любое количество полей для любых типов данных в WordPress. Это не нативные атрибуты Woocommerce, поэтому придется немножко доработать шаблон страницы товара.

    Алгоритм следующий:
    1) Установите Advanced Custom Fields (для этой задачи будет достаточно бесплатной версии плагина)
    2) Создайте новую группы полей по количеству категорий товаров
    3) Задайте поля для всех атрибутов для каждой группы полей
    4) В параметрах отображений каждой группы поставьте тип записи = Woocommerce Product и соответствующую категорию товара.

    Таким образом при назначении категории нужные атрибуты будут отображаться автоматически на странице редактирования товара.

    Как вывести в карточку товара я расскажу отдельно, если подход с ACF вас устроит
    Ответ написан