有没有可能得到一个插件生成的短码,然后用一个函数,用这个短码创建一个新的帖子?

时间:2016-04-16 作者:Michael

我计划购买一个插件,允许用户创建投票,然后通过快捷码将其嵌入帖子中。它看起来像一个很棒的插件;然而,我想要的功能还不完全具备。我更希望插件在用户单击提交后自动将帖子添加到前端,而不是为用户提供一个快捷码。

我想修改代码,以便创建投票的过程如下所示(我需要实现斜体):

用户自定义其投票,单击提交,生成了短代码,但用户看不到短代码。一些功能在WordPress中创建了一个新帖子,创建投票的用户是作者,而该帖子中唯一的内容是刚刚生成的短代码。有没有简单的方法可以做到这一点?就上下文而言,我是一个主题开发人员;然而,我没有任何开发插件的经验。我知道相当多的PHP。

有没有人能提供一个概括的例子,说明我将如何进行这项工作(即,获取短代码,然后创建一篇以短代码作为帖子内容的帖子)?我会使用wp_insert_post 还是别的什么?

此外,由于这是另一个开发人员的插件,我将修改它的功能,有什么最佳实践我应该遵循吗?例如,我是否应该创建一个新插件,其唯一目的是与轮询插件交互,并使用其短代码创建帖子,而不是覆盖它们的代码?

1 个回复
SO网友:Michael

我玩了一下插件文件,自己就能弄明白。对于任何想知道的人,您可以使用wp_insert_post. 您只需要找到生成的短代码存储在哪个变量中,这需要对插件文件进行一些挖掘。对于我使用的插件,它是这样的:

$my_poll = array(
    \'post_content\' => \'[name_of_shortcode name_of_shortcode_attribute=\' . $poll->_id . \']\',
    \'post_status\' => \'publish\'
    );

wp_insert_post($my_poll);

相关推荐

GET_POSTS查询大约需要40秒来执行

我在get\\u帖子中有一个元查询,它需要花很长时间才能完成。它工作得很好,但只是时间太长了。我有一个名为event. 在每个event 发布后,有自定义元数据:post\\U sort\\U日期(事件日期YmdHis 格式,用于排序)我需要做的是获取下一个事件,该事件相对于$year 和$month 变量。所以如果$year = 2021 和$month = 10 (2021 10月)然后应该在2021 11月或之后找到第一个事件。我下面的查询很好,但很慢。执行大约需要40秒,我不知道为什么。$next