Wordpress:从后端保存自定义插件选项

时间:2013-12-13 14:41:32

标签: plugins wordpress

我正在开发一个从第三方API提取数据的插件。用户用户以插件的正常设置形式输入许多选项(使用的是Reduz Framework - 使用WP Settings API)。

然后,用户提供的选项将用于生成对第三方API的请求。

现在我的问题/问题:如何存储从该API返回的数据?是否有内置的方法在Wordpress中执行此操作 - 或者我是否必须安装自己的数据库表?似乎有点矫枉过正......有没有办法“入侵”设置API并设置自定义设置而不必在前端的表单中显示它们?

谢谢 - 祝大家节日快乐!

1 个答案:

答案 0 :(得分:0)

听起来你想要做的事实上只是存储来自远程API请求的数据,而不是“选项”。如果你不想为它们创建一个表,我可以想到三种简单的方法。

<强> Transients API

将API返回的数据保存为transients,即临时缓存数据。这通常适用于无论如何都会过期的数据,因此需要刷新。设定到期时间!即使你想“永远”挂起数据,设置一个到期时间,或者数据将在每次页面加载时自动加载,因此即使你不需要它们也会占用内存。然后,您可以使用get_transient轻松检索它们;如果已过期,您将获得false,这是您再次拨打API的触发器。

注意:在具有memcached或其他对象缓存的主机上,您的瞬态很可能会比您想要的更快地被推出对象缓存,从而迫使您的插件再次从API检索数据。瞬态真的是关于缓存,而不是“数据存储”本身

<强> Options

使用add_option将数据保存为自定义选项 - 并指定autoload =“no”,以便在不需要时不会填充脚本内存!请注意update_option将使用autoload =“yes”添加数据(如果它尚不存在),因此我建议您delete然后添加而不是更新。然后,您可以轻松地retrieve数据。

<强> Custom Post Type

您可以通过注册自定义帖子类型轻松地将数据存储在wp_posts表格中,然后您可以使用wp_insert保存这些数据,并使用常用的WordPress post queries来检索它们。非常适合您想要挂起的长期数据。您可以使用post_titlepost_contentpost_excerpt和其他标准帖子字段来存储您的一些数据,如果您需要更多数据,则可以add post meta fields。< / p>