mixhost に acmailer をインストールする

mixhostでacmailerを使うポイントは、『Perl モジュール』と『Perlのパス』です。

まずはmixhostのcPanelでPerl モジュールをインストール。

『ソフトウェア』の『Perl モジュール』をクリック

『Install a Perl Module』に『cgi』と入力してインストールをクリック。

次にダウンロードした acmailer の Perlへのパスを変更します。

11行目、
my $perl_path = ‘#!/usr/bin/perl’;

my $perl_path = ‘#!/usr/bin/perlml’;
と変更。

後はacmailerのインストールマニュアルの通りにインストールです。

これでうまく動きました。

よくある不足のPerl モジュールは『Jcode』、『MD5』、『URI』などがあります。
mixhostでうまくCGIが動かなかった場合などお試しください。

WordPressのlogin画面が500エラーになって表示できない

しばらくログインしていなかったWordpressのログイン画面が、500エラーで表示されなくなったとヘルプ依頼がきました。

まずは、『wp-config.php』の『define(‘WP_DEBUG’, false);』を『define(‘WP_DEBUG’, true);』にしエラーを表示させます。

Warning: Illegal string offset 'remember' in ......................./wp-includes/user.php on line 41

Warning: Cannot assign an empty string to a string offset in ..................../wp-includes/user.php on line 41

Warning: Illegal string offset 'user_login' in ......................../wp-includes/user.php on line 56

Fatal error: Uncaught Error: Cannot create references to/from string offsets in ........................../wp-includes/user.php:56 Stack trace: #0 ....................................../wp-login.php(806): wp_signon('', '') #1 {main} thrown in ................../wp-includes/user.php on line 56

『wp-login.php』の806行目(バージョンによって行数は違う)を新しいものと見比べてみると、

古いコード:

$user = wp_signon( '', $secure_cookie );

新しいコード:

$user = wp_signon( array(), $secure_cookie );

これを修正するとログインできるようになりました。

当然のことながらログインした後はWordpressを最新に更新しましょう。

サーバのWebminのファイルマネージャが、Javaのエラーで起動できない

 サーバのWebminのファイルマネージャが、Javaのエラーで起動できない

サーバのWebminのファイルマネージャが、Javaのエラーで起動できない

久しぶりにサーバのWebminのファイルマネージャを使おうと思ったのですが、Javaのエラーで起動できない。

調べてみるとセキュリティブロックの場合が多いようなのですが、自分の場合は違っていました。

『インターネット一時ファイル』の設定でした。

『コントロールパネル』 → 『Javaコントロール・パネル』 → 『一般』 → 『インターネット一時ファイル』の『設定をクリック』

caption id=”attachment_6470″ align=”alignnone” width=”288″]Javaコントロール・パネル Javaコントロール・パネル[/caption]

『コンピューターに一時ファイルを保持する』 のチェックを外す。

『コンピューターに一時ファイルを保持する』 のチェックを外す。

『コンピューターに一時ファイルを保持する』 のチェックを外す。

これでファイルマネージャーが起動しました。

WebminのファイルマネージャはJavaのバージョンやhttpsでのセキュリティなどいろんなトラブルがあるようです。

Webmin

Webmin

WordPress へのログイン履歴が見れるプラグイン『Crazy Bone(狂骨)』

WordPressはそのまんまインストールすると”admin”がログイン時のユーザー名になります。

WordPress へのログイン履歴が見れるプラグイン『Crazy Bone(狂骨)』

きっとこのままで使っている方も多いのではないでしょうか。

しかし、ユーザー名が限定されてしまうと残りはパスワード、セキュリティが甘くなってしまいますね。

そこでちょっと入れてみたいのがWordPress へのログイン履歴が見れるプラグイン『Crazy Bone(狂骨)』、wordpressへのログインを記録してくれるプラグインです。

まずはいつものように『プラグイン』の『新規追加』で Crazy Bone を検索します。

新規追加

でてきた『Crazy Bone』をインストール、有効化します。

有効化

履歴はユーザーの『ログイン履歴』から見れます。

