Я не перехожу на новые функции блоков WordPress и остаюсь на классическом редакторе.
Только что заметил, что плагин WP Discourse получил обновление для настройки, которую я использую, — Force Publish:
Эта настройка применяется только при использовании редактора блоков для публикации записей.
Жаль, но где есть желание, там есть и способ. Кто-нибудь ещё сталкивался с этой проблемой и нашёл кастомное решение, например, что-то, что можно добавить в старый файл functions.php вашей темы?
Привет, @oopsyscoops, да, есть некоторые ограничения при поддержке обоих редакторов. Вы всё ещё можете использовать настройку «Автоматическая публикация» с классическим редактором. Возникают ли у вас проблемы с её использованием в вашем случае?
Автоматическая публикация подошла бы, если бы это был блог для одного автора.
Однако для блога с несколькими авторами функция Принудительная публикация оказалась очень полезной.
Прежде чем я начну изучать список изменений, не подскажете ли вы, в какой версии WP Discourse эта функция была перенесена в редактор блоков и удалена из классического редактора?
Я не предлагаю откатываться к той версии (это была бы ужасная идея), но, возможно, я смогу изучить код и восстановить старое решение через свою тему.
Надеюсь, что WP Discourse в конечном итоге не откажется полностью от классического редактора. Классический редактор до сих пор используется более чем на 6 миллионах сайтов (это подтверждённые данные, но, вероятно, их ещё больше), и я уверен, что миллионы людей будут продолжать использовать его функции неограниченно долго.
Я планирую это, и подозреваю, что функции классического редактора в конечном итоге снова получат официальную (и опциональную) поддержку в WP (без зависимости от плагинов), когда спрос станет очевидным и они осознают, что даже спустя годы некоторые люди просто предпочитают классический редактор и не перейдут на новые функции блоков.
Я понимаю вашу точку зрения, но это может быть просто вопросом обучения авторов и проверки, возникнут ли на практике проблемы? Вы знаете своих авторов лучше меня, но я бы не исключал такой вариант.
Классический редактор по-прежнему точно поддерживается.
Сомневаюсь, но я уже ошибался (по крайней мере, трижды, о чем мне известно ;))
Мы будем рады получить ваш pull request, если вы сможете решить проблемы, которые @simon стремился устранить при удалении этой функции (см., например). Он, возможно, сможет объяснить подробнее.
Это просто непрактично. Я работаю редактором уже более десяти лет и обучал, а также управлял десятками писателей самого разного уровня — от полных луддитов до программистов. За всё время у меня было лишь несколько хороших авторов, которые при этом были достаточно технически подкованы и организованы, чтобы следовать ВСЕМ моим инструкциям (без затруднений).
Я мог бы быть более строгим редактором (я и так уже довольно одержим деталями), но тогда я потерял бы ценные голоса. Слишком много замечательных писателей, которые сотрудничали со мной за эти годы, едва умели включать компьютер. Многим из них сложно давалось даже освоение публикации в WordPress, и они хотели бы просто отправлять мне документы Word по электронной почте.
Поэтому я обучаю их так хорошо, как могу, но в конечном счёте автоматизация — это здравый смысл.
В любом случае, мне бы очень хотелось узнать больше о том, почему эта функция слишком сложна в поддержке одновременно для Classic и Block редакторов. Если вы сможете кратко напомнить, @simon? К слову, у меня есть партнёр по одному проекту, который настаивает на том, чтобы я разрешил ему использовать Block редактор (в то время как вся остальная команда использует Classic), так что у меня есть некоторый опыт работы с обоими редакторами, и я понимаю, как это может стать проблемой.
Да, было бы здорово, чтобы опция «Принудительная публикация» работала с обоими редакторами. Прошло уже несколько лет с тех пор, как я последний раз занимался этим. Я не уверен, в чём была причина проблемы, но подозреваю, что её можно решить.
// Настройка «Принудительная публикация» не может быть легко поддержана одновременно в редакторах Block и Classic. Переменная $is_rest_request
// используется для того, чтобы настройка «Принудительная публикация» учитывалась только для записей, опубликованных через редактор Block.
$is_rest_request = defined( 'REST_REQUEST' ) && REST_REQUEST;
Если мне нужно предположить, возможно, старый способ вызывал ошибки в редакторе Block? Так что, может быть, всё так же просто, как использование условного оператора?
is_block_editor или use_block_editor_for_post могут подойти:
if ( is_block_editor() ) {
// делать это новым способом
} else {
// делать это старым способом
}
Если вы обращаетесь ко мне, я точно не стану лезть напролом, пока @simon не вспомнит, почему это было удалено изначально (или не пересмотрит свои действия, чтобы снова узнать, что это было). Это может быть какой-то неизвестный кошмар, связанный с ядром WordPress, Discourse или WP Discourse, который не сводится к простой проблеме, ограниченной этими несколькими файлами и строками кода.