Руководство по публикации модов на официальном сайте

Автор Bugo, 01 сентября 2010, 19:36:01

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Bugo

Созданный Вами мод НЕ будет опубликован на официальном сайте модификаций, если хотя бы одно из условий, перечисленных ниже, НЕ выполняется:


       
  • Отсутствие «труднопереводимого» текста в исходных файлах и в файлах шаблонов => каждое слово, каждая фраза, которые Вы используете, должны быть определены в виде констант $txt['переменная'] = 'значение' в языковых файлах. Если же Вы будете использовать слова прямо в шаблонах, то их перевод на другие языки будет значительно усложнен. Это правило касается даже английского! Вы можете прописать изменения в языковых файлах при установке своих модов, но не забывайте указывать error="skip" напротив изменения каждого языкового файла (кроме *.english.php), чтобы они пропускались в случае отсутствия.
  • Никаких SQL-запросов в шаблонах! => все подобные запросы должны быть прописаны и работать только в исходных (sources) файлах форума. Это связано с тем, что в случае обнаружения каких-либо ошибок в запросах могут возникнуть проблемы с отображением шаблонов, что крайне недопустимо.
  • Обработка данных => перед передачей каких-либо данных по запросу (через форму или URL) необходимо проверить существование и правильность типа этих данных. Кроме того, нелишним было бы прописывать реакцию ваших скриптов на отсутствие тех или иных переменных (обработка ошибок).
  • Изменения тем оформления => любые изменения, производимые в темах оформления, должны быть прописаны для используемой темы по умолчанию (Core для 1.x, Curve для 2.x). Вы можете прописать изменения и для других тем, но не забудьте использовать директиву skip="error", чтобы эти изменения не вызывали ошибки при установке мода, в случае отсутствия нужных файлов.
  • Иллюстрации (включая аватары и смайлы) => любые моды (в том числе пакеты аватаров и смайлов), содержащие какой-либо графический материал, должны содержать ссылки на источник данного материала, для последующей проверки разрешения на его использование. Если это требуется автором соответствующего материала, Вы обязаны указать в readme, в коде или где-либо ещё (в файлах мода) упоминание об авторских правах.
  • Несанкционированное использование чужих работ => при использовании Вами чужого кода, идей или графики в своем моде, будь то JavaScript-библиотека, PHP-библиотека или просто код из чужого мода, Вы должны иметь разрешение от первоначального автора, прежде чем использовать его работу в своих целях. Разрешение может быть подтверждено посредством электронной почты, ЛС или скриншотами разговоров в мессенджерах или чатах.
  • Аккуратная установка/удаление => ваш мод должен без всяких ошибок устанавливаться на свежеустановленный форум, а также удаляться без всяких следов (кроме файлов резервных копий). Данные мода могут остаться в базе данных, но должны быть уничтожены, если после удаления мода они вызывают или могут вызвать те или иные ошибки. Если ваш мод зависит от другого мода, он должен вносить только соответствующие изменения и ничего лишнего.
  • Правильный дистрибутив => в зависимости от выбранного для установки формата файла, Вы должны использовать соответствующие теги (например, CDATA при использовании XML). В файлах должна быть указана необходимая информация: id, имя автора, название пакета, версия. В архиве мода не должно быть вложенных архивов. Файл package-info.xml должен находиться в корне дистрибутива.
  • Запросы к базе данных => при необходимости выполнения запросов к базе данных, Вы должны использовать только те функции, которые существуют в соответствующей версии SMF. Например, функцию db_query в SMF 1.x или $smcFunc в SMF 2.x. Перечитайте пункт 3.
  • Ваш мод должен работать => наиважнейшее условие. Ваш мод должен работать согласно указанным выше условиям. Все добавленные модом функции должны работать в соответствии со своим назначением и не вызывать каких-либо необоснованных ошибок. Вполне возможно, что в процессе использования мода пользователями будут какие-нибудь ошибки — это нормально. Однако, во время первоначальной проверки мода, перед его одобрением, ваш мод должен устанавливаться и удаляться без каких-либо ошибок, и не оставлять после себя что-либо, кроме информации в базе данных.
  • Чистый код (рекомендация) => желательно, чтобы ваш код был легко читаемым, а имена используемых переменных — понятными и осмысленными. Это во многом облегчит возможную правку кода (для улучшения, исправления ошибок и т. п.) в будущем.

Дополнительно:

       
  • не пытайтесь отправлять ваш мод под разными именами/идентификаторами в надежде ускорить процесс публикации
  • мод легко можно обновлять до его одобрения — это не повлечет перемещение в конец очереди проверки
  • после одобрения мода будет автоматически создана тема с его названием — в разделе Modifications and Packages

Примечание: Не пытайтесь обратиться напрямую к кому-либо из членов команды разработчиков SMF с просьбой поскорее опубликовать ваш мод — не надейтесь на это! В этом случае ваш мод сразу окажется в самом конце списка проверки и Вам придется ждать дольше всех! Если же Вы не отправляли никаких просьб, а Ваш мод проверяется уже больше двух недель — Вы можете, не опасаясь последствий, обратиться с данным вопросом в службу поддержки.

Вышеизложенное является вольным переводом первого сообщения этой темы => http://simplemachines.org/community/?topic=357757

BIOHAZARD

Цитата: Bugo от 01 сентября 2010, 19:36:01
Отсутствие «труднопереводимого» текста в исходных файлах и в файлах шаблонов
нет там такого, там есть hardcoded  - т.е. языковые константы, вбитые прямо в php код мода.
Как абсолютно верно замечено - весь без исключения отображаемый текст должен храниться в переменных (например $txt['chto_to_tam']), даже если это название мода, которое пишется латиницей и не переводится на другие языки.

От себя могу добавить, что страшилка с авторством на графику встречается только в правилах, реально с меня ни разу ничего не спрашивали.
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