ログイン履歴

でこれがアタックの履歴

ブルートフォースアタック

adminのユーザー名でブルートフォースのアタックをかけてきているようです。

2秒間隔ほどで約100回、怖いですね。

ちなみに admin のユーザー名は変更できませんので、新規でユーザーを追加し admin を削除するなり権限をなくすなりしましょう。

くれぐれも権限付には気を付けて行ってください。

作ったサイトが『BiND&LiVE』今月のピックアップナイスサイトに選ばれました。

長年使っていたお気に入りのマグカップを”ガシャン”と割ってしまってから1週間、「ホームセンターに行ったら新しいマグカップを買わなきゃ」と思っていた矢先、素敵なマグカップが送られてきました。

P1030831

『BiND&LiVEサイトを大募集!』に応募したところ『今月のピックアップナイスサイト』に選ばれたそのプレゼントなのですが、これがけっこうかわいい。

http://www.digitalstage.jp/nicesite/

今回使ったソフトは『LiVE』というソフトなのですが、プレゼンテーションのようなサイトを作るにはもってこいのツールだと思います。

短期間でのインパクトのあるサイトを作るにはお勧めです。

Amazon.co.jp ウィジェット

WordPress外のhtmlページでWordPressの機能をつかう方法

20133264668

企業などのホームページをやっていると、Wordpressで運用しているブログなどのコンテンツの一部をTOPページなどのhtmlやphpのページで流用したいということがあります。

このような場合、Wordpressの『wp-load.php』を呼び出してやるとそのhtmlやphp上でWordpressの機能を使えるようになります。

<?php require_once('./Wordpressのディレクトリ/wp-load.php'); ?>

これをページの頭などに追加してやるとWordpressの機能が使えるようになります。

※htmlの場合は『.htaccess』でhtml上でもPHPが動くようにしてやる必要があります。

※読み込むファイルは『wp-config.php』でも動くようですが『wp-load.php』のほうがなんとなく精神上安心できるような気がします。

WordPressで複数のjQueryを使うときの注意点

いろいろと便利な”jQuery”ですが”Wordpress”で使うときはちょっと注意が必要です。

というのも”Woredpress”では最初から”jQuery”が組み込まれていますので、ダウンロードした”jQuery”などをサンプル通りに入れてしまうと”jQuery”が複数動いてしまったり、かちあってしまい問題が発生して動かなかったりします。

読み込みのコードが見当たらないように見えますが、Wordpressは

<?php wp_head(); ?>

で”jQuery”を呼び出しています。

ということで ”flexslider” というスライダーの jQuery で説明してみます。

通常使う場合の読み込みは、

<link rel="stylesheet" href="flexslider.css" type="text/css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="jquery.flexslider.js"></script>

このようになっていますが、Wordpress では、wp_enqueue_style という関数をCSS に、wp_enqueue_script という関数を js に使います。

<?php wp_enqueue_style('flexslider-css', get_bloginfo('template_url') . '/flexslider/flexslider.css'); ?>
<?php wp_enqueue_script('flex', get_bloginfo('template_url') . '/flexslider/jquery.flexslider.js'); ?>

これを wp_head の前に入れます。Wordpress の jQuery を使いますので

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>

は必要ありません。

次に、

<script type="text/javascript" charset="utf-8">
  $(window).load(function() {
    $('.flexslider').flexslider();
  });
</script>

を入れるのですが、"$" を使えませんので代わりに、”jQuery” を使います。

<script type="text/javascript">
	jQuery(window).load(function() {
		jQuery('.flexslider').flexslider({
			slideshowSpeed: 3000,
			animationDuration: 500,
		});
	});
</script>

こんな感じです。

これを wp_head の後に入れます。

WordPressに投稿すると、新浪微博(シナウェイボー)にも自動で投稿できるプラグイン『WP-tsina』

以前、
WordPressに投稿すると、新浪微博にも自動で投稿できるプラグイン『WP Connect(WordPress连接微博)』その① 新浪微博登録
で新浪微博(シナウェイボー)とWordpressを連携するプラグインを紹介しましたが、連携がうまくいかなくなってしまったことと設定が複雑になってしまい手に負えそうもないので、プラグインをチェンジです。

