2016-11-03 32 views
1

私はExpression Engineを搭載したウェブサイトで自動スクリプトを使用して投稿を作成しようとしていますが、以前はEEを使用したことがないので、これはもっと複雑な作業当初期待していたよりも!APIを使用してExpresison Engineポストを作成

私はもともとデータベースに直接ダンプするつもりだったのですが、ポストデータを格納するテーブルが複数あるように見えるので、どこにダンプするのか分かりませんでした。より良いアプローチはAPIを使用することであり、私も知らなかった。

https://docs.expressionengine.com/latest/development/legacy/api/api_channel_entries.html#Api_channel_entries::save_entryはどのように表現エンジンの外にスクリプトからEE()クラスの開始については行くだろう、これは十分に単純な、しかし明らかにEEに見えるのです()私のスタンドアロンスクリプトにはまだ存在していない...

自分自身で、投稿を直接作成できるようにしますか?

違いがあれば、これはEE 2.8です。

非常に高く評価されています。

よろしくお願いいたします。

+0

サードパーティのソリューションをご利用の方は、構造化データソース(json、.csvなど)に基づいてエントリを作成できるDataGrabまたはSolspace Importerをご覧ください。あなたが一致するレコードを置き換えるかどうかをアップデートするためのルールを設定することができます。 – AllInOne

答えて

2

ここには既存の同様のStack Exchange answerがありますが、基本的にはindex.phpを見て、どのようにEEアプリケーション全体をネイティブに説明しているかを確認してください。しかし、あなたはセキュリティ上の理由からあなたがしないことをお勧めします!

は、代わりにあなたが考えることができます:

  • hookを経由して、エンドポイントのURLをキャッチし、POSTや安らかなデータが渡されていたであろうEE(正しく)内からAPIを使用するように簡単な拡張を書きます。
  • はEEサイト(サーバ側またはアヤックス)上のページからchannel formをロードし、それはそれはすでにrestful API add-onに存在する場合、エントリ
  • を参照/編集を作成するために、EEサイトの別のページに提出する値をです利用します(EE2 & EE3)
  • それはハードデータベースを変更することを実際にはありませんし、データ構造は変更されませんので、EE2は、もはや更新を持つことになります(一般のみ& channel_dataをchannel_titlesませんが、あなたは、グリッドやカテゴリデータを持っている場合は異なりまた、)。しかし、これはセキュリティの問題です!
+0

Peterに感謝します。 APIへのリクエストを渡すためにEE内でハンドラを作成することは、実際には大変意味がありますが、この場合はデータベースを直接更新することを選択することもできます。 – Ric

関連する問題