Можно делать около 200р\час (опыт из Lineage2), но это чистой воды «серый» фриланс. Найдешь заказы — получишь внутриигровую валюту, продашь на черном рынке. Если не забанят — работаешь дальше :)
Если готов кидать людей, то там вплоть до 100 тыщ в месяц, смотря какой уровень доверии ты к себе разовьешь :) < — это уже не мой опыт, если что :)
Более того, основная причина* выбора nginx+apache, а не nginx+php-fpm, был файлик ".htaccess" и засилье хостингов, не дававших переопределять rewrite rules. Это действительно было популярным решением 8 лет назад :)
*за пределами тогдашнего highload :)
Все дополнительные параметры хранятся в wp_postmeta, в виде ключ: значение. У каждого товара есть некое свойство, например price.
каждое свойство на самом деле это две записи в таблице wp_postmeta:
1. post_id, 'price', 'field123'
2. post_id, 'field123', 500
Из за того, что для выполнения запроса №2, вам требуется значения из запроса №1, вы не можете полноценно аггрегировать. Почти всегда эти свойства еще и вызывают из шаблона, что мешает заранее все аггрегировать :)
Но полностью согласен с пунктом про post_title/post_content, эта информация хранится в таблице wp_posts, с ней можно адекватно работать. Увы, это всего два поля, в магазинах используют сотни аттрибутов, а вот они как раз в мета полях. Со скоростью работы mysql тоже соглашусь. Тем не менее, моя рекомендация, не заигрываться с интернет магазинами на WP. Как только появилась нагрузка, прокачать VPS и думать об альтернативах.
На самом деле для проблем будет достаточно 200 разношерстных товаров, с разными аттрибутами, категориями, вариантами (цвета\размеры), наличие и прочие стандартные вещи. Каждая характеристика, помимо post_title, post_content — это два SQL запроса в БД (получить название поля и содержимое поле). Если мы говорим о вложенных параметрах (например динамичный список), то там вообще можно сразу переписывать начинать :)
И хотя WP прекрасная вещь для быстрого старта некоего прототипа, когда вообще не понятно, взлетит или не взлетит, говорить о том что он прекрасно переварит 500к товаров скорее ошибочно. Все дело в структуре базы, если вы хотите показать 100 полноценных товаров (с заполненными характеристиками), это будет примерно 30 SQL запросов на каждый товар. Да, они будут простыми, LIMIT 1, но 30 х 100 это весьма много, для одной страницы. Да, можно кешировать и продолжать верить в чудо, но чуда с такой структурой БД не будет.
Еще раз напишу. Прекрасно для старта, но если проект взлетает, от WP надо избавляться как можно быстрее.
Цены так то озвучили, 3000 за 15 минутный полет, вопрос только это с пассажира, или с полета. Так то 3000 / 4 места на фото = 500 рублей, тот же аэроэкспресс, звучит фантастически доступно.
А как определить? Вася пердит во сне и не открывает окно, а Петя любит спать с открытым окном в -20 и писает мимо унитаза. Все мы не идеальны, сложно так «изгонять». Особенно когда такое переходит в бизнес и человек платит деньги :)
Подожду пока будет «введите данные кредитки с которой мы будем списывать ХХХ рублей в месяц в течении Х лет». Все остальное — просто маркетинговый ход :)
Загляните по ссылке, там черным по белому, в readme, написано что composer было нельзя использовать. Еще хочу заметить, я не позиционирую ЭТО как некое «фв» и не предлагаю его использовать даже в домашних проектах :)
P.S. Не видите разницы между этими двумя «проектами»? У меня для вас плохие новости :)
Я бы настоятельно рекомендовал вернуться вам на пару шагов назад и ознакомиться с PHP по порядку.
1. Code style — PSR-2 и только. Самый важный пункт как я считаю. Ваш текущий код невозможно читать
2. ООП. Namespace, имена классов. В PHP обычно используется CamelCase
3. MVC у вас в целом реализован, но на троечку мягко говоря. В шаблон например нельзя передать данные :)
4. Структура файлов очень плохая. Задумайтесь. Есть общемировые практики, следовать бездумно которым не стоит разумеется, но учитывать нужно обязательно.
Сама идея делать свой MVC фреймворк — отличная. Но делать реальные проекты на нем — скорее ужасная. Если вы откажетесь от проекта, то следующему проще будет переписать проект с нуля, чем понимать что делает ваш фреймворк :) Тем не менее, современные фреймворки весьма сложные в понимании, что и как работает, они слабо подходят для изучения. С ними можно работать не понимания что под капотом, но это ведет к другим проблемам, поэтому сделать свой фреймворк «по фану» — рекомендую :) Я недавно делал одно тестовое, несмотря на то, что я считаю его просто MVC каркасом, могу порекомендовать вам разобрать каждую строчку github.com/arku31/mvc_blog
Несмотря на то то, что оно незаконченное (был лимит по времени), не имеет тестов и имеет некоторые проблемы — это будет очень полезно для вас, т.к. это чистый php (такое было требование) и каждая строка написана руками и с определенной целью.
Обратите внимание на работу с шаблонами, моделями, сессиями, request/response. Это тот минимум, который требуется в минимальном понимании что такое фреймворк :)
Достаточно появлению одного малейшего требования взаимодействия с бекендом и статика уже не поможет. Банально, говоря, например, только про раздел вакансии, ведь, например, это может захотеться уже завтра: кнопка (форма) отправить резюме, «оставьте емейл и мы перезвоним», лайки, просмотры.
Это решение не масштабируемое, вы загнали себя в достаточно узкие рамки, выход из которых будет стоить вам полного рефакторинга структуры проекта.
Если хотелось готового из коробки решения — есть wordpress с его историей редактирования. В вашем же случае, как по мне, было проще создать дополнительную таблицу с историей редактирования и кастомизировать WYSIWYG (это обычно не так сложно, BBCode+regex на бекенде), чтобы облегчить жизнь редакторам.
В прочем, решение имеет право на жизнь, если вы, переходя на статику, просчитали вышеописанный момент и однозначно и на века, решили, что бекенд не нужен :)
Повторюсь. Не надо решать две проблемы за раз. Я предложил снизить кол-во нарушений. Проблема коррупции решается совсем по другому.
Поделюсь опытом. За последние 5 лет владения авто проехал более 100 тысяч км, в основном по РФ. Ни разу меня не пытались лишить прав за пьянку и даже в трубочку не дышал. Алкоголь употребляю и иногда даже больше чем нужно :( Но это уже третья проблема и решается она тоже совсем по другому.
Я это тоже упомянул. Повторюсь. Достаточно одного раза, чтобы оштрафовали любого из вашего коллеги и вы уже трижды подумаете, рискнуть на 300 тыщ + лишение или же заплатить 100 рублей за такси.
Можно договориться, а можно и не договориться :) Я описал свое видение решение проблемы, как мотивировать бОльшую часть людей соблюдать ПДД. О том, как решать коррупционные вопросы — это совсем другое обсуждение. Например, работа сотрудника ГАИ только при включенном видеорегистраторе. Если он отключен, значит действия сотрудника не несут юридической силы. Но повторюсь, это совсем другая тема, которая не имеет никакого отношения к ПДД.
Как вы думаете, сколько людей, в нетрезвом состоянии садится за руль? Сколько из них при этом «те кого нельзя трогать»? 5%? 30%? Фантастично, но пусть примем за исходные данные. Так вот, получается, увеличением штрафов в 10 раз можно будет сдержать 70%. Как только эта проблема будет решена — можно будет решать следующую.
Серебренной пули, решающей все вопросы сразу не существует.
Что такое 30 тысяч? Это одна условная среднестатичная зарплата в регионах. Что такое 300 тысяч? Это кредит на 1 год который выплачивается без каких либо проблем среднестатичным человеком.
Как насчет 300 тысяч и 3 миллионов?
P.S. Только в данном случае надо разделять 0.1 промилле и 3 промилле.
Повторюсь, за 1 минуту разницы между 60 и 80 с водителем ничего не случится. Если там действительно есть предпосылки для езды со скоростью 80 (разделитель меж полосами, заборчик от пешеходов) — там вполне может появится знак 80. А если там есть пешеходный переход, то там вполне может быть знак 40. Не зная конкретной дороги — очень сложно сказать, насколько эта дорога «объездная».
Все еще звучит достаточно доступно чтобы попробовать и надеяться что пронесет. Ведь не факт что оштрафуют. А Вот если за парковку на тротуаре будет штраф 15000 рублей — желающих будет значительно меньше :) А за повреждение газона еще 50000 — еще меньше желания.
В отличии от превышения скорости (задумался, нога на педали, ненамеренно превысил на 5 км\ч) — это всегда намеренное желание показать превосходство. И возможность наказать за такое желание должна иметься.
Если готов кидать людей, то там вплоть до 100 тыщ в месяц, смотря какой уровень доверии ты к себе разовьешь :) < — это уже не мой опыт, если что :)
*за пределами тогдашнего highload :)
Отсортированным по Local Purchasing Power Index
каждое свойство на самом деле это две записи в таблице wp_postmeta:
1. post_id, 'price', 'field123'
2. post_id, 'field123', 500
Из за того, что для выполнения запроса №2, вам требуется значения из запроса №1, вы не можете полноценно аггрегировать. Почти всегда эти свойства еще и вызывают из шаблона, что мешает заранее все аггрегировать :)
Но полностью согласен с пунктом про post_title/post_content, эта информация хранится в таблице wp_posts, с ней можно адекватно работать. Увы, это всего два поля, в магазинах используют сотни аттрибутов, а вот они как раз в мета полях. Со скоростью работы mysql тоже соглашусь. Тем не менее, моя рекомендация, не заигрываться с интернет магазинами на WP. Как только появилась нагрузка, прокачать VPS и думать об альтернативах.
Еще раз напишу. Прекрасно для старта, но если проект взлетает, от WP надо избавляться как можно быстрее.
Загляните по ссылке, там черным по белому, в readme, написано что composer было нельзя использовать. Еще хочу заметить, я не позиционирую ЭТО как некое «фв» и не предлагаю его использовать даже в домашних проектах :)
P.S. Не видите разницы между этими двумя «проектами»? У меня для вас плохие новости :)
1. Code style — PSR-2 и только. Самый важный пункт как я считаю. Ваш текущий код невозможно читать
2. ООП. Namespace, имена классов. В PHP обычно используется CamelCase
3. MVC у вас в целом реализован, но на троечку мягко говоря. В шаблон например нельзя передать данные :)
4. Структура файлов очень плохая. Задумайтесь. Есть общемировые практики, следовать бездумно которым не стоит разумеется, но учитывать нужно обязательно.
Сама идея делать свой MVC фреймворк — отличная. Но делать реальные проекты на нем — скорее ужасная. Если вы откажетесь от проекта, то следующему проще будет переписать проект с нуля, чем понимать что делает ваш фреймворк :) Тем не менее, современные фреймворки весьма сложные в понимании, что и как работает, они слабо подходят для изучения. С ними можно работать не понимания что под капотом, но это ведет к другим проблемам, поэтому сделать свой фреймворк «по фану» — рекомендую :) Я недавно делал одно тестовое, несмотря на то, что я считаю его просто MVC каркасом, могу порекомендовать вам разобрать каждую строчку github.com/arku31/mvc_blog
Несмотря на то то, что оно незаконченное (был лимит по времени), не имеет тестов и имеет некоторые проблемы — это будет очень полезно для вас, т.к. это чистый php (такое было требование) и каждая строка написана руками и с определенной целью.
Обратите внимание на работу с шаблонами, моделями, сессиями, request/response. Это тот минимум, который требуется в минимальном понимании что такое фреймворк :)
Это решение не масштабируемое, вы загнали себя в достаточно узкие рамки, выход из которых будет стоить вам полного рефакторинга структуры проекта.
Если хотелось готового из коробки решения — есть wordpress с его историей редактирования. В вашем же случае, как по мне, было проще создать дополнительную таблицу с историей редактирования и кастомизировать WYSIWYG (это обычно не так сложно, BBCode+regex на бекенде), чтобы облегчить жизнь редакторам.
В прочем, решение имеет право на жизнь, если вы, переходя на статику, просчитали вышеописанный момент и однозначно и на века, решили, что бекенд не нужен :)
Поделюсь опытом. За последние 5 лет владения авто проехал более 100 тысяч км, в основном по РФ. Ни разу меня не пытались лишить прав за пьянку и даже в трубочку не дышал. Алкоголь употребляю и иногда даже больше чем нужно :( Но это уже третья проблема и решается она тоже совсем по другому.
Серебренной пули, решающей все вопросы сразу не существует.
Второе слишком сложно
Третье нереально.
Как насчет 300 тысяч и 3 миллионов?
P.S. Только в данном случае надо разделять 0.1 промилле и 3 промилле.
В отличии от превышения скорости (задумался, нога на педали, ненамеренно превысил на 5 км\ч) — это всегда намеренное желание показать превосходство. И возможность наказать за такое желание должна иметься.