Довелось мне в последнее время много поработать с Wordpress. Поскольку это весьма прогрессивная cms, я сделала на ней пару-тройку сайтов и, в частности, реализовала каталоги товаров.
Каталог товаров на Wordpress я делала без плагинов для каталога, через стандартные дополнительные поля. Дополнительные поля, как известно, далеко не во всех шаблонах отображаются, их отображение нужно специально прописывать.
Типов записей у меня было 3: новости, где нужна была дата, статьи, где дата не нужна, и товары, где необходимо было отображение дополнительных полей и форма заказа. В моем случае новости и статьи - это категории 7 и 8. Про условие для отображение/сокрытие даты я не буду писать. Может быть, в другой раз, это довольно просто. А вот с каталогом я разработала нехитрую идею.
Я сделала так: для отдельной записи в шаблоне прописала условие:
<?php
if ( in_category(7) || in_category(8) ) {
} else {
include 'cart.php';
}
?>
И создала файл корзины cart.php, в который поставила отображение допонительных полей, которые мне нужны, и форму заказа Contact form 7. Делать корзину и полноценный интернет-магазин не входило в мои задачи.
Чем хорош мой каталог товаров? Я не использую никаких дополнительных плагинов (кроме контактной формы, конечно, но это musthave), только стандартные дополнительные поля - и таким образом мое решение отвечает идее освобождения жизни от всего ненужного. В одном маленьком файле cart.php имеется и набор характеристик товара, и форма заказа - все очень компактно.
Вот как выглядел файл cart.php - кто хиппи, тот поймет, все прозрачно.
<p>
<?php $gost = get_post_meta($post->ID, 'gost', true); ?>
<?php
if (!empty($gost)) {
echo '<strong>ГОСТ, ТУ: </strong>'.$gost.'';
}
?>
</p>
<p>
<?php $usage = get_post_meta($post->ID, 'usage', true); ?>
<?php
if (!empty($usage)) {
echo '<strong>Назначение: </strong>'.$usage.'';
}
?>
</p>
<p>
<?php $package = get_post_meta($post->ID, 'package', true); ?>
<?php
if (!empty($package)) {
echo '<strong>Упаковка: </strong>'.$package.'';
}
?>
</p>
<p>
<?php $minimum = get_post_meta($post->ID, 'minimum', true); ?>
<?php
if (!empty($minimum)) {
echo '<strong>Минимальный заказ: </strong>'.$minimum.'';
}
?>
</p>
<p>
<?php $price = get_post_meta($post->ID, 'price', true); ?>
<?php
if (!empty($price)) {
echo '<strong>Цена с НДС в руб./кг: </strong>'.$price.'';
}
?>
</p>
<p>
<?php $price2 = get_post_meta($post->ID, 'price2', true); ?>
<?php
if (!empty($price2)) {
echo '<strong>Цена с НДС в рублях: </strong>'.$price2.'';
}
?>
</p>
<h1>Заказать</h1><br/>
<?php echo do_shortcode( '[contact-form-7 id="122" title="Сделать заказ"]' ); ?>
А вот как выглядит сама страница товара, сайт посвящен войлоку:
http://voilok.start-cbs.ru/?p=285
Я надеюсь, этот небольшой пример создания простого каталога товаров поможет людям, потому что в России Wordpress предпочитают использовать в очень специфической сфере - блогах для заработка - а если ты решил создать на этой cms что-то другое, инструкций по разработке не найдешь. Все русские статьи по Wordpress призваны обслуживать эти самые монетизированные блоги, но это все равно что айпадом в песочнице копаться. Хороший инструмент используется для ерунды.
Вот этим словом в защиту Wordpress и против засорения интернета мани-блогами закончиваю свой опус. Удачи, разрабочики!