Intereting Posts
Можно ли добавить настраиваемое поле для динамического изменения шрифтов темы в бэкэнде WordPress? скорость журнала протокола php Как WordPress отличает основной php-файл плагина от других php-файлов? add_rewrite_rule несколько запросов не найдены Как загрузить некоторый код jquery для проверки в настройке темы? Таблица ревизий в моей базе данных составляет 70% и растет. Что мне делать? Как подсчитать количество категорий верхнего уровня? One Child Functions.php для нескольких детских тем Как удалить все правила перезаписи из WordPress? Почему wordpress заставляет генерировать ссылку https? Многократное одобрение редакторов перед публикацией? Пользовательские шаблоны для сообщений, например, для страниц: page- {id} vs single- {id} Получать сообщения после сегодняшнего дня (предстоящие события) Styleswitcher или themewitcher, чтобы пользователь мог вернуться к стандартным представлениям с мобильного устройства Отслеживание срока службы запроса

Как добавить один тег к нескольким сообщениям?

У меня около 1500 сообщений в блоге WordPress. Прежде чем перейти к новому дизайну, мне нужно пометить все эти сообщения одним тегом «old». Как я могу это сделать? Я пробовал навалом редактировать сообщения, и каждый раз, когда я пробовал, он всегда будет занимать до 78 сообщений. Я пытался увеличить пределы сервера, и все равно это не сработает! Как я могу это сделать?

Solutions Collecting From Web of "Как добавить один тег к нескольким сообщениям?"

Если у вас есть возможность использовать wp-cli в bash-подобной оболочке, это удобный способ сделать это:

for ID in $(wp post list --post_type=post --post_status=any --field=ID); do wp post term add $ID post_tag old; done 
  • for ID in $(…); do for ID in $(…); do запускает цикл для каждой строки вывода внутренней команды
  • wp post list --post_type=post --post_status=any --field=ID перечисляет все почтовые идентификаторы сообщений. Это фактически интерфейс командной строки для WP_Query .
  • wp post term add $ID post_tag old назначает термин old таксономии post_tag каждому post_tag цикла, идентифицируемому переменной цикла $ID . Если этот термин не существует, он создается впервые.
  • done отмечает конец цикла

Попробуйте это

global $post; $args = array( 'posts_per_page' => -1); $myposts = get_posts( $args ); foreach( $myposts as $post ) : setup_postdata($post); wp_set_post_tags( the_ID(), 'old', true ); endforeach;