選んだプラグインは『WP-tsina』。

新浪微博(シナウェイボー)だけのシンプルなプラグインです。

————————– WP-tsina ————————–

WordPressの管理画面、『プラグイン』→『新規追加』で『WP-tsinat』を検索、インストールします。

20128131737

20128131738

インストールが終わったら、『プラグインを有効化』しOauth認証します。

20128131742

20128131743

IDとパスワードを入力し緑のボタンをクリックし認証をしてください。

20128131744

設定の『新浪微博配置』を開き設定します。

20128131745

内容格式:投稿内容を選びます。
是否发布文章中的图片:画像も投稿するか決めます。
发布设置:投稿の仕方を決めます。自动发布が自動投稿になります。
标题前缀:タイトルの前に表示する文字を入れます。
是否将备份发布到微博:下書きをアップするかどうかを決めます。
备份所属分类:下書き保存のカテゴリを指定します。

これぐらいなら言葉がわからなくてもイメージで内容がわかりますね。

実際に投稿してみると、

20128131746

こんな感じ、大成功です。

WordPressで『Live Writer』などで過去の記事を取得しようとした時のエラー、『ブログ サーバーから受信した metaWeblog.getRecentPosts メソッドへの応答が無効です。』

ながいタイトルになってしまいましたが、今回は外部業者の納品したWordpress運用の際起こったエラーです。

2012419ScreenCut1490

Windows Live Writerで過去記事を開こうとして起こったエラーで、

サーバーの応答が無効です

ブログ サーバーから受信した metaWeblog.getRecentPosts メソッドへの応答が無効です。

Invalid response document returned from XmlRpc server

となります。

表示や管理画面、設定関係も調べましたがあやしい所はありません。

もしや functions.php にでもなんか仕込んだコードが原因かと思い開いてみると、ありました。

2012426ScreenCut1499

実は上のコードの中に2か所あるのですが、見つけることができたでしょうか?

答えは、『?>』の後の改行です。

これを削除し

2012426ScreenCut1500

このように直し終了です。

以前、この改行のせいでWordpressが真っ白になってしまったことがあります。

発生する症状は違いましたが、もし WordPress の functions.php をいじった後エラーが起きたら確かめてみる事項のひとつです。

WordPressの機能で『この投稿を先頭に固定表示』をつかうとトップページなどでも先頭に表示されてしまう

2012431635

表題通りなのですが、Wordpressでカテゴリの先頭に投稿を表示させる『この投稿を先頭に固定表示』の機能を使うと、トップページなどの時系列で表示したい所でも先頭に表示されてしまいます。

これを回避する方法を・・・。

Wordpessでは”query_posts()”関数を使いループの条件を決めていますが、これに”ignore_sticky_posts=>1”を付け加えてあげます。

たとえば、

<?php query_posts($query_string . "&showposts=5&order=DESC&ignore_sticky_posts=>1"); ?>

showposts=5:5つ表示

order=DESC:新しい記事順

ignore_sticky_posts=>1:先頭に固定表示を無視

こんな具合です。

iPad・iPhoneのSafariで背景が切れてしまう時のCSS

iPad・iPhoneのSafariでサイトを見たとき背景の右側がが切れてしまう時があります。

IMG_0082

こんな感じに右が切れてしまっています。

こんな時はCSSの “body”に”min-width”をたします。

body{
	border:0;
	padding:0;
	margin:0;
	font-family: "ヒラギノ角ゴ Pro W3",'Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'MS Pゴシック',sans-serif;
	font-size:14px;
	color:#555555;
	background: #ffeeee url(images/bg.png) top center no-repeat;
	background-attachment: fixed;
	min-width:1020px;
	_display: inline;
	_zoom:1;
}

min-width:1020px;

_display: inline;

_zoom:1;

の3行を足してやるとなおります。

min-widthの大きさはサイトに合わせて調整してください。

