Функция записи данных из контента в произвольное поле

Admin WordPress

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

Я уже рассказывал о регулярных выражениях и приводил пример работы PHP функции preg_match. Здесь она тоже будет использоваться.

Код такой:

<?php

preg_match("/<h2>(.*?)<\/h2>/s", $post->post_content, $author_name);

$post_id = $GLOBALS['post']->ID;

$book_author_update = get_post_meta( $post->ID, 'book_author', true );

if( empty( $book_author_update) ) {

    update_post_meta( $post_id, 'book_author', $author_name[1] );

} ?>

Принцип работы следующий. Сначала мы ищем с помощью preg_match данные в записи между тегами h2. Затем мы создаем переменную book_author_update, которой присваиваем значения произвольного поля с именем book_author. А дальше проверяем, если поле пустое, то записываем в него какие-то данные. Если там уже содержатся данные, то ничего не трогаем.

У сайта нет цели самоокупаться, поэтому на сайте нет рекламы. Но если вам пригодилась информация, можете лайкнуть страницу, оставить комментарий или отправить мне подарок на чашечку кофе.

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"Функция записи данных из контента в произвольное поле"