Никита Липинский
403 сообщения
#12 лет назад
Уважаемые веб-программисты, помогите принять решение.

ДАНО:
1) CMS Wordpress, реализующий функциональность одностраничного интерактивного сайта
2) На сайте есть два контроллера:
а) Переключение языков (по всему масштабу сайта)
б) Подгрузка ряда объектов-портфолио

УСЛОВИЕ:
1) Контент должен редактироваться/добавлять/удаляться только через backend
2) Высокая скорость загрузки

I ВАРИАНТ РЕШЕНИЯ:
1) Языки
а) Создаю категорию "ИМЯ_ЯЗЫКА", в ней записи типа "ШАПКА", "ПОДВАЛ", в записях разметка + текст (в основном оформляю бекграундами через css)
б) Загружаю в определенных местах указанные записи: текущий язык - display: block; остальные - display: none с анимацией jQuery

2) Портфолио
а) Создаю категорию "ПОРТФОЛИО", в ней записи типа "Объект 1", "Объект 2" и т.д.
б) Вывожу в WP Loop все объекты, с помощью счетчика нумерую ряды, по клику на "+" показываю loader, который тухнет и отображает новый ряд
в) Для каждого объекта создаю в категории "ИМЯ_ЯЗЫКА" записи "Объект 1: Текст" - и загружаю в зависимости от текущего языка (кошмар)

II ВАРИАНТ РЕШЕНИЯ
Структура БД та же, только не делаю из страницы простыню, а подгружаю по запросу, асинхронно.
Тогда кошмаром кажется количество запросов одновременных + отслеживание очереди (должен например язык одновременно на всем сайте меняться, а не по очереди в блоках) + state блока портфолио (сколько рядом загружено)

III ВАРИАНТ?
Может через список констант + AJAX?

Посмотрел готовые решения, но те, которые мне понравились - платные


Буду благодарен за ответы.
Давид П.
828 сообщений
#12 лет назад
Цитата ("tuls"):
текущий язык - display: block; остальные - display: none с анимацией jQuery

Это относительно языков, я правильно понял? При смене языка открывается скрытый текст(ы) и скрывается текст(ы) текущего языка? o_O

Совет №1: Wordpress > Shift Delete > Создать систему самому, удобную и понятную для себя, для любых задач.
Елена Б.
6863 сообщения
#12 лет назад
Конечно же не лепить все в одну кучу.
И никогда не понимала использование движков типа вордпресса для одностраничных сайтов.

Конечно, при нормальном проектировании при нажатии одной кнопки будет идти один запрос. Зачем тучи?

Для замены языка можно сделать, например, так


<span class="lang" itemprop="portfolio">Портфолио</span>
<span class="lang" itemprop="sort">Сортировка</span>

___________________

$(.lang).each(function(){
$(this).html(
lang
);
});

// lang загружается по аяксу



Код примерный, только для объяснения сути.
Никита Липинский
403 сообщения
#12 лет назад
floppox, спасибо, Елена
Никита Липинский
403 сообщения
#12 лет назад
Если кому понадобится:

+
XML