如何制作一个REST风格的插件?

时间:2015-11-17 作者:jaysg

我创建了一个插件,它基本上是一个crud,用于写入mysql数据库。我想知道如何在wordpress页面上显示数据。我正在读关于url重写的文章,但似乎重写是为了定期发布,只是为了更改url。我似乎找不到这方面的任何教程。

所以当我走的时候example.com/gallery/1/5 它会带我去画廊id: 1 让我看看5th image.

1 个回复
SO网友:flomei

我这里有一段代码,但它应该/可能会得到改进。

新建query_vars

  • 创建新的重写规则
  • 重定向到特定模板,然后该模板将处理您的参数

    Create new query vars

    function register_gallery_query_vars($vars) {
       $vars[] = \'gallery_id\';
       $vars[] = \'image_id\';
       return $vars;
    }
    add_filter(\'query_vars\', \'register_gallery_query_vars\');

    Add rewrite rule

    function custom_rewrite_gallery() {
      add_rewrite_rule(\'^gallery/([0-9]+)/([0-9]+)/?\', \'index.php?gallery=$matches[1]&image=$matches[2]\', \'top\');
    }
    // Change this to run ONLY on plugin activation
    // Also have in mind that you need to flush rewrite rules if you change them
    add_action(\'init\', \'custom_rewrite_events\');

    Redirect to template

    function gallery_template_redirection($template)
    {
        global $wp_query;
        if(isset($wp_query->query_vars[\'gallery\'])) { return dirname(__FILE__).\'/gallery.php\'; }
         else return $template;
    }
    add_filter(\'template_include\', \'gallery_template_redirection\', 1, 1);
    你的gallery.php 然后可以使用get_query_var() 阅读这些值并使用它们。

  • 相关推荐

    WordPress AJAX错误400向远程站点发送数据的错误请求

    我正在使用发件人。net获取电子邮件订阅列表。这个网站给了我一些信息,可以将用户的电子邮件添加到订阅列表中。我想使用WordPress ajax来实现这一点。但它返回错误400错误请求。我的代码是:文件ajax新闻脚本。js公司: jQuery(document).ready(function($){ // Perform AJAX send news on form submit $(\'form#fnews\').on(\'submit\', funct