dak ブログ

python、rubyなどのプログラミング、MySQL、サーバーの設定などの備忘録。レゴの写真も。

TypeScript で WordPress API を使って記事データを取得

2024-01-17 23:24:05 | Node.js
TypeScript で WordPress API を使って記事データを取得する方法のメモ。

■wpapi のインストール
npm install wpapi
npm install @type/wpapi

■プログラム
import WPAPI from 'wpapi';

async function getPost(id_num) {
  const wpapi = new WPAPI({
    endpoint: 'http://xxx.yyy.zzz/wordpress/wp-json',
    username: '{user}',
    password: '{password}',
  });

  // 指定ID
  const res = await wpapi.posts().id(100);
  return res;
}

(async () => {
  const res = await getPost(100);
  console.log(res);
})();

■実行
$ ts-node test_get_article1.ts
{
  id: 100,
  date: '2024-01-15T17:34:22',
  date_gmt: '2024-01-15T08:34:22',
  guid: { rendered: 'http://xxx.yyy.zzz/wordpress/?p=100' },
  modified: '2024-01-15T17:34:32',
  modified_gmt: '2024-01-15T08:34:32',
  slug: '...',
  status: '1',
  type: 'post',
  link: 'http://xxx.yyy.zzz/wordpress/archives/100',
  title: { rendered: 'タイトル タイトル タイトル' },
  ...
}



ts-node でエラーがでる場合の設定

2024-01-17 23:12:23 | Node.js
ts-node でエラーがでる場合の package.json、tsconfig.json の設定のメモ。
■package.json
{
  "type": "module",
  "dependencies": {
  },
  "devDependencies": {
  }
}

■tsconfig.json
{
  "compilerOptions": {
    "target": "ESNext",
    "module": "ESNext",
    "esModuleInterop": true
  },
  "ts-node": {
    "esm": true
  }
}