WordPressに投稿すると、新浪微博にも自動で投稿できるプラグイン『WP Connect(WordPress连接微博)』その② プラグイン

前回の
WordPressに投稿すると、新浪微博にも自動で投稿できるプラグイン『WP Connect(WordPress连接微博)』その① 新浪微博登録
の続きです。

新浪微博関連の登録が終わったらさっそくWordpressプラグインの導入です。

—————— WP Connect(WordPress连接微博) —————-

WordPressの管理画面、『プラグイン』→『新規追加』で『WP Connect』を検索、インストールします。

20123131603

20123131604

インストールが終わったら、設定から『WordPress连接微博』を開き、『开放平台』のタブをクリック、”App Key”と”App Secret”を新浪微博の所に入力します。

”App Key”と”App Secret”の取得方法はこちら

WordPressに投稿すると、新浪微博にも自動で投稿できるプラグイン『WP Connect(WordPress连接微博)』その① 新浪微博登録

2012341574

入力したら『変更を保存』、『同步微博』のタブを開きます。

2012361584

是否开启“微博同步”功能:チェックを入れる
同步内容设置:1
自定义消息:新文章前缀に文章の前に付くタイトルなどを入れる

『変更を保存』

新浪微博のアイコンをクリック

20123181607

新浪微博のサイトが開きます。

2012361583

新浪微博との連携を許可します。

これでWordPressに投稿すると、新浪微博にも自動で投稿できるようになります。

201237ScreenCut1401

※結構難解で何度も失敗しました。うまくいかない場合は、手順が違っていたりする場合が多いと思います。

WordPressに投稿すると、新浪微博にも自動で投稿できるプラグイン『WP Connect(WordPress连接微博)』その① 新浪微博登録

微博に登録したらやってみたいのが『自動投稿』。

探してみたら色々あったのですが、このプラグインがよさそうでした。

『WP Connect(WordPress连接微博)』

まずは、新浪微博に登録をしておいてください。

そしてデベロッパー登録をします。

———— 新浪微博に登録 ————————–

http://open.weibo.com/development

新浪微博

緑の『创建应用』をクリック、『其他』をクリックします。

新浪微博

開発者としての基本情報の入力を求められますので、上のボタンをクリックし入力して行きます。

新浪微博

上から、

・開発者タイプ(左が個人、右が会社)
・開発者名前
・地域
・E-mail
・電話番号
・チャットツール(自分はMSN、ホットメールを使いました)
・Webサイト

『提交』をクリック、『確定』クリック。

新浪微博

右上、『创建应用』をクリック、

新浪微博

上から

・应用名称:アプリケーション名を適当にいれます
・应用地址:サイトURL
・应用介绍:アプリケーションの説明
・域名绑定:ユーザーの制限をしているかどうか
・应用分类: 分類?
・标签:タグ?

チェックをつけて『创建』をクリックし、『確定』なのですがわかりずらいので参考にあげておきます。

新浪微博

App KeyとApp Secretが発行されますので控えておきます。

新浪微博

——————————————————–

新浪微博の登録はこちらを参考に・・・
中国版Twitter『新浪微博(シナ・ウェイボー)』に登録してみた

『Google Analytics』のアクセスページにに『?fb_xd_fragment=』というのがあったら、それは『facebookいいねボタン』のバグです

ながーいタイトルでしたが、タイトルで終わってしまってもいけないので解決法を・・・。

2012291504

facebookのいいねボタンをサイトに付けると、Google Analytics の解析をしてると”?fb_xd_fragment=”というのが付いたページが出てきます。

2012271496

実はこれ、『facebookいいねボタン』のバグ。
アクセス自体は増えるのでそれが楽しみだったらそのままのしていてもいいのですが、本気の解析でしたらDETAは正確にしたい。

ということでフィルタリングしちゃいましょう。

『Google Analytics』のプロファイルを開きます。

2012271498

右上のこれをクリック。

2012271500

フィルタを開き『新しいフィルタ』をクリックします。

2012271502

こんな風に書いて『保存』をクリック。

フィルタパターンは

fb_xd_fragment=

