Задать вопрос
mediol-name
@mediol-name
Wordpress Developer

Как публиковать посты по API на несколько удаленных сайтов?

Есть три сайта: главный и два дочерних. Задача% при публикации пота на главном сайте, публиковать их же и на дочерних сайтах. Исследуя документацию и чат GPT, я написал некий код, который выполняет задачу, но на дочернем сайте появляется два одинаковых поста.Прошу помощи найти проблему. Также интересно, есть ли возможность передавать изображения в контенте на дочерний сайт в медиатеку. Сейчас изображение на дочернем сайте ссылается на основной домен. И не передается featured image. Код ниже:
add_action('publish_post', 'sync_to_child_site');

function sync_to_child_site($new_status, $old_status, $post) {
    if ($new_status === 'publish') {
        $post_data = get_post($post->ID);

        $login = 'admin';
        $password = '...';

        $request = wp_remote_post(
            'https://child-domain/wp-json/wp/v2/posts',
            array(
                'headers' => array(
                    'Authorization' => 'Basic ' . base64_encode("$login:$password")
                ),
                'body' => array(
                    'title' => $post_data->post_title,
                    'content' => $post_data->post_content,
                    'status' => 'publish',
                )
            )
        );
    }
}


Возможно кто-то сталкивался с такими задачами? Прошу подсказать решение или хотя бы направление, куда "копать".
  • Вопрос задан
  • 41 просмотр
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 1
@pantsarny
Чтобы отслеживать вставку и обновление постов рекомендую
https://developer.wordpress.org/reference/hooks/wp...
А суто правильная - слать пост запрос на апи
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы