Как я могу отображать сообщения с другого сайта WordPress на мой сайт WordPress? - PullRequest
0 голосов
/ 02 декабря 2018

У меня есть 2 WordPress блог-сайта.Один сайт имеет собственный тип записи.Я хочу показать содержимое этого пользовательского типа поста на моем другом сайте WordPress?

Как это сделать?

Ответы [ 2 ]

0 голосов
/ 02 декабря 2018

Ответ Эшли Брауна технически корректен, но в отношении вашей проблемы, которая очень проста, документация будет несколько запутанной, поскольку документация описывает доступ к REST API в целом, что более сложно.К счастью, ваш случай очень прост и потребует очень мало кода.

Во-первых, API-интерфейс WordPress REST возвратит «обработанный» контент публикации.Это «обработанное» содержимое публикации является результатом применения фильтра «the_content» к содержимому публикации.В частности, он может содержать CSS-селекторы.Важно, чтобы сторонний сайт также загружал CSS-файлы нативного сайта, который используется CPT.Это может означать, что если CPT взят из плагина и этот плагин загружает файлы CSS, вам может потребоваться установить этот плагин на сторонний сайт.

Во-вторых, используйте свой браузер для получения URL-адреса с помощью REST API с собственного сайта.,Например, попробуйте что-то вроде следующего:

http://localhost/wp-json/wp/v2/posts/1

Это вернет JSON с полем content.rendered, который в приведенном выше URL выглядит следующим образом:

<p>line first&#8230;</p>\n<p>&nbsp;</p>\n<p>AAA return &#8216;hello&#8217; . &#8216; &#8216; . &#8216;world&#8217;; ZZZ</p>\n<p>&nbsp;</p>\n<p>line last&#8230;</p>\n

Это просто необработанный HTML.

Таким образом, вы можете использовать AJAX-запрос для извлечения объекта JSON и извлечения поля content.rendered из этого объекта.Затем используйте jQuery.append () (или что-то похожее), чтобы вставить этот HTML в вашу DOM.

Есть еще одна вещь, которую CPT должен быть включен для доступа REST.см. мой пост о том, как это сделать.

ADDENDUM

Мне пришло в голову, что кто-то написал бы плагин для такого рода основных функций.Я нашел это REST API Post Embeds .Я ничего не знаю об этом плагине и, возможно, есть другие плагины, которые лучше, но эта функциональность настолько проста и настолько проста в реализации, что должен быть плагин, который делает это.

0 голосов
/ 02 декабря 2018

На сайте с CPT убедитесь, что CPT открыт для API REST (вы можете сделать это в коде CPT), а затем используйте REST API для перетаскивания их на ваш другой сайт https://developer.wordpress.org/rest-api/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...