です。

新しくフィルタが追加されました。

2012271503

『twitter』と『mixi』を連携させる

WordPressに投稿すると、mixiの日記にも自動で投稿できるプラグイン『publishToMixi』

で紹介していた『publishToMixi』ですが Windows Live Writer や iphone などの外部からの投稿が反映されていないようです。

wordpress3.3.1のバージョンアップからだと思うので、wordpress の仕様変更が原因だと思うのですが、今までも mixi のセキュリティ変更などで動作不良になったこともしばしば・・・。

そこで提携をした twitter と mixi ですので連携も確かだろうと、mixi の外部連携を使って twitterと連携させることにしました。

publishToMixi の良さのひとつにmixi日記に投稿できるという利点があるのですが、ちょっと我慢してmixiボイスでの連携です。

投稿時の流れはこんな感じになります。

Windows Live Writer で wordpress に投稿

wordpress のプラグインで twitter に自動ツイート

twitter と mixiボイスが自動連携

———– twitter と mixi を連携する ————–

まずは mixi にログインした状態で『設定変更』をクリック

2012261486

『外部サービス連携』の『・twitter連携』をクリック

2012261485

Twitter連携の部分、『設定方法を選ぶ』をクリック

2012261487

Twitter連携の設定を決めます。

2012261488

今回は『Twitterのツイートを、mixiボイスに転送する』にしました。

ここの設定で、相互に転送したり、mixiからtwitterへ転送したりできます。

2012261489

twitterのアプリ認証が開きますので『連携アプリを認証』クリックして終了です。

これで wordpress に投稿すると mixiボイスにも反映されます。

2012261492

phpで”include”が使えない外部ファイルを取得する方法

201112181407

phpをあつかっていると、ドメインをまたぐような外部ファイルの取得や、サーバーの仕様などで ”include” が使えない場合があります。

今回はサーバーの移転をしたら、今まで使っていた “include” が使えずファイルを引っ張ってくることができなくなりました。

こんな時は、”fopen” をつかって処理します。

こんな感じ、

   1: $files=fopen("http://example.com/content.php","r");

   2: fpassthru($files);

$files=fopen でファイルを収納、fpassthru でファイルを出力。

r は『読み込みで開く』ということです。

【Web制作者向け】Internet Explorer 9 を使ってIE8、IE7の検証をする

今まで、
ひとつのパソコンでIE7とIE8を共存させる方法

Windows7でIE8、IE7、IE6、ついでにIE5.5も使えるようにする(その1)
などで紹介してきたように、Web制作ではどうしてもIEのバージョン検証が必要となってきます。

これはIEのバージョンによってCSSの解釈の違いというか、バグがあるからなのですがけっこうこの検証が厄介です。

そのせいか Internet Explorer 9 には『開発者ツール』というものがついてあり、この中の『ブラウザーモード』でIE9、IE8、IE7それぞれの検証ができるようになっています。

しかしこの機能、自分の周りだけかもしれないのですが開発者で知らない方が多いのに最近気がつきました。

きっとみんな標準でFirefoxを使っているせいだと思うのですが・・・。

20118171295

この機能は”IE9”がインストールされていれば使えます。

サイトを開いて、『F12』キーを押します。

『開発者ツール』が開きますので『ブラウザーモード』をクリックし検証したいIEバージョンを選ぶだけ。

ちなみに今制作中のサイトはこんな感じ、

20118171292 20118171297
IE9、IE8では問題なし IE7ではサイドバー崩れる

まだ10%ほどいるといわれるIE6の方のための検証は、
Windows7でIE8、IE7、IE6、ついでにIE5.5も使えるようにする(その1)
をご参考ください。

IE9はここからダウンロードできます。

http://windows.microsoft.com/ja-JP/internet-explorer/downloads/ie

WordPressに投稿すると、Facebookの日記にも自動で投稿できるプラグイン『Wordbooker』

WordPressに投稿すると、mixiの日記にも自動で投稿できるプラグイン『publishToMixi』でmixiに自動投稿できるようになったら、次はFacebookです。

