从外部JSON数据创建动态页面而不存储在数据库中?

时间:2017-11-09 作者:Ameer Bacchus

我想构建一个插件,向第三方API发出AJAX请求,该API用抽象的JSON响应,如下所示:

{show1:[第1季:[{eposode1},{eposode2},{eposode3}],第2季:[{eposode1},{eposode2}]}

因此,我将在Wordpress中为该节目设置一个页面,该页面位于:site/show1

在该页面上,我可以从列出的每一集链接到如下url:site/show1/season1-episode1 而不必为每一集在Wordpress中构建页面或帖子。

这可能吗?如果可能的话,关于如何实现这一点有什么想法吗?

1 个回复
最合适的回答,由SO网友:Drupalizeme 整理而成

你想要的东西很简单,但也需要大量的工作才能让它如你所期望的那样工作。

第一步是创建一个基页。此页面将负责所有请求。

For example :

idontripmoviesandseries。com/videogalerie/show1/第1季-第1集/

现在您想告诉WP如何处理这种URLhttps://developer.wordpress.org/reference/functions/add_rewrite_rule/

示例代码

add_rewrite_rule(
        \'^videogalerie/[^/]+)/([^/]+)?$\', 
        \'index.php?pagename=videogalerie&showname=$matches[1]&episodeseason=$matches[2]\',
        \'top\'
    );
但无论如何你需要tell WP to understand 这些新参数(showname和eposodeseason)

add_filter( \'query_vars\', \'set_videogalerie_query_vars\' );
function set_videogalerie_query_vars( $vars ) {
    $vars[] = \'showname\';
    $vars[] = \'episodeseason\';

    return $vars;
}
现在,您可以在videogalerie页面的模板上执行您想要的操作。您可以向第三方API发出请求,检索所需的数据,并在加载页面之前对其进行解析。

Ajax部分不确定您为什么需要它,因为这样服务器可以在向用户显示之前加载url显示和季节的完整列表。但如果你想让这个答案来解决这个问题wordpress.stackexchange.com

Have fun!

结束

相关推荐

用标准的干净文件替换NAV-menus.php文件?

我是一个自学成才的wordpress网站设计师,请原谅我的无知。我为一个客户开发的几个网站最近被一个印尼黑客组织破坏了(很有趣!)。客户端没有更新wordpress安装和其他一些危及安全的事情。遗憾的是,没有网站的清理备份。网络主机给了我一个包含恶意软件扫描结果的文本文件。看起来很多受影响的文件都是导航菜单。网站的php文件。文本文件中显示的扫描结果示例如下:“[主目录]/[网站文件夹名称]/wp includes/nav-menu.php:SL-php-INJECTOR-1-ejw.UNOFFICIAL