フォーラム: 公開討議 (スレッド #21917)

要望:任意のHPを変換対象にしない、動画 (2009-03-05 07:11 by 匿名 #42330)

もしかして実装されているのかもしれませんがconfig内にそれらしい設定が見あたらなかったので要望させてもらいます。
最近はモバイル対応したHP・ブログも増えてきているので、そういったサイトリンクへはpc2mを介して表示する事が不要になる事があります。
リンク集なんかだと、幾つかのHPではpc2mを使用し、幾つかのモバイル対応サイトはpc2m不要などという際に困ってしまいますので
登録したサイトには自動変換が無効になり、そのままダイレクトアクセスするという機能を追加できないでしょうか?

もう1つ、上に絡んだ事なのですが、動画対応です。作者さまの動画に対する意見はもっともなんですが
iPhone等だと動画再生に問題がなく、軽快にみれる事が少なくありません。youtube等のタグからリンクを生成し
ダイレクトアクセスを得るという事は難しい事でしょうか?

やっかいな要望だと思いますが、対応していただけると嬉しいです^^

メッセージ #42330 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

RE: 要望:任意のHPを変換対象にしない、動画 追記 (2009-03-05 07:15 by 匿名 #42331)

今調べていて任意の場所を変換対象にしない、で対応できそうかな?とも思ったんですが、blog型の場合毎回HTMLを埋め込むのは作業的にやっかいなので・・・

#42330 への返信

メッセージ #42331 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

RE: 要望:任意のHPを変換対象にしない、動画 追記 (2009-03-05 20:17 by ucb #42344)

ドキュメントの「任意の箇所を変換対象外~」の使い道はまさにそういう意図で、しかしブログ本文とかスタティックなページをいちいち修正するのは不可能というのもその通りです(そもそもアクセス先が他人のサイトであれば、修正をお願いできるわけもありませんし)

ではどうするのが良いかというと、Mobile Link Discovery(以下MLD)を利用するのが良いと思います。
http://www.sixapart.jp/docs/tech/mobile_link_discovery_ja.html

ケータイ版のあるブログサービスの多くがMLDに対応しており、このスクリプトは、以下ページの末尾にもあるように、MLDを検出します。
http://www.rcdtokyo.com/pc2m/note/archives/i000161.php

上のページではテンプレートにリンクを示す例を掲載していますが、変数自体はスクリプト中でグローバルなので、これが検出された時点でそのURLにリダイレクトしてしまうのも良いと思います(Googleやlivedoor、及びこのスクリプトを使っているFROUTEや@niftyなどの変換サービスはリダイレクトするようになっています)

pc2m.php(0.9.22.9)1904行目
$mobile_url = transAbsolutePath($value['href']);
header("Location: $mobile_url");
exit;

■YouTubeについて

ケータイについてはYouTubeもMLDに対応しているので、上記と同様です。

iPhoneの場合、iPhoneのSafariはYouTubeの貼り付けコード(object/param/embedタグ)を自動的に認識してYouTubeアプリへのリンクに変換します。従ってこれらのタグをそのまま残しておけば良いのすが、あいにくこのスクリプトは、そもそもこれらのタグをあからじめ削除してしまうので、pc2m_remainでこれらのタグを囲む手法は使えません。

これらのタグを削除せずに残すには、以下のように改造してください(「iPhoneだったら」の部分は自力でお願いします)

pc2m.php(0.9.22.9)1793~1796行目
$parser =& new HTMLParser_Preformat;
if ($local_args['a'] == 'c') {
$format_rule = require 'FormatRule_Text.inc.php';
} elseif (/* iPhoneだったら */) {
$additional_rule = array(
'object' => array(
'type' => 'inline',
'children' => array('embed', 'param'),
'attributes' => array('height', 'width'),
),
'param' => array(
'children' => array(),
'attributes' => array('name', 'value'),
),
'embed' => array(
'type' => 'inline',
'attributes' => array('src', 'width', 'height', 'flashvars', 'type', 'plguinspage', 'allowscriptaccess', 'allowfullscreen'),
'required_attribute' => 'src'
)
);
$format_rule = array_merge($format_rule, $additional_rule);
}
#42331 への返信

メッセージ #42344 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

RE: 要望:任意のHPを変換対象にしない、動画 追記 (2009-03-06 10:29 by 匿名 #42356)

おはようございます。
iPhone上でさっそく試してみました。

上手くいったHPといかなかったHPがありました。
うまくいかなかったHPではWordPressを使っているようです。
おそらくですが、WordPressはiPhoneに公式対応している為、
何らかの環境変数から、モバイル端末とは別にiPhoneを検出して、
iPhone専用HPに飛ばしているようです。
結果iPhoneに最適化されたモバイルページにpc2mが適用されて
表示されてしまいました。
またiPhoneでは、iTunes Storeというアプリケーション販売サイトにブラウザから飛べるのですがこれもpc2mで踏んでしまうとアクセスが出来なくないようです。

指定サイトのpc2mを経由しない機能が「モバイル全般向け」ではなく「iPhone向け」になる臭いという事で1機種の為の我が儘になってしまうわけで非常に要望しにくいのですが^^;汗 管理人さんが買われる事があれば対応を考えてくださいませ。

あとyoutubeの方なんですが(/* iPhoneだったら */)の記述が
理解不足で困っています。
http://note.openvista.jp/2007/webdesign-for-ipod-touch/
にiPhone/ipodの環境変数があるようなのですが、どんな感じにすれば用のでしょうか。
#42344 への返信

メッセージ #42356 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

RE: 要望:任意のHPを変換対象にしない、動画 追記 (2009-03-06 23:32 by ucb #42374)

ごめんなさい。なにをお試しになられたのかがまずよくわからないです。

症状からすると、PC2MのUser-AgentをiPhoneのものに変えてWordPress等のサイトにアクセスしてみたのかなと思いますけど、たぶん違いますよね(そういう変更をされたのなら、iPhoneに対応しているサイトではiPhone用のページが(PC2Mで変換されて)表示されて当然ですし、PC2Mを介してアクセスしてるのであれば、iTunesストアへのリンクもPC2M経由になるので正しくアクセスできないのも当然なんですけど)

変更された点を具体的に書いていただけますか(あるいはどこかで公開されているのであればそのURLと、アクセス先のURLを教えてください)

#余談ですけど、リンクされてるページ、viewportの指定間違ってます(iPhone用の有名なライブラリが間違えてて、それがコピペで広がっちゃったのでたいていのviewportの説明ページは間違ってるんですけど)またPHPコードもこのままでは動作しないのでご注意ください。
#42356 への返信

メッセージ #42374 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

RE: 要望:任意のHPを変換対象にしない、動画 (2009-03-13 07:22 by 匿名 #42521)

こんにちは返事が遅れてしまい申し訳ありません。

時間をおいたので自分でもちょっと記憶アレなんで、もう一度やりたい事をまとめ直してみます。
・pc2m経由で閲覧したHP内に、iTunesストアへのリンクが含まれている場合でも、問題なくストアを表示したい
(iTunesストアのアドレスの時は、自動的に相手サイトへのダイレクトアクセスになる)
・youtubeはリンクタグを表示し、同様にダイレクトアクセスが可能になる

が目的になります。出来る事があればお願いします^^
#42330 への返信

メッセージ #42521 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

RE: 要望:任意のHPを変換対象にしない、動画 (2009-03-16 12:49 by ucb #42578)

YouTubeについては上記の通りです。

iTunesストアへのリンクについては、URLを見てリダイレクトするなり、addProxyURL関数の中かで処理するなりするのが常套でしょう。
ただし一口に「iTunesストアへのリンク」と言っても、そのパターンはいろいろあります。ドメインだけでも以下が存在しているようです(現時点ではいずれもax.itunes.apple.comにリダイレクト)

itunes.com
itunes.apple.com
ax.itunes.apple.com
phobos.apple.com

またウェブページに貼られているiTunesストアへのリンクの多くはアフィリエイトリンクだと思いますが、iTunesストアのアフィリエイトはリンクシェア経由なので、以下にあるように、その直接のリンク先はリンクシェア(click.linksynergy.com)となります。
http://www.banana21.com/blog/archives/0409111859.html

そしてもちろんclick.linksynergy.comドメインの全てのURLがiTunesストアへのアフィリエイトリンクであるわけではないので、そのあたりを判定するか、あるいは(あまり望ましいことではありませんが)HTTP_Clientのリダイレクト処理を変更するほうがよいのかもしれません。
#42521 への返信

メッセージ #42578 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

RE: 要望:任意のHPを変換対象にしない、動画 (2009-03-19 09:54 by 匿名 #42623)

有り難うございました。色々実験してみようかと思います^^
そういやストアのリンクはアフィリエイトサイトのもあるのかと思うと結構めんどくさそうですね・・・
#42578 への返信

メッセージ #42623 への返信×

Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする