第九节点 / defaqto
PHP软件包,用于与Defaqto.io API交互。
Requires
- php: >=5.3.0
- guzzle/guzzle: ~3.7
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集成。
-
将以下条目添加到config/app.php中的
providers
数组中'TheNinthNode\Defaqto\DefaqtoServiceProvider'
-
将以下条目添加到config/app.php中的
aliases
数组中'Defaqto' => 'TheNinthNode\Defaqto\Facades\Defaqto',
##使用
- 在defaqto.io上注册您的账户。
- 登录并点击“+ 创建新应用”按钮创建您的第一个应用。
- 在新应用中,点击左侧菜单中的“设置”。
- 注意App ID和访问令牌。
- 创建一个测试页面。
安装软件包后,您可以像这样使用它
$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
是以下之一:pages
、blocks
、variables
、blog/posts
、blog/categories
、blog/tags
、blog/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'];