Tag-Archive for » WordPress «

ファイアバードでWordPressで「画像**はエラーのためアップロードに失敗しました」となるの対処方法

 

WordPressの投稿で画像をアップロードしようとすると、

“●●●●.png” は、エラーのためアップロードに失敗しました
ディレクトリ /var/www/vhosts/ホスト名/httpdocs/wp-content/uploads を作成できませんでした。この親ディレクトリのアクセス権はサーバーによる書き込みを許可していますか?

となって、アップロードできない!!
いろいろ調べてみると、PHPのセーフモードが原因とかパーミッションの問題とかの記事ばっかり。
ただセーフモードはもともとオフだし、パーミッションを777にしても707、755、705等にしても変化なし。
お手上げかと思ってたら、根本的な問題だった。

サーバーのフォルダ構造が違っていただけ。。。
「管理画面」の「設定」で「メディア」設定ページで、「アップロードするファイルの保存場所」というところを修正しなくてはいけなかった。

WordPressはデフォルトだと「/var/www/vhosts/ホスト名/httpdocs/wp-content/uploads」という感じなんだけど

ファイアバードは「/var/www/vhosts/ホスト名/httpdocs/」じゃなくて「/home/サーバーID/ドメイン名/public_html/」が正しいそうだ。

なので、該当する部分は「/home/サーバーID/ドメイン名/public_html/wp-content/uploads」にしないといけない。

screenshot
↑赤い部分を修正する

セーフモードもパーミッションも関係なかったということで。
ファイアバードをはじめ、ネットオウル関連のサーバーを利用している方はご注意を。

他のレンタルサーバーを使用している人も、これが原因かもしれないので、チェックしてみてください。

WordPressで「○○に含まれる投稿をすべて表示」を非表示にする

 

このサイトはブログだから消してないけど、WordpressをCMSとして企業のホームページとして利用したりしてた場合、カテゴリ一覧にマウスオンしたときに「○○に含まれる投稿をすべて表示」と表示されるのが邪魔、っていうよりカッコ悪い。
だから消したいなと思う人も多いとおもう。

以前、自分はja.po、ja.moファイルの「%s に含まれる投稿をすべて表示」を手動で削除していたんだけど、これだとWordPressのバージョンUPの際、ファイルが上書きされてしまうため、毎回修正しないといけない。

あとはここのサイトのようにコアファイルを直接変更する方法もあるようだが、これもバージョンUP時に上書きされるから結局同じ。

もっと簡単な方法がないかと調べてたらあった!!
とりあえず、WordPress「管理画面」のカテゴリー設定ページで「説明」というところが未入力だとこの様に表示されてしまうみたい。
だから、ここに例えばカテゴリ名と同じテキストを入力すれば解決。
まあなんと簡単。

screenshot
↑緑で囲んだ部分を入力しておけばOK!

Category: WordPress  Leave a Comment  Tags:

「Google Chart API」を使ってのQRコード表示に変更してみた

 



モバイルへのアクセス支援にPCサイトにQRコードを表示させるのが増えてきている。
このサイトもPCサイトとモバイルサイトが共通URLで表示されるので、サイドバーにQRコードを表示している。
今まで、その表示のためにWP-QRcodeという、素晴らしいプラグインを使用してきたのだが、「Google Chart API」を使えば、プラグインなしでQRコードが生成されるということで、さっそく使ってみた。

参考にした記事
[Google]QRコードを誰でも簡単に自動生成、表示する方法

ちなみに自分はサイドバーに表示させたいので、テーマのウィジェット機能を使って表示させています。
で、そのままウィジェットにPHPコードを書いても反映されないのでExecutable PHP widgetというプラグインでPHP Code Widgetとして使っています。

そしてこの記事どうり表示させると問題が発生。

まずトップページでもQRコードを表示させたいのだが、パーマリンク取得だとトップ記事のQRコードが表示されてしまう。
そして、このサイトの各記事のURLは日本語を含んでいるのでQRコードはURLエンコードされて正しく表示されているようだが、携帯で読み取ると正しくデコードされない!!!

さてどうしたものか。。。
最終的になったコードがこれ!

<?php if(is_home()||is_front_page()):?>
<div align="center"><img src="http://chart.apis.google.com/chart?chs=120x120&choe=UTF-8&cht=qr&chl=<?php bloginfo('siteurl'); ?>&chld=M|1" alt="このページのQRコード" width="120" height="120" /></div>
<?php else: ?>
<div align="center"><img src="http://chart.apis.google.com/chart?chs=90x90&choe=UTF-8&cht=qr&chl=<?php echo wp_get_shortlink(); ?>&chld=M|2" alt="このページのQRコード" width="90" height="90" /></div>
<?php endif;?>

