第九节点/defaqto

此软件包的最新版本(dev-master)没有提供许可证信息。

PHP软件包,用于与Defaqto.io API交互。

dev-master 2014-03-06 15:28 UTC

This package is not auto-updated.

Last update: 2024-09-28 14:43:01 UTC


README

DefaqtoIO PHP客户端是一个PHP软件包,用于使用DefaqtoIO CMS服务。

##安装

Composer

将库添加到您的composer.json文件中

"theninthnode/defaqto": "dev-master"

运行composer install以获取软件包的最新版本。

手动

虽然推荐使用Composer,但您也可以从本存储库下载并安装。

请注意。此客户端需要Guzzle REST PHP软件包。

Laravel 4

此软件包包含一个Service Provider和Facade,便于与Laravel4集成。

  1. 将以下条目添加到config/app.php中的providers数组中

    'TheNinthNode\Defaqto\DefaqtoServiceProvider'

  2. 将以下条目添加到config/app.php中的aliases数组中

    'Defaqto' => 'TheNinthNode\Defaqto\Facades\Defaqto',

##使用

  1. defaqto.io上注册您的账户。
  2. 登录并点击“+ 创建新应用”按钮创建您的第一个应用。
  3. 在新应用中,点击左侧菜单中的“设置”。
  4. 注意App ID和访问令牌。
  5. 创建一个测试页面。

安装软件包后,您可以像这样使用它

$pages = Defaqto::setup($app_id, $access_token)->get('pages');
var_dump($pages);

注意。如果您遇到找不到类的错误,请使用以下方式加载类

use TheNinthNode\Defaqto\Defaqto;

或者

$pages = TheNinthNode\Defaqto\Defaqto::setup($app_id, $access_token)->get('pages');

您可以使用以下语法使用该类

$html = Defaqto::setup($app_id, $access_token)->get('resource', array('key'=>'value'));

其中resource是以下之一:pagesblocksvariablesblog/postsblog/categoriesblog/tagsblog/authors

第二个(可选)参数是一个键值对数组,称为属性。例如:array('page_slug'=>'about-us')

每个资源都有以下可选参数

  • order - 用于排序的字段
  • dir - 排序方向 ASC 或 DESC
  • limit - 限制结果数量
  • offset - 跳过的结果数量

对于博客/文章资源,还有一个第三个可选参数。这是一个要排除的资源数组(标签、分类、作者)

##示例

页面

resource: pages

参数

  • page_id
  • page_slug

获取所有页面

$pages = Defaqto::setup($app_id, $access_token)->get('pages');
var_dump($pages);

通过page_slug获取页面

$page = Defaqto::setup($app_id, $access_token)->get('pages', array('page_slug'=>'about-us'));
echo $page['title'];

HTML块

resource: blocks

参数

  • block_id

获取所有块

$blocks = Defaqto::setup($app_id, $access_token)->get('blocks');
var_dump($blocks);

通过block_id获取块

$block = Defaqto::setup($app_id, $access_token)->get('blocks', array('block_id'=>1234));
echo $block['content'];

变量

resource: variables

参数

  • key

获取所有变量

$variables = Defaqto::setup($app_id, $access_token)->get('variables');
var_dump($variables);

通过其key获取变量

$variable = Defaqto::setup($app_id, $access_token)->get('variables', array('key'=>'pricing'));
echo $variable['value'];

博客文章

resource: blog/posts

参数

  • post_id
  • post_slug
  • category_slug
  • tag_slug
  • status - 草稿|已发布(默认为已发布)

获取所有(已发布)文章

$posts = Defaqto::setup($app_id, $access_token)->get('blog/posts');
var_dump($posts);

通过其post_slug获取文章

$post = Defaqto::setup($app_id, $access_token)->get('blog/posts', array('post_slug'=>'hello-world'));
echo $post['title'];

通过标签(tag_slug)获取所有文章

$posts = Defaqto::setup($app_id, $access_token)->get('blog/posts', array('tag_slug'=>'javascript'));
var_dump($posts);

获取所有文章,不包括它们的作者、标签或分类

$posts = Defaqto::setup($app_id, $access_token)->get('blog/posts', array(), array('authors', 'tags', 'categories'));

博客分类

resource: blog/categories

参数

  • category_id
  • category_slug

获取所有分类

$cats = Defaqto::setup($app_id, $access_token)->get('blog/categories');
var_dump($cats);

通过其slug获取分类

$category = Defaqto::setup($app_id, $access_token)->get('blog/categories', array('category_slug'=>'announcements'));
echo $category['name'];

博客标签

resource: blog/tags

参数

  • tag_id
  • tag_slug

获取所有标签

$tags = Defaqto::setup($app_id, $access_token)->get('blog/tags');
var_dump($tags);

通过其slug获取标签

$tag = Defaqto::setup($app_id, $access_token)->get('blog/tags', array('tag_slug'=>'javascript'));
echo $tag['name'];

博客作者

resource: blog/authors

参数

  • author_id
  • username

获取所有作者

$authors = Defaqto::setup($app_id, $access_token)->get('blog/authors');
var_dump($authors);

通过其用户名获取作者

$author = Defaqto::setup($app_id, $access_token)->get('blog/authors', array('username'=>'jonesy'));
echo $author['bio'];