Files
bit-wms-site/setup-wp.sh
T
admin 2e9e7ace4b chore: add docs, mockup, docker config, and source materials
- Презентация портала (md + docx)
- HTML-мокап всех страниц
- docker-compose.yml + setup-wp.sh
- Исходные документы (брендбук, концепция, референсы)
2026-04-03 19:28:19 +05:00

123 lines
6.7 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# Скрипт первичной настройки WordPress для БИТ.WMS портала
# Запускать после docker-compose up -d
set -e
PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
WP="docker compose -f $PROJECT_DIR/docker-compose.yml run --rm wpcli"
echo "=== Ожидание готовности базы данных (до 30 сек)... ==="
for i in $(seq 1 30); do
if docker compose -f "$PROJECT_DIR/docker-compose.yml" exec -T db mysqladmin ping -h localhost -u bitwms -pbitwms --silent 2>/dev/null; then
echo "БД готова!"
break
fi
echo " Попытка $i/30..."
sleep 1
done
echo ""
echo "=== Установка WordPress ==="
$WP core install \
--url="http://localhost:8080" \
--title="БИТ.WMS — Экспертный портал" \
--admin_user=admin \
--admin_password=admin \
--admin_email=admin@bitwms.local \
--skip-email
echo ""
echo "=== Базовые настройки ==="
$WP option update timezone_string "Asia/Yekaterinburg"
$WP option update date_format "d.m.Y"
$WP option update time_format "H:i"
$WP option update default_comment_status "closed"
$WP option update default_ping_status "closed"
$WP rewrite structure "/%postname%/" --hard
echo ""
echo "=== Удаление дефолтного контента ==="
$WP post delete 1 --force 2>/dev/null || true
$WP post delete 2 --force 2>/dev/null || true
$WP post delete 3 --force 2>/dev/null || true
echo ""
echo "=== Удаление ненужных плагинов ==="
$WP plugin delete akismet 2>/dev/null || true
$WP plugin delete hello 2>/dev/null || true
echo ""
echo "=== Установка бесплатных плагинов ==="
$WP plugin install generatepress --activate
$WP plugin install contact-form-7 --activate
$WP plugin install popup-maker --activate
$WP plugin install wordpress-seo --activate
echo ""
echo "=== Активация дочерней темы ==="
$WP theme activate bitwms-child
echo ""
echo "=== Создание страниц ==="
FRONT_ID=$($WP post create --post_type=page --post_title="Главная" --post_status=publish --post_name="home" --page_template="page-templates/front-page.php" --porcelain)
BLOG_ID=$($WP post create --post_type=page --post_title="Блог" --post_status=publish --post_name="blog" --porcelain)
$WP post create --post_type=page --post_title="БИТ.WMS" --post_status=publish --post_name="bit-wms" --page_template="page-templates/page-bit-wms.php"
$WP post create --post_type=page --post_title="Контакты" --post_status=publish --post_name="contacts" --page_template="page-templates/page-contacts.php"
$WP post create --post_type=page --post_title="Политика конфиденциальности" --post_status=publish --post_name="privacy-policy"
$WP post create --post_type=page --post_title="Согласие на обработку данных" --post_status=publish --post_name="consent"
echo ""
echo "=== Настройка статической главной страницы ==="
$WP option update show_on_front "page"
$WP option update page_on_front "$FRONT_ID"
$WP option update page_for_posts "$BLOG_ID"
echo ""
echo "=== Создание рубрик для статей/новостей ==="
$WP term create category "Статьи" --slug=articles 2>/dev/null || true
$WP term create category "Новости" --slug=news 2>/dev/null || true
echo ""
echo "=== Создание тестового контента ==="
# Тестовые кейсы
$WP post create --post_type=case --post_title="Автоматизация склада для ООО «Логистика Плюс»" --post_status=publish --post_excerpt="Внедрение БИТ.WMS на складе площадью 5000 м² с 10 000 SKU"
$WP post create --post_type=case --post_title="Оптимизация складских процессов для «ТехноПарк»" --post_status=publish --post_excerpt="Сокращение времени отбора заказов на 35% за 3 месяца"
$WP post create --post_type=case --post_title="Миграция с Excel на WMS для «Фуд Маркет»" --post_status=publish --post_excerpt="Переход от ручного учёта к автоматизированному управлению"
# Тестовые вебинары
$WP post create --post_type=webinar --post_title="Как выбрать WMS-систему для вашего склада" --post_status=publish --post_excerpt="Разбираем ключевые критерии выбора"
$WP post create --post_type=webinar --post_title="Оптимизация складских процессов с БИТ.WMS" --post_status=publish --post_excerpt="Живая демонстрация возможностей системы"
# Тестовые статьи
$WP post create --post_type=post --post_title="5 признаков того, что вашему складу нужна WMS" --post_status=publish --post_excerpt="Чек-лист для руководителя склада" --post_category=$($WP term list category --slug=articles --field=term_id 2>/dev/null || echo 1)
$WP post create --post_type=post --post_title="ROI от внедрения WMS: как считать и что ожидать" --post_status=publish --post_excerpt="Методика расчёта окупаемости" --post_category=$($WP term list category --slug=articles --field=term_id 2>/dev/null || echo 1)
# Тестовый курс
$WP post create --post_type=course --post_title="Курс: Управление складом с БИТ.WMS" --post_status=publish --post_excerpt="Полный курс для складских менеджеров"
# Тестовое мероприятие
$WP post create --post_type=event --post_title="Конференция «Склад будущего 2026»" --post_status=publish --post_excerpt="Ежегодная конференция по складской логистике"
# Тестовый материал
$WP post create --post_type=material --post_title="Чек-лист: Подготовка склада к внедрению WMS" --post_status=publish --post_excerpt="Скачайте PDF с пошаговым планом"
echo ""
echo "=== Обновление permalink ==="
$WP rewrite flush
echo ""
echo "=========================================="
echo " WordPress настроен!"
echo " Сайт: http://localhost:8080"
echo " Админка: http://localhost:8080/wp-admin"
echo " Логин: admin / admin"
echo "=========================================="
echo ""
echo " ВАЖНО: Премиум-плагины установите вручную через админку:"
echo " - GeneratePress Premium"
echo " - GenerateBlocks Pro"
echo " - ACF Pro"
echo "=========================================="