一つ目はPHPの条件分岐でトップページとそうでない場合とで、吐き出すコードを変えることで対応。

二つ目はショートリンクを出力させて回避しました。
そもそも自分のサイトなんですが、ここはアドレスが長い。
さらにURLエンコードしてるもんだから、さらに長い。
それをショートリンクという便利な機能が、WordPressのバージョン3から実装されたということで、それを使わない手はないかなと。

これだけでも十分よくなったのですが、さらにショートリンクをもっと短くできるプラグインがあったので、それを使った。
その名も「Goo.gl
名前から分かるとおり、あのGoogleの短縮URLサービスを使えるプラグインである。
これを有効にすると、一瞬にして過去の記事のGoogle短縮URLが生成され、テンプレとかでショートリンクを取得するコードは、これ以降goo.glの短縮URLになる!

今まで
http://www.alessandromcbee.com/?p=219
これから
http://goo.gl/tFbnO

なんと、URLの長さ37文字がたった19文字!約半分に!!
しかも簡単なアクセス解析も出来るという。

素晴らしいサービスを提供してくれるGoogleと、素晴らしいプラグインを作ってくれた作者に拍手を送ります。

ただドコモの場合、1回リダイレクトが起こります。
「サイトが移動しました」みたいな警告が出る感じ。
まあOK押せば問題ないので。

あと、このプラグインを入れたおかげで、モバイル版のツィート機能も短縮URLが表示されるようになりました。
PCだと自動的にツィッターが短縮URLを使ってくれるんだけど、モバイル版にはその機能がなかったからね。


ひとつプラグインに頼らなくなり、代わりに新たなプラグインのお世話になる。
なんだかな~~

WordPressにmixiイイネ!&mixiチェックボタンを設置してみた

 





mixiとの連携を強化してみようと思い立って、mixiチェックのWordPress & Movable Typeプラグイン公開というページを参考にmixiイイネ!とmixiチェックボタンを追加してみた。

最初にmixiのデベロッパー登録というのが必須となるようなので登録する。
登録の方法はhttp://developer.mixi.co.jp/about-platform/com/developerで紹介されています。
で、そのページにもmixiチェックをWordPressに設置するプラグインが公開されているんだけど、これがチェックだけでイイネ!ボタンは手書き方法しかない。

うわ面倒くさ!と思ったら、さすがはプラグイン豊富なWordPressです。
両方を設置できるプラグインがありました。
mixi Plugin for WordPress

ただ世の中にはもっと便利なプラグインもありまして、WP Social Bookmarking Lightというプラグインはmixiイイネ!とmixiチェックの他にも、ほぼ全部のソーシャル的なボタンが設置できるという優れものでした。

WP Social Bookmarking Lightは、エントリー記事の先頭か末尾にボタンリンクを追加するプラグイン仕様のようなので、トップ画面などの一覧には表示されません。
mixiイイネ!は一覧からでもポチッとしてもらいたかったので、mixi Plugin for WordPressと併用することにしました。
そしたらイイネ!の数が別々のプラグインなのに連動している!当たり前ですけど、プラグイン作者が凄いのか、mixiの元々の仕様が凄いのか!

ちなみにモバイル版には、ツィートボタンとmixiチェックボタンを付けてみました。
モバイル版はKtaiStyleというプラグインで表示しているので、プラグインにプラグインというのは少ないみたいなので、直接手書きで設置してみました。
その方法は次回書きます。
あとモバイルのmixiイイネ!ボタンはこれから実装してみます。

小ネタ:テンプレートを確実にUTF-8にする

 





WordPressやEC-CUBEなんかのソースファイルやテンプレートファイルなんかは、ほぼ全てUTF-8で保存しなきゃなりません。
でも全部英文のファイルなんかだと、テキストエディタ等を使って文字コードをUTF-8に変更・保存しても、再度開けばShift-JISになったりします。
これだと毎回文字コード指定保存しなきゃいけなくて、かなり面倒くさいのでテンプレート内に日本語を入れておいて文字コード指定保存を確実にしました。
具体的にはファイルの先頭とか適当な場所に、

<?php /* UTF-8にする用日本語 */ ?>

というコメントを入れておきました。

もしくは大体は
<?php 
で始まっていたりするので、それを
<?php /* UTF-8にする用日本語 */
に変更しました。

たったこれだけ~