英語にんってしまうのですが、『Wordbooker』というプラグインを使ってみます。

————— インストール ————————–

WordPressの管理画面、『プラグイン』→『新規追加』で『Wordbooker』を検索。インストールします。

2011741228

『設定』の中に『Wordbooker』がありますのでここで設定をします。

2011741224

まずは、『Connect with Facebook』をクリック、『許可する』でアプリを通します。

20117412292011741230

Facebookに通るようになったら、設定なのですが、けっこうたくさんあるのでざっと自分が変更したところだけ紹介します。

2011741231

Length of Extract を400に変更、投稿の文字数だと思うのですがこれを多くしました。

Default Pubish Post to Facebookにチェック。

Post Attributeを”mauyas.comから %title%”に変更

『Save Blog Level Options』をクリックして終了です。

WordPressに投稿すると、mixiの日記にも自動で投稿できるプラグイン『publishToMixi』

遅ればせながら、”Wordpress”で”mixi”を活用するプラグインです。

WordPressに投稿すると、自動でmixiの日記にも投稿できるというもので、ものぐさな自分にはぴったりのプラグインです。

これでまっさらなmixi日記もなんとかさまになるというものです。

——————— インストール ———————————-

いつものようにWordPressの管理画面からのインストールです。

管理画面の『プラグイン』→『新規追加』で『publishToMixi』を検索。インストールします。

2011741209

2011741210

『設定』の中に『mixi投稿設定』がありますのでここで設定をします。

2011741218

設定自体はいたって簡単なのですが、『mixi ID』というのがあります。

2011741213

これはmixiでの自分のIDなのですが、簡単な見方は、

mixiのプロフィールを開いたときのURLに、”?id=○○○・・・・”というのがありますのでその数字を入力してください。

投稿画面のチェックボックスで投稿するかどうかを選べるのですが、『デフォルトでオンにする』のチェックをつけておくと、Windows Live Writerなどで記事を書いても自動でアップできますので便利です。

2011741221

WordPressにGoogle+1ボタンなどのSNSブックマークを簡単表示できるプラグイン『WP Social Bookmarking Light』

あなたのサイトがよりソーシャルでインタラクティブになる『Google +1 ボタン』

で書いたように、大御所もSNS参戦と言うことでこのへんの効果ももう無視できそうにありません。

そこでWordpressでサクサクっとやってしまうお役立ちプラグインです。

『WP Social Bookmarking Light』

対応しているサービスは
Hatena Bookmark
Hatena Bookmark Users
Hatena Bookmark Button
Twib – Twitter
Twib Users – Twitter
TweetMeme – Twitter
Tweet Button – Twitter
Livedoor Clip
Livedoor Clip Users
Yahoo!JAPAN Bookmark
Yahoo!JAPAN Bookmark Users
Yahoo!Buzz
BuzzURL
BuzzURL Users
@nifty Clip
@nifty Clip Users
Tumblr
FC2 Bookmark
FC2 Bookmark Users
newsing
Choix
Google Bookmarks
Google Buzz
Google +1
Delicious
Digg
FriendFeed
Facebook Share
Facebook Like Button
Facebook Send Button
reddit
LinkedIn
Evernote
Instapaper
StumbleUpon
mixi Check 
mixi Like 
GREE Social Feedback
atode

と多彩です。

——— インストール —————————————————————

このサイトの場合、『Like』というFacebookのいいねプラグインを導入してたのでこれを停止。
新たに『WP Social Bookmarking Light』を利用します。

いつものようにWordPressの管理画面からのインストールです。

管理画面の『プラグイン』→『新規追加』で『WP Social Bookmarking Light』を検索。インストールします。

2011741215

2011741216

インストール、有効化が済むと、『設定』から『WP Social Bookmarking Light』を設定します。

20117121272

日本語化もされていますので簡単に設定できると思いますが、mixiを使う場合、mixi check keyが必要となります。

下の方、mixiの所にあるリンクから設定の説明を読んでください。

20117111271

設定が完了するとこんな風に表示されます。

20117101260