Василий Наумкин

Василий Наумкин

Был в сети 10 июня 2026, 17:44
Заказы не принимаю
Нет. msProfile испольует всё от miniShop2.

Для продажи услуг всё равно нужен будет какой-то магазин, обработчики платежей, история заказов и личный кабинет. Так что, не понимаю проблемы — нужно просто поставить ms2 и не заморачиваться.
Меня удивило именно требование делать это всё через ajax.

В моём понимании возможны 2 варианта:
1. Заходит человек, жмакает на ссылочки, ему генерится контент. Человек не смотрит, изменился ли там description или title — он смотрит на контент. При этом у него в url получается прямая ссылка, и при заходе по ней выводятся правильные теги.

2. Заходит робот. Он, конечно, может выполнять и javascript, но один фиг скачивает всё по прямым ссылкам и индексирует именно их. Он всегда будет видеть те теги, которые генерируются при загрузке страницы, а не при работе ajax.

Внимание, вопрос! На кой хер для SEO нужно динамически менять description и title через ajax?
На мой взгляд — ни на кой не нужно. Это стоит делать только для успокоения души перфекциониста, когда сделано уже вообще всё остальное.
Вот прям всё, за что я люблю SEO.
Плачу регулярно за SEO. За это получаю на все выходные работы программиста. Сайт как был в ж… е так там и остается уже 2-й месяц.

Еще понравилось про title при ajax навигации. Видимо поисковым роботам, которые скачивают страницы обычными GET запросами, очень важно — что там при ajax навигации происходит.

Перенёс в «сайты на MODX».

и очень интересно, как мультиязычность работает на MODX.pro.
Примерно так же, я это
давно описывал.

Ну а вообще да, изрядная картина создания сайта на MODX из говна и палок за еду. Очень интересно, чем думает веб-студия, когда берёт такие проекты без ТЗ, сроков и выставляет смешные ценники. Жадность ли это, или банальная глупость?

Есть мнение, что для сдачи такого проекта заказчику, студия потратит больше, чем заработает.
Гораздо лучше и проще переопределить функцию из своего скрипта, загруженного позже оригинального:

Например:
$(document).ready(function() {
	mSearch2.load = function (params, callback, animation) {
		// ...
	};
})
Тогда и основной скрипт не нужно будет переименовывать и заморачиваться при обновлениях с добавлением исправлений.
Ну вот имей в виду, что не стоит так шутить, когда вокруг столько больных на голову националистов.

Причём, ссыкливых националистов, которым не лень зарегистрировать чистенький VPN адрес на Linode, новую учётку и насрать в комментариях анонимно.

Наверное, такая вот гражданская позиция.