• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Добавление блока между фото и описанием

dangler

Новичок
Здравствуйте! Подскажите пожалуйста по такому вопросу. При просмотре отдельного товара остается довольно много пустого пространства между низом фотографий и верхом Описания (см. скриншот). И я хотел бы в это место добавить какой-нибудь небольшой блок, например "варианты расцветок", или "виды рукояток" или еще что-нибудь.

Однако, среди шаблонов, которые есть в админке - single.php, content-single.php и других я не нашел шаблонов страниц отдельного товара. Да и вообще, там нет нормальных шаблонов вида <div id=tovar><? echo $tovar ?></div>, в которые легко в любое место можно было добавить свой div. А их шаблоны - это просто набор вызовов функций типа do_action( 'storefront_single_post' ) и непонятно, как с такими шаблонами менять верстку и добавлять блоки.

Подскажите, пожалуйста, в какой папке можно найти шаблон отдельного товара, в который можно дописать свой блок? Или, может какие-то другие решения предусмотрены для этого, например тоже вызвать какую-то функцию?

Тема - Storefront
 

Вложения

tuxfighter

Гуру
Местный
сторефронт практически не влияет на шаблоны ВУУ.
шаблон карточки товара находится в /woocommerce/templates/single-product.php
 

dangler

Новичок
tuxfighter , спасибо! Единственно, такой еще вопрос - а разве является правильным подходом редактировать исходные файлы woocommerce? Я просто слышал где-то мнение, что какие-то исходные файлы не стоит редактировать, потому что после обновления они могут как-то не так себя повести.

Может, более правильно будет добавить какую-то функцию? Что-то вроде:

add_action('woocommerce_before_single_product_summary', 'hooks_add_div', 1);
function hooks_add_div() {
echo '<div id=moyblok>blabla</div>';
}

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

tuxfighter

Гуру
Местный
это решать исключительно вам.
а вообще, канешно перед редактированием шаблоны ВУУ надо скопировать к себе в дочернюю тему и там уже редактировать
 

dangler

Новичок
а вы могли бы подсказать, или дать ссылку, где почитать, как "шаблоны ВУУ надо скопировать к себе в дочернюю тему"?
 

tuxfighter

Гуру
Местный
эммм..... попробуйте открыть тот же single-product.php, там, внезапно, вы увидете описание, куда его надо поместить в вашей дочерней теме., чтобы все работало.
 

dangler

Новичок
ага, понял, спасибо, пойду смотреть ) потом отпишусь, как получилось.

и да, я понимаю, что мне решать, просто у меня опыт в woo практически нулевой. Поэтому, особо не на чем основываться, решая.. Потому вот и спрашиваю - как лучше, у знающих людей. Тк на счет добавления функции тоже непонятно - сторфронт в functions.php пишет Note: Do not add any custom code here. И непонятно куда тогда добавлять этот кустом код, если не туда?
 

tuxfighter

Гуру
Местный

dangler

Новичок
tuxfighter, за ссылку про дочерние темы - спасибо! Очень хорошая статья, все подробно и понятно описано, по пунктам. С ее помощью разобрался, как создавать эти дочерние темы и уже создал свою, пока простенькую, но думаю расширять.

а вот на счет файла /woocommerce/templates/single-product.php - все более сложно и непонятно. В этом файле нет, как надеялся, простого html со вставками php, вроде
<div id=imyatovara><? echo $imyatovara?></div><div id=fototovara><? echo $fototovara?></div><div id=opisanietovara><? echo $opisanietovara?></div>, в который можно было бы добавить свой див, а тоже лишь набор вызовов функций вроде
do_action( 'woocommerce_before_main_content' );

хотя, в папке /woocommerce/templates/ есть папка single-product, в которой есть несколько файлов, более похожих на привычные мне шаблоны. Но пока непонятно, в каком порядке они подключаются, и какой из них отвечает за пустое пространство между фото и описанием товара, пока разбираюсь
 

dangler

Новичок
Вроде нашел нужный файл - wp-content\plugins\woocommerce\templates\single-product\tabs\tabs.php
В нем, если над <div class="woocommerce-tabs wc-tabs-wrapper"> вставить свой див, то он как раз появляется в нужном месте.

Правда теперь с этой дочерней темой не все так гладко - когда я активировал ее вместо основной storefront, то слетело половина элементов оформления - логотип, фон шапки и еще несколько. Хотя старый css я подключил через @import, как в статье советуют.
Насколько я понимаю, слетели те элементы, которые я через настройки темы добавлял. А как их добавить в дочерней теме - непонятно пока.
 
Сверху Снизу