придется вам объяснять слишком много, вряд ли кто возьмется за рассуждения и обучение. Я думаю самое простое решение, вам сначала вникнуть в задачу и поставить перед собой проблему. Потом написать сюда о проблеме и вам ее превратят в задачу. А с задачами бороться намного легче, чем с проблемами.
у вас времени и средств не хватит, создать полноценный безопасный магазин на чистом php
в итоге потратив несколько лет вы все равно напишете свой фреймворк и забудете про магазин
я думаю тут базы данных вообще не причем, следовательно и elastic search тоже
вы же не будете подтягивать файл, затем сохранять его текст в БД, индексировать и искать текст в БД?
dmitriyivvvv, яндекс ищет потенциальных работников с нужным навыком по теме, а не задавальщика вопросов. Иными словами, если вам тут помогут и вы выдадите это решение за свое, то вы введете в заблуждение работодателя. В конечном итоге потратите впустую время работодателя и свое.
добавлю что comment_likes это связь многие ко многим в вашей концепции. Получается что у одного лайка могут быть несколько пользователей. Можно и так, но не красиво, не логично и ресурсозатратно. Лучше пока не поздно удалить эту таблицу, и добавить поле likes_count в таблицу comments.
ну тоже самое, оберните sendContact в try/catch расставьте логи, поизучайте логи, записывайте результат обращения к api, анализируйте. Другого решения пока нет (и вряд ли будет)
дело в том что на вебхуке телеграму надо всегда возвращать ok, 200. Когда у нас на вебхуке происходит ошибка, то телеграм повторно отсылает сообщение и таким образом получается завал. Надо вебхук обернуть в try/catch и при возникновении ошибки записывать ее в логи, а телеграму возвратить ok, 200. Таким образом все встанет на свои места