私は自分のクライアントから彼らのWordPressウェブサイトをAndroidとiPhone用のAppに変換するよう要求しました。私はいくつかのオプションを見回していて、それはdbとして使用することができるRSSですが、私は顧客としてWPサイトを使用していて欲しいと思っています。 RSSとして保存してDBとして使用するためにサイトのコンテンツをすべて引き出すことが可能かどうかを知るために。
それとも、他に良い方法があればありがたいですか。
どうもありがとう
これがあなたのWordPressブログ用のiOSアプリを作るのに役立つポイントのリストです:
RSSフィードのXML、JSONプラグインをWordPressにインストールすることでJSONを解析することも、HTMLを直接解析することもできます。
1)JSONを使用する代わりに、NSXMLParserを使用してRSSフィードを解析することをお勧めします。理由は、何かがJSONプラグインに問題を起こしたり、開発者が使用しているプラグインの更新をやめたり、プラグインがクラッシュしたりすると、JSONデータがクラッシュし、使用したネイティブアプリのデータがクラッシュすることです。 JSONプラグイン一方、RSSやXMLデータはブログがクラッシュしてもそこに残っています。これはアプリユーザーを邪魔することはありません。 HTMLの解析にも同じことが言えます。テーマを変更してHTMLの構造が変更された場合、iOSアプリの解析データが影響を受けるため、作業全体をやり直してから待つ必要があるため、お勧めできません。 App Storeからの送信それではRSSフィードでXMLの構文解析に固執しましょう。
2)NSXMLParserを使用してRSSフィードを解析します。 XMLフィードをパースするサードパーティのライブラリを利用することもできますが、オンラインで利用可能な多くのヘルプがあるので、私は組み込みのNSXMLパーサーを使い続けることをお勧めします。
2)XMLフィードのようなWebサービスに接続するには、AFNetworkingのようなサードパーティのライブラリを使うか、 NSURLConnection のようなアップルの組み込みライブラリや他のクラスを使ってWebサービスからデータを接続してダウンロードできます。
5)上記のステップのためのとても簡単なチュートリアルがあります。 NSURLConnectionの使い方 、 NSXmlParserでRSSをパースする方法
6)その後、最も重要なことの1つは、ブログ投稿を表示しているUITableViewCellsで画像を非同期的にダウンロードすることです。 SDWebImage libraryを使用することをお勧めします。それは、それ自体がプロジェクトとしての時間を大幅に節約し、すでにそこにあるものを構築する時間を無駄にすることはできないからです。
7)次に、UIWebViewを作成し、UITableView内のブログ投稿の行がタップされたら、リンクを使用してUIWebView内で実際のブログ投稿を表示できます。 View Controller間でデータを渡すためにdidSelectRowAtIndexPathを使用できます。
8)UIWebViewを含むView Controllerの下に、Facebook、Twitterなどでの停止、更新、共有などの機能を追加できます。
9)ご存知のように、多くの仕事やビジネスの人々は、iOSアプリを開発するのは簡単だと思っていますが、実際にはアプリを完全にパッケージ化してApp Storeに送信するには時間がかかります。 WordPressブログをiOSアプリに変換 のようなサービスを使用してプロジェクトを外部委託することもできます。ただし、自分の選択を使用している場合は完全に無料です。 。
休憩はあなたがあなたのアプリの中で他のものから目立つようにしたいさまざまな機能の選択の問題です。あなたはあなたのブログの特定のカテゴリーを作成して解析するために左側にFacebookスタイルのスライディングナビゲーションコントローラを追加することができます、あなたはあなたのWeb ViewなどでFlipboardスタイルスワイプを使うことができます。
お役に立てれば!
JSON API pluginをチェックしてください。それはあなたがあなたのウェブサイトの大部分のコンテンツのためのRESTful APIを持つことを可能にするでしょう。
あなたがAPI in WordPressを持ちたくない場合(つまり、異なるドメイン/サブドメインに置きたい、別々のコードベースを持っているなど)、純粋なPHPを通して、あるいはマイクロフレームワークを使って同じことができます。 Slim など。
この方法では、/wp-load.php
を要求してWordPressをロードします。すべての関数が利用可能になり(get_posts()
など)、WPプラグインを書いているのと同じ方法でデータベースを照会することができます。
グローバル$ wpdb。 $ results = $ wpdb-> query( "ここにあなたのクエリ");
ノート
2番目のアプローチを使用してパフォーマンスを向上させるためのヒントがいくつかあります。
JSONですべてを提供すればおそらく必要ないので、テーマエンジンのロードをスキップします。
define( 'WP_USE_THEMES'、FALSE);
どのAPI呼び出しでもWP cronを実行しないようにしてください。これは、cronがバックグラウンドで実行されているため、API呼び出しにハングアップしないようにするためです。
define( 'DISABLE_WP_CRON'、TRUE);
解決策はあなたのコンテンツに簡単なAPIを提供するためにjson-APIプラグインのようなものを使うことかもしれません。
このワードプレスプラグインを使用することもできます。 https://wordpress.org/plugins/androapp/ この使い方 JSON APIプラグイン 以前にTopSiteMakerによって提案されたように)。
収益化、プッシュ通知、画像共有の組み込みサポートもあります。それは現在唯一のAndroidアプリを提供していますが、それを試してみるのですか