ラベル WordPress の投稿を表示しています。 すべての投稿を表示
ラベル WordPress の投稿を表示しています。 すべての投稿を表示

2014年6月19日木曜日

Wordpress 404 ページNot Foundを出さないで、任意のページにリダイレクトする方法

Wordpressでブログとかやってますと、投稿を削除したくなっりします。

そういう時は、投稿一覧で記事を削除してしまえはそれで終わりなのですが、

検索エンジンから訪問してくれる方には、404 request page is not found.などと

表示され、「少々不愉快な思い」をさせてしまい申し訳ないなあと思っていました。

そこで、なんとか404を出さないでトップページに遷移するようなことできんのか?

と思うわけです。

まず、リダイレクトといえば「.htaccess」ファイルを悪戯することを想起します。

でも、これ「お前なぁ、リダイレクト多すぎだぜ!ベイベー」といわれ、ブログ全体

を閲覧不可にしてしまうことがあるのでやりたくないのです。

なんかないかな?とGooooooooooooooooooogle先生に聞き込みをかけると・・・・

WordPressには、404のときに好きな表示ができるようになっていまして、これを

「404.php」ファイルとうそうな。

では、こいつを悪戯してしまうと、いい感じになる?かもね。

どのように悪戯するかを見るに、

やりたいのは、

「ユーザーがリクエストしたページが、

すでに私によって削除されていた場合、404ページNot Foundを表示させずに、任意の

ホームページにリダイレクトする」

ことである。

上記要件を、404.phpに展開できればOk。

以下のように記述します。

<?php
header("location: http://404をリダイレクトしたいページ.jp/");
exit;
?>

これでうまくいきます。

ちゃんと、自分のテスト環境でテストしてから、本番環境に反映してくださいね。

よろしくお願いします。

2014年3月17日月曜日

XAMPP Welcart PayPal SandboxのテストでSSLエラーが発生

Wordpressを使ってECサイトを構築する際、ショッピングカートを使いたくなって、

Welcartというショッピングカートプラグインを発見。

テストをするため、環境構築中。さらに、決済にPayPalというシステムがあるというので、

これのテストができるSandbox環境もセットアップしました。

いよいよ、連携テストというときに問題発生しました。


============== Error Message ======================================

 Warning: fsockopen()[function.fsockopen]: unable to connect to ssl://api-3t.sandbox.paypal.com:443 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?) in C:\xampp\・・・・・・・

============== Error Message ======================================

あれれ・・・・・?

これまでも、SSLのテストしてたんですけど・・・・・・何か?

といった感じでした。

よく考えてみる。

Welcart+SandboxはSSLにOpenSSLが必要とのことで、早速、XAMPPのPHP設定ファイル
php.iniをじっくり観察、openssl.dillを探すが・・・・・無い。

また、あれれ?

ではということで、このphp.iniに

extension=php_openssl.dll

の一文を追加。

追加場所は、

extension=php_xxxxの文がいっぱい設定されているとこにやりましょう。

そんで、

php_openssl.dll

がどこにあるか確認

C:\xampp\php\extフォルダ内にあるはずです。

無い場合は


からダウンロードしてきて、

C:\windows\system32

に入れる。


これで、XAMPPのapacheを再起動しましょう。

少なくとも、上のエラーは解消するはずです。

2013年11月6日水曜日

WordPress: フッターCopyrights表示を自動更新する方法

WordPressのテーマによくある、フッターに著作権表記については、通常こんな感じで記載されていますよね。

「Copyright © 2003 - 2013 サイト名称 All Rights Reserved.」

この2003年の部分は、著作権の発生した年、すなわち、当該サイトを設置した年を意味します。
また、その横の2013年は、今年であり現存するサイトの著作権は今も有効であることを意味するそうです。

当該サイトを運営していく上で、毎年毎年この後ろの年数を手動で変更するのは面倒ですね。

そこで、

自動的にこの2013年の部分を更新してくれるように変更するコーディングを書いてみました。

修正前は、以下のようにコーディングされていました。

print '
Copyright © サイト名 All Rights Reserved.'
;

今回は、基準年を2003年、現在もサイト運営中という設定で、上に書いた著作権表示をしてみたいと思います。

$thisYear = date(Y);
print '
Copyright © 2003-'.$thisYear.' サイト名 All Rights Reserved.
';

このようにコーディングすることで毎年の面倒が軽減されます。

※このコーディングは、設定上の設置年2003年現在の場合、表示が、「2003-2003」
となってしまい、少々かっこ悪いです。