SlideShare a Scribd company logo
1 of 26
2014.07.09
WordPressサイトをiPhoneアプリにしてみた
―構築事例の紹介―
Kiharu Sasaki
Introduction
Kiharu Sasaki
Web Designer
System Engineer
https://www.facebook.com/
kiharu.sasaki
@bump_of_kiharu
http://bump.hatenablog.com/
自己紹介
フリーランスでウェブデザインや
システム開発のお仕事をしています。
Overview 今回お話する内容
WordPressで構築した
NAZOPLA(謎プラ)という
クイズのポータルサイトを
iPhoneアプリにしました。
アプリ化した際の色々を
今回お話します。
NAZOPLA – 謎プラ –
http://nazopla.jp
経緯や背景
How it started ?
Site overview
自作クイズを1枚の画像にして投稿する、画像
投稿サイト。
投稿されたクイズに対して、回答したり、ヒ
ントを見たり、評価を付けてランキングを楽
しむことが出来ます。
NAZOPLA :
クイズを投稿したり、クイズに回
答できる謎のプラットフォーム。
サイトの紹介
Site overview
ソーシャルログイン
評価
クイズの投稿 クイズの回答
Facebook / Twitter
アカウントでの会員登録・
ログイン
投稿されたクイズに対して
「難易度」「面白さ」を評価
クイズ画像の投稿、
ヒントや回答期限の設定など
• 回答者ランキング
• 人気クイズランキング
正解することでポイント獲得
正解順によって獲得ポイント
が変動
週1回のメルマガ発行
NAZOPLAの主な機能
ランキング メールマガジン
サイトの紹介
Site overview
モバイル(タブレット含)のア
クセスは50%、内60%がiOSデバ
イスからのアクセス
サービス開始1年半で、会員
数・PVともに順調に伸びている
が、更なる向上を目指したい
Year-
Month
PV
2014 – 01 130,000
2014 – 02 110,000
2014 – 03 130,000
2014 – 04 120,000
2014 – 05 150,000
2014 – 06 170,000
Mobile:
50%
iOS:
60%
平均月間PV
会員数
サービス期間
13万PV
7,000
16ヶ月
サイトの紹介
Conclusion
スマホアプリ化の検討
モバイルからのアクセスが5割を占めるが、モバイルに最適化
したページ表示が出来ていない。
ページ数が膨大で、レスポンシブ対応に工数がかかる。
モバイルの特生を活用した新たな利用法を模索し、サービスの
拡充をはかりたい。
What is the problem? モバイル対応の課題
As for mobile app
アプリ化について
Point of difference Webとの違い
オフラインでも
利用可能
モバイル特有の機能
(GPS / 傾き・近接センサーなど)
マネタイズ
(有料公開・アプリ内課金)
Webクリエイターが、つい見落としがちな
モバイルアプリとWebアプリの大きな違い。
プッシュ通知を利用して、ユーザーの能動的アク
セスを促せる
モバイルに特化したユーザビリティを提供すること
でUXを高め、回遊率・連続利用時間の向上や、サ
ービス自体の継続利用が見込める
検索エンジンからだけでなく、App Store / Google
Playからの流入が期待できる
新規ユーザーの獲得
アクセス頻度の向上
継続利用の促進
アプリ化のメリットMerit
iOS / Android / WindowMobile など、プラットフォーム別に開発が必要。(※)
さらにバージョン別に継続したエンハンスも必要。
(※ハイブリッドアプリという選択肢もある)
ユーザーニーズを把握できるという良い面もありますが…
アプリの公開・更新には審査が必要。
また、バージョンアップの反映はユーザー次第なので、変更を完全にコントロ
ール出来ない。
公開・更新タイミング
開発コスト
ユーザーによる評価制度
アプリ化のデメリットDemerit
ハイブリッドアプリ
アプリ化する方法
ネイティブコードによる開発
HTML5 / CSS / JavaScriptを利用した
フレームワークでの開発
ネイティブアプリ
Android Java (C / C++ 他)
iOS
Objective-c / Swift
(C / C++ 他)
Windows Mobile 7 XNA / Silverlight
BlackBerry Java
• PhoneGap
• Titanium Mobile
• Monaca など他多数
※その他ゲーム系のアプリ開発では
Unity / Cocos2d / Adobe Air などのフレームワークも有名
Development
ハイブリッド
アプリ
• デバイスの機能を最大限に利用可能
• 処理速度が早い
• ワンソース・マルチデバイスのため
保守性が良い
• 学習コストが低い
• プラットフォームごとの開発が必要な
ため、学習コスト・開発コストが高い
• OSごとに異なるエンハンスが必要なた
め保守性が悪い
• 処理速度やレンダリングなどでネイテ
ィブに劣る
• フレームワークによっては、利用でき
ないデバイスの機能や制限がある
メリット
デメリット
メリット
デメリット
アプリ化する方法Development
ネイティブ
アプリ
WebViewベースアプリ
• アプリ内にブラウザを埋め込んで表示させる
• メインコンテンツはアプリ内ブラウザでWebページを表示
• デバイス機能の呼び出しなど、一部ネイティブで実装
WebView-based app
• WebView部分は即時反映できる。
審査も不要なので、更新の反映とタイ
ミングを完全にコントロールできる
• ネイティブでは表現出来ない、細かい
デザインの実現が可能になる
メリット
【参考】http://el.jibun.atmarkit.co.jp/rails/2012/10/html5-d1ba.html
第3の選択肢: WebView
• オフラインでは使えない
• Appleの審査が厳しくなる
(かもしれない)
デメリット
クックパッドアプリ(Andoroid版)など最近は多い
iOSっぽくないアプリ
それウェブでいいじゃん、
なアプリ
有用性や独自性がないアプリ
単にウェブサイトをバンドルしたもの
デバイスの機能を活かしていないもの
機能が単純、コンテンツが少ないもの
永続した価値を提供しないと判断されるもの
UIがガイドラインに従っていないもの
(ボタンの高さなど細かく指定あり)
WebViewベースのアプリにする場合に
審査が厳しいAppleを基準にして、
アプリ化が不適切なケースを考える。
アプリ化に向かないケースNot suitable case
実装編
Start making app
App overview アプリ紹介
Native
WebView
Native
WebView
Native /Webview ネイティブの範囲 / Webの 範囲
Native
Webで実現している機能
• メインコンテンツの表示全般
• サーバーへのデータアクセス
Native
WebView
Nativeで実現している機能
• 箱の外側(ナビゲーションバー / タブバー)
• オフライン状態の検知と通知
• デバイス機能の呼び出し
(メーラーの起動、SNSへのポスト)
• Cookieの保存 / 破棄
• UserAgentの追加
• 広告表示(今回は iAd を利用)
Native /Webview ネイティブの範囲 / Webの 範囲
ネイティブから、WordPressページに実装された
JavaScriptファンクションをコールしている部分。
ネイティブ側でメソッドが用意されており、簡単に
実現できる。
Native → Web(JS)
Native /Webview ネイティブの範囲 / Webの 範囲
メニューアイコンをクリックした時の動作。
CSS3のアニメーション機能を利用することで
アプリっぽい動きを演出することも可能。
(タップイベント検知のみJavaScriptを使用)
Webからネイティブをコールしている部分。
タップすると、デバイスのメーラーが起動する。
リンク先にカスタムスキームを指定する方法で実現。
CSS3 Animation
Web → Native
※カスタムURLスキームとは
“mailto:” や “tel:” など一般的にもよく使われる
Native /Webview ネイティブの範囲 / Webの 範囲
Twitter Bootstrap
http://getbootstrap.com/
レスポンシブデザインを簡単に実装できる、CSSフレームワーク。
お世話になったものたち
compass
http://compass-style.org/
SASS利用のほか、表示速度向上のため、画像のCSSスプライト化に利用。
Multi Device Switcher
http://wordpress.org/plugins/multi-device-switcher/
デバイスを判断して表示するテーマを切替えることが出来るプラグイン。
今回、PCサイトとはデザインがまったく異なるため、モバイル用に別テーマを作成。
アプリからのアクセスの判別のために独自のUserAgentを追加し、アプリの場合のみ該
当テーマを表示するよう設定した。
Plugin & more
WebViewベースのアプリの場合、「ネットワークに接続されていないと利用が出
来ない」ことを明確に通知し、オフライン状態を常時検知するようにする。
オフライン時の考慮
実装時に考慮すべき点
Native
PCと違い、通信環境・速度が頻繁に変化するため、画面遷移などサーバーとの通
信が発生する時は、ローダーを表示し「処理している感」を示すようにする。
ローダーの表示 Native
URLのリクエスト時はネイティブ側でオンライン状況を確認するが、Web側で完結
するAjaxやAPIなどの通信処理時は、オフライン時の考慮(タイムアウト等のエラー
ハンドリング)を忘れずに行う。
AjaxやAPIコール時の考慮 Web
Attention
WebViewで表示した画面のキャッシュはなかなか消えない。
ネイティブ側で画面読み込み前にクリアする、元々キャッシュさせないようにする
など考慮が必要。
スタイルシートやJSの変更反映のためには、読み込み時にバージョン情報を付加し
たURLにするなどの対応が必須。
キャッシュ問題 WebNative
ユーザー登録して利用するアプリの場合、そのままではアプリを終了するとログ
イン状態が保持されない。WordPressのログイン状態を保持するためには、ネイテ
ィブ側でCookieの保存を行う。(ログアウト時には破棄することも忘れずに)
【参考】http://tech-gym.com/2011/10/objective-c/506.html
ログイン状態の保持 Native
実装時に考慮すべき点Attention
さくらインターネットの
「国外IPのアクセス制限」について
この設定が有効になっていると、WordPressのロ
グイン処理部分で、国外からのアクセス時に404
エラーが発生します。
初期設定が「有効」となっているため、
WordPressで会員制サイトにしている方は、無効
にしましょう。
※Appleのレビュアーは国外です!!
おまけPostscript

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

WordPressサイトをiPhoneアプリにしてみた

Editor's Notes

  1. http://matome.naver.jp/odai/2133818932667927201 単純にHTMLアプリとしたのでは実現できない機能があります。例えば画像を編集した上でアップロードする仕組みや、カメラ機能の利用などです。Androidの音声検索APIもそうですが、ネイティブアプリとして実装しないと呼び出せないAPIがあります。
  2. http://matome.naver.jp/odai/2133818932667927201 単純にHTMLアプリとしたのでは実現できない機能があります。例えば画像を編集した上でアップロードする仕組みや、カメラ機能の利用などです。Androidの音声検索APIもそうですが、ネイティブアプリとして実装しないと呼び出せないAPIがあります。
  3. 単純にHTMLアプリとしたのでは実現できない機能があります。例えば画像を編集した上でアップロードする仕組みや、カメラ機能の利用などです。Androidの音声検索APIもそうですが、ネイティブアプリとして実装しないと呼び出せないAPIがあります。
  4. https://developer.apple.com/jp/devcenter/ios/library/documentation/userexperience/conceptual/mobilehig/DesigningForiOS7/DesigningForiOS7.html http://www.sirochro.com/note/app-store-review-guidelines/