Genesis Framework — Как изменить порядок основного и бокового крючков

Недавно я начал использовать Genesis Framework и до сих пор привык к хукам, используемым для создания макета.

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

Я пытался найти решение, потому что, кажется, это может быть что-то общее, но безуспешно.

Процесс, который, я думаю, решил бы, это использовать remove_action для удаления боковой панели и основного контента, чтобы затем вернуть их с add_action в другом порядке. Для этого мне нужно знать точное название крючков и номер заказа (если указан).

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

0

Решение

На всякий случай, вот ответ на ваш вопрос.

Вот как вы удаляете содержимое страницы.

remove_action( 'genesis_loop', 'genesis_do_loop' );

Вот как вы удаляете боковую панель на странице.

remove_action( 'genesis_sidebar', 'genesis_do_sidebar' );

И это зацепки перед контентом и боковой панелью.

genesis_before_content

В вашем случае давайте использовать эти коды в functions.php

remove_action( 'genesis_sidebar', 'genesis_do_sidebar' );
add_action( 'genesis_before_content', function(){
echo '<aside class="sidebar sidebar-primary widget-area" role="complementary" itemscope="itemscope" itemtype="http://schema.org/WPSideBar">';
echo genesis_do_sidebar();
echo '</aside>';
}, 2 );

Надеюсь, это поможет вам в будущем.

2

Другие решения

Хорошо. Решение, которое я нашел, это исправить с помощью CSS, используя Flexbox.

Это довольно просто, но я бы хотел исправить проблему в источнике, а не найти что-то, что могло бы ее скрыть.

Это делается с помощью медиа-запросов вместе с размером экрана, когда он падает.
Исправление CSS заключается в:

  1. Apply {display: flex; flex-direction: column;} к содержащему элементу и
  2. применить {order: 2;} к элементу, который появляется первым, но я хотел второй.

Дайте мне знать, что вы думаете и / или что бы сделали по-другому.

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector