首页 >CMS教程 >WordPress >启示和WordPress的简介

启示和WordPress的简介

Lisa Kudrow
Lisa Kudrow原创
2025-02-18 12:29:12194浏览

启示和WordPress的简介

> >最终用户想要一个易于发布内容的CMS。我相信大多数用户不想用力编码他们的内容。如果客户问我:“我想添加Slideshare中的一些内容”,我的思想将用于REST API或至少嵌入代码。今天,我们将查看您可能甚至不知道的WordPress的功能。

>

钥匙要点

OEMBED是一项协议,可以通过消费者和提供商的关系轻松嵌入网站中的内容。它指定了四种类型的资源 - 照片,视频,链接和丰富 - 所有这些资源都提供了响应的URL,宽度和高度。
    > WordPress已内置支持OEMBED,并附有白名单提供商列表。通过简单地粘贴从白名单提供商创建帖子或页面时的URL,WordPress会自动获取嵌入式HTML并将其显示在帖子中。用户还可以手动添加其他提供商。
  • >
  • 超出其对最终用户的简单性,Oembed是WordPress中的灵活工具。用户可以对白名单进行试验,与自己的提供商扩展,甚至可以自定义其盖床的外观。 WordPress还提供了注册支持OEMBED并在网站上添加OEMBED支持的站点的功能。
  • 引入oembed
> OEMBED是将内容嵌入网站中的一种非常简单的方法。 OEMBED由消费者和提供商组成。提供商提供的资源可以嵌入消费者,消费者通过OEMBED端点请求这些资源。

OEMBED实施指定4种类型的资源:

photo

    视频
  • 链接
  • Rich
  • 照片,视频和丰富类型应在其响应中提供URL,宽度和高度。提供商还可以包含其他数据,但是在处理此类内容时,这些都是所需的。 OEMBED规范是指导方针,提供者可以自己实施OEMBED。提供商至少应具有一个启用端点和资源URL。
  • >
>让我们看一下幻灯片,看看它们是如何实现的。在他们的文档中,他们指定了OEMBED端点和资源端点。 OEMBED端点是:http://www.slideshare.net/api/oembed/2。资源端点看起来像这样:http://www.slideshare.net/user-slug/slidename-slug。为了从提供商那里获取信息,我们应该使用OEMBED端点并传递资源的URL参数。参数应编码URL。最小要求是URL参数,但您也可以通过maxheight >格式。这确实取决于内容格式,但是对于视频,照片和丰富格式,您可以选择通过这些参数。另外,OEMBED仅指定GET方法,因此您不能使用其他方法。> >让我们使用URL参数向此端点提出请求。 向以下要求:http://www.slideshare.net/api/oembed/2?url=http://www.slideshare.net.net/chris-burgess/chris-burgess/wordpress-wordpress-themeswpmelb2014,您会得到XML响应下列的:

如果仅请求浏览器中的URL值,则只需获得一个普通的HTML页面即可。您每天看到的东西。如果不请求其他格式,则slideshare默认为XML格式。让我们稍微更改请求。这次,我们将添加另一个参数并获得JSON响应。

>
<span><span><span><oembed</span>></span>
</span>  <span><span><span><total-slides</span> type<span>="integer"</span>></span>50<span><span></total-slides</span>></span>  
</span>  <span><span><span><thumbnail-width</span> type<span>="integer"</span>></span>170<span><span></thumbnail-width</span>></span>
</span>  <span><span><span><width</span> type<span>="integer"</span>></span>425<span><span></width</span>></span>
</span>  <span><span><span><type</span>></span>rich<span><span></type</span>></span>
</span>  <span><span><span><provider-name</span>></span>SlideShare<span><span></provider-name</span>></span>
</span>  <span><span><span><slideshow-id</span> type<span>="integer"</span>></span>41489102<span><span></slideshow-id</span>></span>
</span>  <span><span><span><provider-url</span>></span>http://www.slideshare.net<span><span></provider-url</span>></span>
</span>  <span><span><span><slide-image-baseurl</span>></span>//image.slidesharecdn.com/wordpress-themes-wpmelb-2014-141112215416-conversion-gate02/95/slide-<span><span></slide-image-baseurl</span>></span>
</span>  <span><span><span><version</span>></span>1.0<span><span></version</span>></span>
</span>  <span><span><span><conversion-version</span> type<span>="integer"</span>></span>2<span><span></conversion-version</span>></span>
</span>  <span><span><span><html</span>></span><span><span><iframe</span> src<span>="http://www.slideshare.net/slideshow/embed_code/41489102"</span> width<span>="427"</span> height<span>="356"</span> frameborder<span>="0"</span> marginwidth<span>="0"</span> marginheight<span>="0"</span> scrolling<span>="no"</span> <span>style<span>="<span>border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;</span>"</span></span> allowfullscreen></span> <span><span></iframe</span>></span> <span><span><div</span> <span>style<span>="<span>margin-bottom:5px</span>"</span></span>></span> <span><span><strong</span>></span> <span><span><a</span> href<span>="https://www.slideshare.net/chris-burgess/wordpress-themeswpmelb2014"</span> title<span>="WordPress Themes Demystified"</span> target<span>="_blank"</span>></span>WordPress Themes Demystified<span><span></a</span>></span> <span><span></strong</span>></span> from <span><span><strong</span>></span><span><span><a</span> href<span>="http://www.slideshare.net/chris-burgess"</span> target<span>="_blank"</span>></span>Chris Burgess<span><span></a</span>></span><span><span></strong</span>></span> <span><span></div</span>></span>
</span>  <span><span><span></html</span>></span>
</span>  <span><span><span><author-name</span>></span>Chris Burgess<span><span></author-name</span>></span>
</span>  <span><span><span><title</span>></span>WordPress Themes Demystified<span><span></title</span>></span>
</span>  <span><span><span><height</span> type<span>="integer"</span>></span>355<span><span></height</span>></span>
</span><span><span><span></oembed</span>></span></span>

>再次尝试请求该资源,但是这次指定了一个附加参数。让我们将MaxWidth参数放在200中,并请求此URL:http://www.slideshare.net/api/oembed/2?url=http://www.slideshare.net/chris/chris/chris-burgess/wordpress-wordpress-themes-themeswpmelb2011114&mamaxtctuecontueptsitcon 200,您应该得到这个结果:

<span>{
</span>
    <span>"author_url": "http://www.slideshare.net/chris-burgess",
</span>    <span>"total_slides": 50,
</span>    <span>"provider_name": "SlideShare",
</span>    <span>"version_no": "1415853027",
</span>    <span>"html": "<iframe src=\"http://www.slideshare.net/slideshow/embed_code/41489102\" width=\"427\" height=\"356\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" style=\"border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;\" allowfullscreen> </iframe> <div style=\"margin-bottom:5px\"> <strong> <a href=\"https://www.slideshare.net/chris-burgess/wordpress-themeswpmelb2014\" title=\"WordPress Themes Demystified\" target=\"_blank\">WordPress Themes Demystified</a> </strong> from <strong><a href=\"http://www.slideshare.net/chris-burgess\" target=\"_blank\">Chris Burgess</a></strong> </div>\n\n",
</span>    <span>"thumbnail_height": 128,
</span>    <span>"type": "rich",
</span>    <span>"slide_image_baseurl": "//image.slidesharecdn.com/wordpress-themes-wpmelb-2014-141112215416-conversion-gate02/95/slide-",
</span>    <span>"slide_image_baseurl_suffix": "-1024.jpg",
</span>    <span>"slideshow_id": 41489102,
</span>    <span>"title": "WordPress Themes Demystified",
</span>    <span>"version": "1.0",
</span>    <span>"height": 355,
</span>    <span>"provider_url": "http://www.slideshare.net",
</span>    <span>"thumbnail": "//cdn.slidesharecdn.com/ss_thumbnails/wordpress-themes-wpmelb-2014-141112215416-conversion-gate02-thumbnail.jpg?cb=1415853027",
</span>    <span>"conversion_version": 2,
</span>    <span>"author_name": "Chris Burgess",
</span>    <span>"thumbnail_width": 170,
</span>    <span>"width": 425
</span>
<span>}</span>

>如果将本请求的HTML密钥上的iframe的宽度与以前的请求进行比较,则应看到差异。第一个的宽度为427,最后一个的宽度为202。>

如果您想进一步了解颁布的规范,请查看官方的Oembed Docs。还要查看Slideshare oembed文档并进行一些播放,以更好地了解其工作原理。
<span>{
</span>
    <span>"conversion_version": 2,
</span>    <span>"version_no": "1415853027",
</span>    <span>"slide_image_baseurl_suffix": "-320.jpg",
</span>    <span>"html": "<iframe src=\"http://www.slideshare.net/slideshow/embed_code/41489102\" width=\"202\" height=\"168\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" style=\"border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;\" allowfullscreen> </iframe> <div style=\"margin-bottom:5px\"> <strong> <a href=\"https://www.slideshare.net/chris-burgess/wordpress-themeswpmelb2014\" title=\"WordPress Themes Demystified\" target=\"_blank\">WordPress Themes Demystified</a> </strong> from <strong><a href=\"http://www.slideshare.net/chris-burgess\" target=\"_blank\">Chris Burgess</a></strong> </div>\n\n",
</span>    <span>"total_slides": 50,
</span>    <span>"width": 200,
</span>    <span>"slide_image_baseurl": "//image.slidesharecdn.com/wordpress-themes-wpmelb-2014-141112215416-conversion-gate02/85/slide-",
</span>    <span>"thumbnail_height": 128,
</span>    <span>"thumbnail_width": 170,
</span>    <span>"thumbnail": "//cdn.slidesharecdn.com/ss_thumbnails/wordpress-themes-wpmelb-2014-141112215416-conversion-gate02-thumbnail.jpg?cb=1415853027",
</span>    <span>"provider_name": "SlideShare",
</span>    <span>"author_url": "http://www.slideshare.net/chris-burgess",
</span>    <span>"author_name": "Chris Burgess",
</span>    <span>"version": "1.0",
</span>    <span>"slideshow_id": 41489102,
</span>    <span>"type": "rich",
</span>    <span>"height": 167,
</span>    <span>"title": "WordPress Themes Demystified",
</span>    <span>"provider_url": "http://www.slideshare.net"
</span>
<span>}</span>

为什么这很有用

>

一会儿,让我们忘记技术实施。 WordPress更多地是关于最终用户。 OEMBED规范的所有实现都在WordPress代码库中。 WordPress拥有所有受支持的Oembed提供商的白色列表。这些只是他们的白名单中的一些。

>启示和WordPress的简介 然后,您将立即看到它呈现内容: 启示和WordPress的简介

> URL本身应该是一行。 WordPress查找该链接,然后搜索以查看此链接是否是一个白名单的URL的资源。如果是这样,则向OEMBed端点提出请求。在此示例中,我复制了Twitter状态URL,WordPress在帖子中为我嵌入了该状态。但这不仅限于Twitter,还要搜索白名单中的其他网站并与他们进行实验。

>除白名单之外,每个颁发的站点都得到WordPress的支持。您可以手动添加其他提供商。 WordPress提供了两个功能,一个用于注册一个支持OEMBED的站点,另一个用于我们可以为我们的网站添加OEMBed支持的站点。使用WP_OEMBED_ADD_PROVIDER()将现有的OEMBED网站添加到WordPress。您也可以使用WP_EMBED_REGISTER_HANDLER()添加非隔离站点。或者,如果您像我一样讨厌重新发明轮子,也可以检查插件是否首先存在。

结论

Oembed是使您的生活更轻松的方便WordPress功能之一。在本文中,我们介绍了宣告的内容,我们查看了颁布的规格以及oembed和wordpress如何一起工作。但是不要止步于此。尝试白名单并与您自己的提供商进行扩展。

经常询问有关OEMBED和WORDPRESS的问题

启用了什么,它如何与WordPress一起使用?

> oembed是一项协议,它允许您的网站显示嵌入式内容(例如视频,图像,推文等),只需将URL粘贴到您的内容。 WordPress已内置支持OEMBED。当您从支持OEMBed的站点粘贴URL时,WordPress会自动使用API​​获取嵌入式HTML并将其显示在您的帖子中。这消除了从网站中复制和粘贴HTML的需求。可以通过使用诸如禁用嵌入或Oembed Manager之类的插件来做到这一点。另外,您可以在主题的functions.php文件中添加几行代码以禁用启用。但是,请注意,这将禁用所有类型的嵌入。

>我可以在WordPress中自定义我的oembeds的外观吗?这可以通过将自定义CSS添加到您的主题中来完成。您需要的确切CSS取决于嵌入的类型和主题的设计。

>在使用WordPress中使用oembed?仅嵌入可信赖来源的内容很重要。某些网站可能无法正确消毒其签发代码,这可能会导致安全漏洞。

>为什么我在WordPress中工作不工作?您要嵌入的URL可能不是来自支持oembed的站点,或者可能与插件或主题发生冲突。如果您遇到麻烦,请尝试禁用所有插件并切换到默认主题以查看解决问题是否解决。

我可以在WordPress中使用自定义帖子类型吗?您可以在WordPress中使用自定义帖子类型的OEMBED。您只需要确保自定义帖子类型支持“编辑器”功能。

>

>如何添加对WordPress中新的OEMBED提供商的支持?通过使用WP_OEMBED_ADD_PROVIDER()函数来启用提供商。此功能允许您为提供者指定URL方案,以及WordPress应使用的终点,以获取嵌入的HTML。 ,您可以限制WordPress中OEMBEDS的宽度和高度。这可以通过使用Embed_defaults过滤器来完成,该过滤器允许您指定所有OEMBEDS的最大宽度和高度。

>

>我如何在WordPress中缓存oembed embed响应?

wordpress 24小时以提高性能。但是,您可以使用OEMBED_TTL过滤器来更改此持续时间。

>我可以在wordpress中使用邮政编辑器外部的oembed吗?

是的,您可以通过使用邮政编辑器的oembed使用。 wp_oembed_get()函数。此功能允许您获取URL的嵌入HTML并在网站上的任何地方显示。

以上是启示和WordPress的简介的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn