ごぶさたしております 実は、ずっと携帯からの投稿がうまくいかず、悩んでいたのですが、ご相談するひまもなく、ちゃんと報告できなくて申し訳ないです。ついさきほど、WPJ フォーラムで、「携帯からの投稿スクリプト」というのをみつけまして、試してみたところ、すんなり投稿できました。驚いたのは、それを入れるまで、テストしていて反映されなかったメールが、一度に出てきたことです・・・。つまり、メールサーバーにはもちろん、届いていたけれど、読みにいってなかった?ってことでしょうか。FAQも拝見しまして、実は「wp-mail.phpをcronなどを使用して定期的に実行する必要が有ります。」が、具体的にわからなかったんですが 、ブラウザでwp-mail.phpにアクセスすればよいのですよね・・?違ってたら恥ずかしいんですがwそうすると、いままで、WrongLoginというエラーが出てたのです。アップするディレクトリはパーミッションも777にしてあります。私の携帯はDocomoで、サーバーはXREA、メールサーバーもXREAです。なんでダメだったのか、さっぱりわからないのですっきりしないのですが、とりあえず、K-MusicLifeさんのスクリプトで、投稿できるようになりますた。管理メニューからもアドレスが登録できて、とても使いやすいです。と、まあ、ご報告でした
私も出来なくてここを見たらkalenさんの書き込みが・・・フォーラムを見て、スクリプトをDLする前に”wp-mail.phpを・・・”という書き込みを見たのでwp-mail.phpに一度アクセスしてみたらできました!!(^_^;)のぶのぶさん色々お聞きしてしまって申し訳ありませんでした。auで、写真添付も問題なかったです!!試しに動画も送ってみたのですがダメでした(爆).amcっていう拡張子のこともあると思いますが・・・・
あ、ちなみにCRONで自動に(wp-mail.phpに手動でアクセスしなくても)できる方法がよくわからないんです。できたらいいのですが・・・
sarahさん、kalenさん携帯投稿で苦労されたようで。説明が足りてなかったのですけど、メールで投稿された記事を受信するためには、wp-mail.phpを何らかの形で実行する必要があります。一つの方法は、WPJのYutaさんバージョンのと同様に、index.phpに、require('wp-mail.php');って行を追加する。もう一つの方法は、CRONと呼ばれる定期的実行の仕組みでもって、定期的にwp-mail.phpを実行してやるってことになります。sarahさん、kalenさんともにXREAのホスティングを受けてられるようですが、XREAの管理メニューにも「CRONジョブ」ってメニューで定期的に実行するジョブを設定できるようになっています。XREAでは1時間に一回てのが最短の実行間隔になっているようなので、分 時 日 月 曜日にそれぞれ、5 * * * * って指定すると、毎時5分に実行するような設定が出来ます。起動するのは、/virtual/userid/以下のスクリプトファイルとなっていますので、たとえばnobunobuユーザで、mailget ってシェルスクリプトを/virtual/nobunobu以下に置いて、/virtual/nobunobu/mailgetってファイルの中に #!/bin/sh /usr/local/bin/php /virtual/nobunobu/public_html/modules/wordpress/wp-mail.php というスクリプトを記述して権限を755にセットしてやれば、毎時5分にmailgetスクリプトが起動して、そのスクリプトの中でwp-mail.phpを実行できます。WPJのYutaさんのスクリプトと元々のwp-mail.phpの大きな違いは、投稿したユーザをどのように判別するかって事にあります。Yutaさんのスクリプトは、ユーザーの登録情報内に設定してあるメールアドレスと一致したメールアドレスから来たメールの中で、wp-mail-post.phpの内部で許したメールアドレスのメールだけを受け入れる作りになっています。よって、メールの本文には投稿したい内容だけを書いてやれば良いのですけど、元々のwp-mail.phpでは、メールの本文の一行目にWordPressのユーザIDとパスワードが:で区切って書かれている事が前提となっています。(本モジュールではXOOPSのユーザIDとパスワードですが)よってメールの本文の一行目はnobunobu:passwordとかいう記述が必要になります。どちらの方法が便利ってのは好みに依りますけど、メアドをなりすました人からの投稿を許してしまう事があるってのを不安に思うか、メールにユーザID&パスワードを書くのがセキュリティー上許せないって思うかの違いになると思います。写真の投稿に関しては、本モジュール添付のwp-mail.phpの方が自動的にサムネールを作ってくれるので、携帯でも大きなサイズの写真を送れる携帯では便利だと思います。あと、PCで作成したHTMLメールも埋め込んだ画像も含めてそれなりに受け付けてくれるので、PCユーザには便利だと考えています。いろいろと書いてしまいましたけど、現在出張中で、さらにアルコールも少し脳を麻痺させている状況なので、わかりにくいところがあったらごめんなさい。(それにしても、出張でホテルに泊まってもLAN接続でインターネットに出れる ところが増えたので便利になったものです・・・ ちょっと前ならAirH"で細々とつないでいたものですけど。)あと、EzWebの動画については現在のところは対応していません。今のところはJPEG,GIF,PNGなどの画像ファイルの添付のみ対応しています。これに関してはご要望があれば追加するのは簡単ですけど、EzWebの動画ってPCでも再生できるのですか?
require('wp-mail.php');
#!/bin/sh /usr/local/bin/php /virtual/nobunobu/public_html/modules/wordpress/wp-mail.php
nobunobu:password
のぶのぶさん、お忙しいところご丁寧にありがとうございます〜!よくわかりました。CRONジョブはまだ試していませんでした。時間ができたら、再度試してみます!確かに、サムネイルはほしいとこですよね。いま私の使ってる携帯は小さい画像しか撮れないのでよいんですが、PCからメールのときにはやっぱり・・。メールアドレスで認識するか、IDとパスで認識するかは、うーん、メアドのほうが1回登録しちゃえば簡単で、投稿する人も楽かなあ。自分だけで使うなら、どこからでも投稿できるほうがぜったいいいんですよね。好みと用途、ってところですね。それにしても、いろいろブログツール試してみたりするんですが、WPがいちばん使い勝手が良くて書きやすいなーと、しみじみ
のぶのぶさん、お忙しいところ丁寧にどうもありがとうございました。私は両方のやり方を試してみました。まずindex.phpにrequire('wp-mail.php');を追加する方法。これは書き換えたindex.phpをFTPした途端に「Login Failed:」が出て、Wordpressが表示されなくなってしまいました。(メールサーバにデータがない時のwp-mail.phpと同じものです。)もう一つのCRONジョブですが、私は毎時0分の設定(0 * * * *)をしましたがwp-mail.phpにアクセスしないとやっぱり表示されないみたいです。cron自体は動作しているようで、メールサーバからはデータがちゃんと消えていて、OEのフォルダに毎時0分「Cron Daemon <root@s??.xrea.com>」の送信者でメールが来ていました。メールの内容はこんな感じです↓(IDのみ伏せ)Content-type: text/htmlX-Powered-By: PHP/4.3.4Set-Cookie: PHPSESSID=****************************; path=/Expires: Thu, 19 Nov 1981 08:52:00 GMTCache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0Pragma: no-cacheジョブが完了した旨のお知らせかと勝手に解釈してますが・・・・XREAのはCRONジョブについてはサポート外みたいですが、シェルスクリプトの記述方法は簡単な説明があったのでその通りにできていると思います。(のぶのぶさんの記述と同じ)メールサーバからデータが消えてwp-mail.phpにアクセスすればちゃんと表示されるので、メールサーバからデータを受け取り削除するところまではできているってことですよね。とりあえずwp-mail.phpに手動でアクセスするなら同じことだと思って一度ジョブは元に戻しました(^_^;)なんでだろう・・・それから動画データのことは特にそれほど使われないかと思うので構いませんです。携帯からデータ送るのもかなり重いですもんね .amcの拡張子はAU独特のもののようで、WinでもQuickTimeでは再生できます。メディアプレーヤーでは再生できないのですが。以上、長くなって申し訳ありませんひとまずご報告です!
しっかりと検証もせずに書いてしまって申し訳ありませんでした。たしかに、「その1」のincludeを使う方は現在の様なメッセージが出力される用になっているとうまくいきませんよね!あと、CRON経由の場合ですけど、/usr/local/bin/php ・・・・って形で直接phpのコマンドラインモジュールに渡してもうまく実行されないようです。で、XREAでもGETとかwgetというコマンドが準備されていますので、こちらを使ってwp-mail.phpをURL指定で取得するっていうやり方ならうまくいくと思います、小生のサイトも実はwgetコマンドを使用しています。(XREAでこのコマンドが用意されているかどうかの自信が無かったので、 昨日は書かなかったのですが、今日確認するとコマンドは存在するようです。)よって起動するシェルスクリプトは、 #!/bin/sh /usr/local/bin/wget -O /dev/null http://www.kowa.org/modules/wordpress/wp-mail.php >/dev/null とかの用に書き直す必要があるようです。(上で http:// の :はわざと全角にしてますけど実際は半角です。)CRONの実行の度にメールが送られてくるのは、実行したコマンドからの出力しなければ良いようなのでとりあえず/dev/nullに吐きだしてます。(ってこれもまだ未検証なんですけど まだXREAの環境整備まで手が回らないもんで・・・でも今CRONのコマンド実行はテストしようと設定はしたけれど登録完了にも一時間くらいかかるんですね )
#!/bin/sh /usr/local/bin/wget -O /dev/null http://www.kowa.org/modules/wordpress/wp-mail.php >/dev/null
CRON試したら、/dev/nullへの出力は許可されませんでした・・・という事で、ダミーのファイルを一個作ってそこにはき出すとかをする必要がありそうです。
このプログラムは KENT 氏の yybbs を xoops(PHP) に移植したものです - KENT -