Intereting Posts
Лучший способ разделить объекты символов (% 20 и т. Д.) Соответствующий пост thumbnail не появляется stackexchange-like отправить окно комментария Как использовать SMTP-настройки «phpmailer_init» только для определенных действий «wp_mail»? Прикрепленные сообщения превышают количество сообщений на странице Есть ли режим обслуживания в ядре WordPress? Как добавить body_class из wp_termmeta подобно редактору, может создать любого нового пользователя, кроме администратора Я хочу удалить изображение заголовка главной страницы со всех других страниц Отображать таксономии пользовательских сообщений в виде страницы архива Сохраняет перенаправление моей копии разработки Странно: /? Имя в URL-адресе ведет в блог Проверьте, был ли скрипт / стиль зарегистрирован / зарегистрирован Как передать как действие, так и formdata в wordpress ajax? Как я могу запросить конкретную страницу из многостраничной страницы

Лучший способ обновить многочисленную таблицу базы данных многопользовательского плагина

В кодексе объясняется, как подключиться к plugin_loaded и проверить версию текущего установленного плагина на то, что зарегистрировано в параметрах, а затем понять, нужно ли обновлять таблицу плагинов.

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

Нет ли ручного способа сделать это? как-то через cron? другие предложения?

Solutions Collecting From Web of "Лучший способ обновить многочисленную таблицу базы данных многопользовательского плагина"

Вы можете просто добавить проверку для is_admin() и current_user_can("update_plugins") чтобы убедиться, что вы работаете только для пользователей-администраторов, которые в настоящее время находятся в wp-admin. Любой пользователь, просматривающий переднюю часть, ничего не заметит, войдет в систему или нет.

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