Jump to content
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Как правильно обновить форум?

Здравствуйте.

 

Подскажите пожалуйста, какая правильная технология обновления форума?

Вот мне конкренто нужно обновиться с 3.3.3 на 3.3.4

На сколько я понял, для этого нужно скачать целый дитрибутив 3.3.4, загрузить его целиком (папку upload), с заменой (я обычно не заменяю, а просто в другую папку загружаю, и папки переименовываю, но не важно)

Потом уже с нового форума 3.3.4 захожу, и обновляюсь.

И соответсвенно все хорошо, все работает, и теперь уже папка с 3.3.4 стала форумом (а старая 3.3.3) уже не функционирует.

НО

при такой системе обновления, когда все меняется под корень, мне постоянно приходится перемещать, например, изображения, сторонние файлы и папки, файлы приложений, например, + вспоминать, в каких файлах я делал какие-то изменения и т.д.

Вот такой замороченный способ - это единственный способ одновить движок, пусть даже таким небольшим обновлением? (3.3.3-3.3.4)

Или я что-то делаю не так, и есть куда более простой способ, без полной замены файлов?

 

Спасибо!

Featured Replies

1. Заливать надо поверх с перезаписью файлов. Дистрибутивы рассчитаны именно на такой способ обновления, при нем ничего важного не перезапишется, ничего старого (кэши, аттачи, хуки, аватары и т.д.) не потеряется.

 

2. Не надо ничего править в файлах форума. Единственные файлы с правками, что могут быть у вас, это кучка furlTemplates.php в папках приложений, в случае, если вы меняли систему ЧПУ. Их можно удалять из нового дистрибутива перед его загрузкой на сервер.

 

Только тупые школьники редактируют файлы часто обновляющегося скрипта, а потом переносят правки вручную. Вы же не тупой школьник? Для остальных людей для любых задач либо уже существуют хуки, либо можно создать хуки.

  • Author

Спасибо.

Ок, ясно, буду поверх презаписывать.

Но, например, у меня есть пара правок в папке admin (не сторонних модулей) и еще я правил редактор ответа для "ъ" в опере (ну вы знаете, наверное) Это можно через хуки поправить?

А может быть и еще что-то правил, вне шаблона, (не то, что можно через админку поправить) и например картинки у меня в masters тоже тогда перезапишутся.

Просто другие скрипты при обновлениях используют только файлы именно обновления (меняют 20-100 исправленных файлов + запросы к БД, а этот предлагает все перезаписывать, вот я и уточняю.

Edited by SergeyC

у меня есть пара правок в папке classes

Эти классы тоже можно изменять хуками.

 

и еще я правил редактор ответа для "ъ" в опере (ну вы знаете, наверное)

А вот с этим трудно сказать, что делать. Думаю, можно создать отдельный измененный js-файл с другим именем, и изменить путь к старому скрипту на путь к этой новой версии правкой шаблонов или хуком.

 

Просто другие скрипты при обновлениях используют только файлы именно обновления (меняют 20-100 исправленных файлов + запросы к БД, а этот предлагает все перезаписывать, вот я и уточняю.

IPS исторически выкладывает полные новые дистрибутивы, чтобы всегда можно было обновиться с любой версии до текущей. Т.е. залив только что скачанный дистрибутив поверх, скажем, скрипта версии 2.3.6, или 3.0.4, или любой другой - вы сможете легко обновить её до самой актуальной. При этом все необходимые запросы, перестройка кэша и контента производятся через централизованный мастер, не требующий безумных умений, а в составе дистрибутива есть история всех изменений в БД и структуре начиная с дремуче-лохматых версий. И ровно тот же дистрибутив может использоваться и для установки форума "с нуля". Цена такой универсальности - полная перезапись при каждом обновлении. Конечно, можно проходить diff-ом по дистрибутивам, сравнивая чистый дистрибутив текущей и последней версий, выделять только измененные файлы, и заливать только их, но это слишком нудный процесс, и потому никто так не делает. Да и IPS вообще сильно "западная" компания, и считает, что пользователю такие страшные вещи, как SQL-запросы, и подмена каких-то отдельных файлов, знать вообще ни к чему - все сделано "как для тупых" :)

 

Если хотите, опишите, что за правки вы сделали, а мы сможем подсказать, как оформить их в форме хуков :)

  • Author

