ALISには、APIがあります。APIを使うと、ALISで書いた記事を自分のホームページやブログに取り込んで表示することができます。

今回は、弊社ウェブサービス「マイ見積」や「aligator.press」等でも利用している concrete5の例です。

ALIS ドキュメントによると、/users/{user_id}/articles/public へアクセスすれば良い、と分かりました。私のuser_idはmizunoなので、私の場合は /users/mizuno/articles/public です。公開記事なので、認証無しに取得できます。

データを取得するコード

$app = Facade::getFacadeApplication();
$httpClient = $app->make(HttpClient::class);
$url = 'https://alis.to/api/users/mizuno/articles/public';
$httpClient->setUri($url);
$response = $httpClient->send();
$responseBody = $response->getBody();
$data = @json_decode($responseBody, true);

取得したデータを表示するコード

<?php
foreach($alisdata['Items'] as $item) {
  $link = 'https://alis.to/' . $item['user_id'] . '/articles/' . $item['article_id'];
?>
  <div class="col-xs-12 col-sm-12">
    <div class="col-xs-4 col-sm-3">
      <a href="<?php echo h($link);?>" target="_blank"><img src="<?php echo h($item['eye_catch_url']);?>"></a>
    </div>
    <div class="col-xs-8 col-sm-9">
      <h3><a href="<?php echo h($link);?>" target="_blank"><?php echo h($item['title']);?></a></h3>
      <p><?php echo h($item['overview']);?></p>
    </div>
  </div>
<?php
}