OlegSh

OlegSh

С нами с 24 июля 2023; Место в рейтинге пользователей: #7449
OlegSh
26 июля 2023, 18:24
0
Здравствуйте, хорошо, сейчас укажу
OlegSh
25 июля 2023, 21:36
0
Николай, спасибо. Вы мне очень помогли. Дело в том, что я 30 лет работал журналистом и редактором, последние 15 лет главредом в онлайн СМИ, а программированием никогда не занимался. Этот сайт мой личный, сделан в 2015 году программистом, который сказал, что он лучший в России по MODX)), кажется его звали Николай Леонов. Смутно припоминаю, что он мне говорил, что именно в этом проекте (это тиражируемый сайт — на его основе работало еще три онлайн-медиа, сейчас закрыты) он выдумал какой -то ловкий ход связанный с Тикетами и Артиклами. Потом Коля куда-то пропал.
На сайте было около 1000 статей, а весной этого года я стал этот сайт снова развивать как контетный. И мне стало интересно не только контент, но и код) Это как волшебство. На FL пошел чтобы найти исполнителей убрать ошибки, но пока искал — выяснил сам в чатах и в беседах с GPT, что проблема перегрузки БД и сайта на которые ругался хостер Бегет может быть связана с настройками кеша — и действительно, везде стояло значение 0! Поменял на 7200, 3600 и даже 21400 — вроде нагрузка резко упала.
Может вы возьметесь за вознаграждение убрать эту ошибку? Хотя сайт вроде работает, но ошибка напрягяет. Еще раз спасибо за помощь.
OlegSh
25 июля 2023, 16:40
0
Огромная благодарность! Ошибки исчезли. Николай, вы волшебник. Спасибо. Оказывается так просто, но и так сложно, ведь это надо вса знать! Я перелопатил все файлы, а «спецы» с FL-ру не смогли помочь, только сломали сайт пришлось делать бэкап)

Ошибки про погоду и валюту исчезли. Осталась только самая лютая: [2023-07-25 16:32:55] (ERROR @ /home/o/olegsh6w/dopross.ru/core/xpdo/om/xpdoobject.class.php: 344) Instantiated a derived class Ticket that is not a subclass of the requested class Article.

Но тут я уже стесняюсь вас спрашивать, кажется это все сложно в реализации.Порылся в файлах и директориях, про которые GPT пишет, ничего не понял.

Чат GPT написал, что Ошибка «Instantiated a derived class Ticket that is not a subclass of the requested class Article» означает, что произошла попытка создать экземпляр класса Ticket, который является производным (наследником) от класса Article. Однако, класс Ticket не является подклассом класса Article, как ожидалось.

Возможные причины и решения:

1. Убедитесь, что классы Ticket и Article правильно определены и располагаются в соответствующих файлах.

2. Проверьте, что в коде правильно указано наследование класса Ticket от класса Article. Убедитесь, что в классе Ticket используется ключевое слово «extends» с указанием класса-родителя Article.

3. Если классы Ticket и Article находятся в разных пространствах имен (namespaces), убедитесь, что пространство имен класса Ticket правильно указано и соответствует ожидаемому пространству имен.

4. Если классы Ticket и Article представлены в виде плагинов или расширений для какой-либо платформы, убедитесь, что они правильно зарегистрированы и конфигурированы в системе.

Тщательно проверьте код и конфигурацию, чтобы убедиться, что классы Ticket и Article определены и настроены правильно, а также что наследование между ними указано верно.

Вопрос: А в каких файлах в MODX могут быть классы Ticket и Article?

В MODX классы Ticket и Article могут находиться в файлах с расширением ".php" в следующих расположениях:

1. /core/components/{имя_компонента}/model/{имя_плагина}/{имя_класса}.php

— Компоненты MODX обычно содержат модели (models), которые могут содержать классы для различных объектов, таких как «статьи» (Article). Поэтому класс Article может быть определен в файле, который находится внутри папки «model» с именем плагина.

2. /core/model/modx/{имя_класса}.php

— В папке "/core/model/modx" обычно находятся базовые классы MODX, которые отвечают за базовую функциональность системы. Поэтому класс Ticket может быть определен в файле, который расположен внутри папки «modx».

3. /assets/lib/{имя_плагина}/{имя_класса}.php

— Если вы используете сторонние плагины или библиотеки, классы Ticket и Article могут быть размещены в папке "/assets/lib" в соответствующей подпапке с именем плагина.

Обратите внимание, что вышеуказанные расположения файлов являются типичными для MODX, но могут отличаться в зависимости от конкретной конфигурации или структуры вашего проекта. Рекомендуется просмотреть структуру файлов в вашей установке MODX, чтобы точно определить местоположение классов Ticket и Article.
OlegSh
25 июля 2023, 16:22
0
удалять боюсь, чтобы сайт не сломать) да, это сниппет все верно, извините
OlegSh
25 июля 2023, 16:16
0
Добрый день.
в header так:

!--&element=`current_weather`-->
!--&cacheExpires=`7200`-->
!--&cacheElementKey=`weather`-->
!--&cacheKey=`dg_cache`]]-->

а сам чанк так:
//<?php
//$json = file_get_contents('https://api.openweathermap.org/data/2.5/weather?q=Moscow&mode=json&lang=ru&units=metric&APPID=d0e3687ac0b25562f0e995c81580f565');

 //$weather=$modx->fromJSON($json);

 //echo (intval($weather['main']['temp'])>0?"+".round($weather['main']['temp']):round($weather['main']['temp']))." <img src='https://openweathermap.org/img/w/".$weather['weather'][0]['icon'].".png'>";
OlegSh
25 июля 2023, 10:01
0
Добрый день, Николай! Точно! Была такая запись, удалил, надеюсь, что поможет. Огромное спасибо! Исчезла эта ошибка!
Может еще про погоду и валюту подскажите?! Коды курса валют и погоды на сайте в Header и в чанках закомментировал, кеш везде стоит 7200, но MODX генерирует ошибки: (ERROR @ /home/o/olegsh6w/dopross.ru/core/cache/includes/elements/modsnippet/35.include.cache.php: 51) getCache could not find requested element `current_weather`-->