Спасибо!

Я понял какие тут дела, в принципе правильная политика обновлений, просто я уточнить хотел.

А вот если поможете с хуками, это вообще замечательно будет, я может быть на основе этго хука хоть немного въеду вообще в процесс хуконаписания (ну, хочется в это верить :)

 

admin/applications/forums/sources/classes/forums/class_forums.php

$forum_data['last_title'] = IPSText::truncate($forum_data['last_title'], 30);

30 я заменил на 100

 

Как это можно реализовать через хук?

ri_lltf.xml

 

s:14:"libApplication";s:6:"forums"; - приложение forums

s:15:"classToOverload";s:12:"class_forums" - класс class_forums

 

ну а в коде хука обычное ООП.

 

UPD. Часть символов покорежилась, вставил хук аттачем)

 

Вообще тут справочка есть небольшая: http://community.invisionpower.com/resources/documentation/index.html/_/developer-resources/hooks/start-here-creating-a-hook-r397

 

И на форуме как-то расписывалось уже довольно детально создание хуков. Не помню где, но поиском найдется наверняка)

  • Author

Спасибо большое!

Вы мне очень помогаете.

  • 2 years later...

Всем привет!

Мне нужна помощь по обновлению форума. Произошел ужасный глюк не могут регится юзеры. и в админке в ручную не активируются. при реге выдает-ошибка базы

 

post-57105-0-65760300-1410595968_thumb.png

Edited by Djin37

Всем привет!

Мне нужна помощь по обновлению форума. Произошел ужасный глюк не могут регится юзеры. и в админке в ручную не активируются. при реге выдает-ошибка базы

 

ошибка.PNG

 

1) Админ центр - Поддержка - проверка Базы и Проверка индексов базы. (Если какие-то таблицы битые то оно Вам скажет и покажет).

 

2) Если нужно обновить форум, пишите в ЛС договоримся.

при реге выдает-ошибка базы
Смотрите логи sql-ошибок.

Смотрите логи sql-ошибок.

 

знать бы где и что с этими логами делать :)

я даже если и увижу их. и что? скажу-ооооо! какие красивые логи!

 

обновление может помочь? а то у меня версия 3.2.3

Сами не справитесь с обновлением. Но его стоит сделать.

 

Логи ошибок можно выложить сюда.

Edited by Zero108

знать бы где и что с этими логами делать
В АЦ есть логи (журналы). Для англ. админки путь такой: ACP - Stats ans Logs - SQL Error Logs. Либо в папке cache - файл sql_error_latest.cgi

Что делать? Для начала найти и опубликовать.

я даже если и увижу их. и что?

То, что их надо приводить сюда если хотите помощи. Без логов вам помогут только экстрасенсы.

 

Не выкладывайте бессмысленные портянки, если таблицами все в порядке.

 

обновление может помочь? а то у меня версия 3.2.3

Какое отношение тогда ваша проблема имеет к этой теме? Вы обновились, или только решили? Если проблема не является следствием обновления то не следует засорять эту тему, а создаем новую, предварительно изучив другие похожие темы связанные с ошибкой базы данных.

В АЦ есть логи (журналы). Для англ. админки путь такой: ACP - Stats ans Logs - SQL Error Logs. Либо в папке cache - файл sql_error_latest.cgi

Что делать? Для начала найти и опубликовать.

 

сообщение атамана исчезло. под ним я опубликовал логи как мог в цитате (а тег спойлер тут не работает)

вобщем предыстория:

поймал меня правообладатель DLE. купил я лицензию. естественно чтобы активировать ключ пришлось обновлять движок DLE. в нем стоит сторонний модуль интеграции DLE+IPB 3 Copyright © 2014 created by kaliostro.

и все было замечательно пока у меня новый юзер не стал регаться. Ничего у него не получилось. Тогда стал регаться я-та же история. В чем трабл.не известно. Возможно модуль интеграции с новой версией DLE не работает.А может при обновлении DLE каким то боком в базу проникла ошибка.

А еще раньше (пару лет назад) моя учетка админа забаговалась.Пока не сообразил "нового админа" создать вообще нельзя было не писать ни модерировать ничего. Старая учетка админа так и осталась(слишком много постов на форуме с фотками у нее) и как их объединить в одного админа не понятно.

Edited by Djin37

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.