Intereting Posts
Отображает URL-адрес дважды и получает 404 ошибки после активации 2 запроса со счетчиками Требуемый плагин JS не вставлен в мою тему Мне нужно использовать месяц, год в моих архивах и страницах моего сайта wordpress Orderby не работает, как ожидалось в пользовательском запросе Является ли $ page глобальной переменной в wordpress? Как создать страницу wordpress, которая позволяет пользователям создавать собственную викторину? Multisite get_home_url (); – Получение URL-адреса для текущего сайта Исключить категорию из поданной в списке Robots.txt с WordPress и Joomla на одном сервере Есть ли плагин, который толкает сообщения в ваш профиль Google+? Подтверждение подлинности электронной почты для регистрации (сохранение неутвержденных пользователей из таблицы пользователей) не могу войти в мой wp-login и получить доступ к моей панели интерактивная диаграмма с положительным результатом Как я могу передать пользовательский / динамический продукт в корзину Woocommerce?

Обновление метаданных сообщений (настраиваемое поле) по ссылке

У меня есть сообщение на моем веб-сайте WordPress, в котором много настраиваемых полей. У меня есть лист Excel с комбинацией «post link» – «custom field data». Это настраиваемое поле (URL-адрес видео) уже настроено для каждого сообщения, но теперь мне нужно изменить и обновить эти ссылки на основе листа Excel. У меня нет комбинации «post_id – post meta data», просто ссылка и соответствующее значение метаданных.

Есть ли способ обновить эти данные с помощью некоторого кода?

Я не тестировал это, но идея состоит в том, чтобы найти идентификатор сообщения на основе URL-адреса почты, а затем обновить мета-поле для этого сообщения.

Я бы сохранил это превосходство как формат csv. Импортируйте его в новую таблицу в своей базе данных. Таким образом, вы можете легко получить доступ к этой информации, вместо того, чтобы читать файл excel (что может потребовать включения некоторых дополнительных php-классов).

Когда у вас есть данные excel в базе данных, вы можете вытащить эти данные и запустить их в цикле.

Например:

global $wpdb; //You can use $wpdb to query non-wordpress tables //Here I query I table I created video_urls //It has two columns. One with the post url, and one with the video url $results = $wpdb->get_results('SELECT * FROM video_urls', OBJECT); //Loop through each result foreach($results as $result){ //use the wordpress function url_to_postid() to get the post id $post_id = url_to_postid($result->post_url); //update the post_meta with the wordpress function below //you will need to know the name of the custom field. update_post_meta($post_id, "NAME_OF_CUSTOM_FIELD", $result->video_url); } 

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

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