Как я могу сделать поиск, находящийся между storefront_primary_navigation и storefront_header_cart во второй строке заголовка? используя приведенный ниже PHP-код. если я сделаю эти изменения в CSS, он выглядит уродливым на мобильных устройствах. Так это можно сделать в PHP? Если да, в каком файле я должен внести изменения и каковы изменения?
Прямо сейчас у меня две строки в заголовке:
Первая линия: Логотип | secondary_navigation | product_search
Вторая строка: primary_navigation | header_cart
Теперь заголовок выглядит так:
PHP:
<header id="masthead" class="site-header" role="banner" <?php if ( get_header_image() != '' ) { echo 'style="background-image: url(' . esc_url( get_header_image() ) . ');"'; } ?>> <div class="col-full"> <?php /** * @hooked storefront_skip_links - 0 * @hooked storefront_social_icons - 5 * @hooked storefront_site_branding - 10 * @hooked storefront_secondary_navigation - 15 * @hooked storefront_product_search - 20 * @hooked storefront_primary_navigation - 25 * @hooked storefront_header_cart - 30 */ do_action( 'storefront_header' ); ?> </div>
Требуется выход: Первая линия: Логотип | secondary_navigation
Вторая строка: primary_navigation | product_search | header_cart
Manoj Изменения:
Вам нужно найти действие под названием «storefront_header». Найдите в нем файлы тем. Если вы используете возвышенный текст 2 и открываете директорию темы, вы можете использовать ctrl-shift-f для поиска по всем файлам одновременно.
Это похоже на вопрос / ответ здесь: Пример продукта, Изменить местоположение цены и рад, что вы прокомментировали ответ там;)
Редактирование PHP:
В приведенном ниже коде вы переписываете включение / приоритет крюка Storefront. Таким образом, storefront_product_search
будет включен после storefront_primary_navigation
которого значение приоритета равно 25.
Включите следующий код в functions.php
.
remove_action( 'storefront_header', 'storefront_product_search', 20 ); add_action( 'storefront_header', 'storefront_product_search', 26 );
Редактирование CSS:
.woocommerce-active .site-header .main-navigation { width: 58.913%; /* Changed to occupy the Search in same line */ } .site-search:nth-of-type(1) { display: none; }
Второе правило CSS – это взлом для удаления первого появления строки поиска, это не стандартное решение. Поскольку у меня нет доступа к вашему PHP-коду, трудно предсказать причину проблемы с двумя строками. Могут быть другие действия, мешающие захвату и отмена кода PHP remove_action, или приоритет был изменен в другом месте.
Вывод: