Как правильно отключить ПЕРЕСМОТР и АВТОСохранение для всего сайта и дополнительно только для пользовательского типа сообщения

13

Есть ли комбинация functions.phpловушек / функций, которая может быть добавлена ​​к моей теме, чтобы правильно отключить REVISIONS и AUTOSAVE для всей установки WordPress? Как насчет, если только для определенного пользовательского типа сообщения? Поиск в Интернете дает различные возможности: от отмены регистрации сценариев до изменения основных файлов. Какой приемлемый / правильный способ сделать это?

Ана Бан
источник
Вот лучшее решение : stackoverflow.com/a/30821376/2377343
T.Todua
Как отключить ревизию поста на сайте wordpress.com?
Сантош Кумар

Ответы:

16

Это должно быть размещено в вашем wp-config.php(и нигде больше):

define( 'AUTOSAVE_INTERVAL', 60*60*60*24*365 ); // Set autosave interval to 1x per year
define( 'EMPTY_TRASH_DAYS',  0 ); // Empty trash now: Zero days
define( 'WP_POST_REVISIONS', false ); // Do not save andy revisions
кайзер
источник
обновление: когда я добавляю AUTOSAVE_INTERVALстроку, это заставляет страницу редактора постов постоянно выполнять инструкцию javascript, которая включает / отключает кнопки [Обновить] (и [Сохранить черновик] для нового поста), что также в конечном итоге делает все остальные мои вкладки браузера намного менее отзывчивый (gchrome18). хм ... мысли?
Ана Пан
Да, это (вероятно) означает, что он делает постоянные обновления. Попробуйте изменить это на 20000000000, что должно быть чуть больше года.
Кайзер
Это отключает автосохранение плагина tinyMCE? Похоже, он только устанавливает большой интервал.
Майкл Роджерс
@MichaelRogers Ну, если вы считаете, что года недостаточно, попробуйте попробовать на всю жизнь;)
kaiser
1
@JossieCalderon Зависит от того, где вы установите это. defineНе может быть перезаписан, поэтому включить отчеты об ошибках и убедитесь , что вы поместите его в wp-config.php.
Кайзер
0

Я также ищу, как отключить автосохранение. Но вот что мне сказали в билете Trac :

Если вам действительно нужна эта функция, вам нужно самостоятельно управлять последовательными идентификаторами в настраиваемом поле, а затем реализовать настраиваемую маршрутизацию URL. Это не должно быть слишком сложно.

wikicms
источник
привет @ wikicms я крут с идентификаторами, но спасибо за публикацию. полезно для кого-то там наверняка, или даже для меня в будущем.
Ана Пан
-2

Размещение определений в wp-config.php - это нормально, пока вы не включите WP_DEBUG, когда вы будете получать «уже определенные» уведомления PHP в debug.log каждые пару минут. Другие утверждают, что размещение этих определений выше определения ABSPATH поможет.

Однако я могу категорически подтвердить, что лучшее место для размещения ваших определений - это плагин, потому что активированные плагины загружаются до определения WP по умолчанию.

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

waverlyweb
источник
1
Нет, wp-config.phpэто единственное правильное место. Если вы получаете ошибки, какой-то неработающий код в другом месте пытается определить его снова. Удалить этот код.
fuxia
@ toscho Почему wp-config.phpединственное правильное место? Можете ли вы уточнить?
jdevlin
2
@JamesDevlin Ремонтопригодность и отладка. Вы можете сделать это в очень контролируемой среде, но если вы получаете ошибки, когда помещаете это wp-config.php, что-то еще не работает, перемещение определений не является решением.
fuxia