aka) Author: Christian Davén Version: 2.0 Author URI: http://www.daven.se/usefulstuff/ */ # adds an options page to the options menu function SUP_add_options_page() { if(function_exists("add_options_page")) add_options_page("Smart Update Pinger", "Smart Update Pinger", 5, basename(__FILE__), "SUP_show_options_page"); } # shows the options page function SUP_show_options_page() { $ping = get_option("SUP_ping"); $uris = get_option("ping_sites"); $pingservicesnow = "今すぐ ping を送信!"; if(isset($_POST["ping"]) && $_POST["ping"] == $pingservicesnow) { SUP_log("手動で ping を送信中 ..."); SUP_ping_services(); } elseif(isset($_POST["submit"])) { $uris = $_POST["uris"]; $ping = 0; if($_POST["ping"] == 1) $ping = 1; update_option("SUP_ping", $ping); update_option("ping_sites", $uris); echo '

設定を保存しました.

'; } $checked = ''; if($ping == 1) $checked = 'checked="checked"'; echo '

ping 送信先のサーバ

以下に登録されている ping サーバへは記事を投稿する際,自動的に ping 送信や更新通知がなされます。WordPress が通常行うような,以前書いた記事の編集時ではありません

注意: このリストは オリジナルのアップデートサービスリストと同期します。.

複数サーバを登録する際は改行で URI を分けて下さい

Ping 送信ログ

このプラグインのログです(下に行くほど新しいログです)

'.SUP_get_last_log_entries(20).'

'; } # telling WordPress to ping if the post is new, but not if it's just been edited function SUP_ping_if_new($id) { global $wpdb, $post_title; if(get_option('SUP_ping') == 1 and get_option('ping_sites') != "") { # fetches data directly from database; the function "get_post" is cached, # and using it here will get the post as is was before the last save $row = mysql_fetch_array(mysql_query( "SELECT post_date,post_modified FROM $wpdb->posts WHERE id=$id")); # if time when created equals time when modified it is a new post, # otherwise the author has edited/modified it if($row["post_date"] == $row["post_modified"]) { if($post_title) SUP_log("Pinging services (new post: “".$post_title."”) ..."); else SUP_log("Pinging services (新規の記事の投稿) ..."); SUP_ping_services(); # Try commenting the line above, and uncommenting this line below # if pinging seems to be out of order. Please notify the author if it helps! # generic_ping(); } else { if($post_title) SUP_log("NOT pinging services (“".$post_title."” の設定が変更されました)"); else SUP_log("NOT pinging services (記事が編集されました)"); } } else SUP_log("NOT pinging services (管理者が ping 送信を無効にしています)"); } # More or less a copy of WP's "generic_ping" from functions.php, # but uses another function to send the actual XML-RPC messages. function SUP_ping_services() { $services = get_settings('ping_sites'); $services = preg_replace("|(\s)+|", '$1', $services); // Kill dupe lines $services = trim($services); if ( '' != $services ) { $services = explode("\n", $services); foreach ($services as $service) SUP_send_xmlrpc($service); } } # A slightly modified version of the WordPress built-in ping functionality ("weblog_ping" in functions.php). # This one uses correct extendedPing format (WP does not), and logs response from service. function SUP_send_xmlrpc($server = '', $path = '') { global $wp_version; include_once (ABSPATH . WPINC . '/class-IXR.php'); // using a timeout of 3 seconds should be enough to cover slow servers $client = new IXR_Client($server, ((!strlen(trim($path)) || ('/' == $path)) ? false : $path)); $client->timeout = 3; $client->useragent .= ' -- WordPress/'.$wp_version; // when set to true, this outputs debug messages by itself $client->debug = false; $home = trailingslashit( get_option('home') ); # the extendedPing format should be "blog name", "blog url", "check url" (whatever that is), and "feed url", # but it would seem as if the standard has been mixed up. it's therefore best to repeat the feed url. if($client->query('weblogUpdates.extendedPing', get_settings('blogname'), $home, get_bloginfo('rss2_url'), get_bloginfo('rss2_url'))) { SUP_log("- ".$server." への ping 送信が成功しました (拡張フォーマット)"); } else { # pinging was unsuccessful, trying regular ping format if($client->query('weblogUpdates.ping', get_settings('blogname'), $home)) { SUP_log("- ".$server." への ping 送信が成功しました"); } else { SUP_log("- ".$server." への ping 送信が失敗しました。 以下のエラーメッセージが返されました: “".$client->error->message."”"); } } } $post_title = ""; # Receives the title of the post from a filter below function SUP_post_title($title) { global $post_title; $post_title = $title; return $title; } # ----- # Log stuff $logfile = ABSPATH."wp-content/plugins/smart-update-pinger/smart-update-pinger.log"; # for debugging function SUP_log($line) { global $logfile; $fh = @fopen($logfile, "a"); @fwrite($fh, strftime("%D %T")."\t$line\n"); @fclose($fh); } function SUP_get_last_log_entries($num) { global $logfile; $lines = @file($logfile); if($lines === false) return "Error reading log file (".$logfile."). This could mean that the wp-content directory is write-protected and no log data can be saved, that you have manually removed the log file, or that you have recently upgraded the plugin."; else { $lines = array_slice($lines, count($lines) - $num); $msg = ""; foreach($lines as $line) $msg .= trim($line)."
"; return $msg; } } # ----- # adds a filter to receive the title of the post before publishing add_filter("title_save_pre", "SUP_post_title"); # adds some hooks # shows the options in the administration panel add_action("admin_menu", "SUP_add_options_page"); # calls SUP_ping whenever a post is published add_action("publish_post", "SUP_ping_if_new"); # calls SUP_ping_draft when changing the status from private/draft to published # add_action("private_to_published', 'SUP_ping_draft'); # removes the "WordPress official" pinging hook remove_action("publish_post", "generic_ping"); # activates pinging if setting doesn't exist in database yet # (before the user has changed the settings the first time) if(get_option("SUP_ping") === false) { update_option("SUP_ping", 1); } ?> SEO対策・ページ制作7つのポイント!タイトルや見出しはこう付ける!
このサイトはJavaScriptがオンになっていないと正常に表示されません

SEO対策・ページ制作7つのポイント!タイトルや見出しはこう付ける!

アーカイブ:2012年04月21日  カテゴリー内部SEO  タグ  タグ:この記事は8分程で読めます。

内部SEO対策を極める!ページを作る7つポイント!のイメージ

前回まではキーワードの決め方や、キーワードの活用方法を紹介させていただきましたが、今回は実際にページを作る時に何を気をつけたら良いのかを紹介させていただきます。
検索エンジンで上位に表示されるページを作るにはキーワードをどのようにページに反映させるかという部分が、とても重要になります。上手にキーワードをページ内に配置して上位表示されるサイトを作りましょう!

キーワードを先頭に記載する

検索エンジンは、先に登場するキーワード(文章)ほど重要だと判断しています。
例えば、タイトル(title)が【誰でもできる簡単なウッドデッキの作り方!】の場合。1に【誰でもできる】2に【簡単な】3に【ウッドデッキ】4に【作り方】という順に検索エンジンは重要度を判断します。

もしあなたが、【ウッドデッキの作り方】というキーワードで上位表示を狙っているのなら、上記のタイトルのつけ方は間違っていることになります。この場合タイトルを【ウッドデッキの作り方!誰でもできる簡単な方法】とすればOKです。このほうがSEO上、有利に働いてくれます。

今回はタイトル(title)を例にしましたが、見出し(h1.2.3)でも本文(p)でも同じです。ただし、注意していただきたいのは、単純にキーワードを前にもってくれば良いわけではありません。過剰に対策をすればスパムと判断される場合もありますし、ユーザーが読みにくいと感じ、サイトから離脱してしまう場合もあります。あくまでも自然にキーワードを前に持ってきましょう!

※キーワードを強引に前方に配置するより、自然な形で配置したほうがSEO上有利に働きます。あくまでも自然に文章を作ることを心がけ、その上でキーワードを前に持ってきましょう。

タイトルを個別に設定する

ページ作りで最も重要なポイントはページタイトルのつけ方です。キーワードを含める事はもちろんですが、ユーザーの目に留まる内容で、しかもページ内容と合致させなければいけません。ページ内容とタイトルが合致していなければ、検索エンジンで上位表示されることはありません。またユーザーがサイトに訪れたとしても、すぐに離脱してしまいます。
なので、タイトルはページごとの内容に合わせて、個別に設定する必要があります。またTOPページとサブページではタイトルのつけ方のポイントが変わってきます。

TOPページのタイトルのつけ方

1.キーワードは2個以内に絞る
2.文字数は全角20文字以下にする
3.同じキーワードの使用回数は2回まで
4.ユニークなタイトルにする
できるだけメインキーワードを前方に配置するようにし、ユニークでサイトの内容が一目でわかるものが好ましいでしょう。

サブページのタイトルのつけ方

1.キーワードは5個以内にする
2.文字数はこだわらずに書く
3.他のページと同じタイトルにしない
4.ブランディングのためにサイト名を記載する
ページの内容をわかりやすく書くことがポイントです。なので文字数よりもわかりやすさと、ユーザーの目に留まるタイトルになるように意識しましょう。

カテゴリー名を具体的に記載する。

上の項目で紹介したように、ページタイトルは具体的にわかりやすくつけることがポイントです。カテゴリー名も同じことが言えます。意外とカテゴリー名を短く設定してしまう人が多いのですが、カテゴリー名もわかりやすく具体的に設定することがポイントになります。

例えば、クリームパスタの作り方を紹介するカテゴリーであれば、【クリーム系】よりも【クリームパスタのレシピ】のほうが適しています。このように具体的に記載することで、自然とキーワードがカテゴリー名に反映されます。

見出しをつける

見出し(Hタグ)はそのページや段落に書かれた内容を簡潔に伝えるために使用されるタグです。Hタグは、以前よりもSEO効果が薄れてしまいましたが、それでも大切なタグとなります。
特にH1タグの場合は、bodyタグの直下に配置されます。検索エンジンはソースコード上、最初に出てくるキーワードほど重要視すると最初に説明させていただいたとおり、bodyのすぐ下の位置の文章は重要になってきます。

H1タグのつけ方ですが、基本的にはそのページのタイトルのつけ方と同じでかまいません。内容がタイトルとまったく一緒でも良いくらいです。

H2からH6タグのつけ方ですが、その項目に書かれていることのタイトルとして書くようにすると良いと思います。
例えばチョコレートケーキの作り方を紹介するページで、メレンゲの作り方を紹介する項目であれば、H2タグを【チョコレートケーキの簡単なメレンゲの作り方】とします。このようにキーワードを含めてあげることで、SEO効果が高まりますし、またユーザーに内容をわかりやすく伝えることができます。
※過剰にキーワードを埋め込むとスパム扱いされますので、キーワードはあくまでも自然に記載しましょう。

画像や写真には必ず<alt>タグを使う

当たり前のことですが、検索エンジン(ロボット)には写真や画像に何が写っているのか判断できません。そこで必要になるのがaltです。このaltを設定してあげることで、検索エンジンにその画像に何が写っているのか紹介することができます。altタグを使う場合、まずはそのページのメインキーワードを設置するようにすると良いでしょう。
例えば、カレーの作り方を紹介するページで、ルーを投入しているシーンの写真であれば、【カレーにルーを投入】のようにします。野菜を切っているシーンであれば、【カレーに使う野菜の切り方】などとします。盲目の方に写真には何が写っているかを簡潔に説明することをイメージすれば、おのずとaltタグに何を記載すればいいか決められるはずです。あくまでも自然に記載するようにしましょう。
altタグは簡素にまとめることがポイントです。長すぎるからスパムになるということは基本的にありませんが、過剰にキーワードを乱立させるとスパムと判断される場合があります。

<meta name=”description”>と<meta name=”keywords”>

meta descriptionもmeta keywordsも今ではSEO効果がほとんど無いといわれています。私もそう思うのですが、私はそれでも記載したほうが良いと考えています。(特にdescriptionは必要だと考えています)
descriptionについてですが、これは検索結果のページタイトルの下に、ページの説明文として記載されます。ユーザーはページタイトルと、このdescriptionの内容を見てクリックをするので、きちんとページの紹介文章を書いたほうが良いだろうというのが私の考えです。(書かないと検索エンジンが勝手に紹介文章をページ内から抜粋されます)

次にkeywordsですが、今ではまったく効果の無いタグだといわれています。ですが私はそれでも記載しています。理由はたいしたことは無いのですが、もしかしたら、また評価される日が来るかもしれないという理由です。クライアントにmeta keywordsは今ではまったく意味はなくなったと説明しても、それでも念のために記載したいといわれます。私もそう感じることがあるので、念のため記載しています。

ページ(コンテンツ)を作る上で、もっとも大切なポイント

最後に、ページ(コンテンツ)を作る上でもっとも大切なポイントを紹介いたします。とても簡単なことです。それはSEO対策という言葉に惑わされず、あなたらしく自然にページを作ることです。
変にSEO対策を意識しすぎて、人が不自然に感じてしまうページ(文章)になってしまえば、検索エンジンも不自然なページだと判断します。不自然だと判断されてしまえば、評価を下げられてしまう場合があります。

検索エンジンの目的と、検索ユーザーの目的は一緒だということを忘れないでください。【ユニークでわかりやすいく、内容の濃い、ためになるページ】を検索エンジンは上位に表示してくれます。検索ユーザーもそういったページを探しています。これからもそれはずっと変わりません。

検索ユーザーの目的をかなえるために検索エンジンは日々アルゴリズムを変更し、よりすばらしいサイトが上位に表示されるように努力しています。小手先のSEO対策だけでは上位に表示されません。検索エンジンはそのように進化しているんです。
SEO対策で本当に重要なことは、ユニークでわかりやすいく、内容の濃い、人のためになるコンテンツを作ること。そういったページを作るために、上記に述べた6個のポイントが必要になるんです。

見出しがわかりやすければ、この先にどんな内容が書かれているか、ユーザーが分りやすいですよね?検索エンジンも同じです。ページのタイトルが具体的であれば、ユーザーが分りやすいですよね?検索エンジンも同じです。

長くなってしまいましたが、この情報が皆さんのためになれば幸いです。

では、このへんで!


関連記事
この記事へのコメント
現在、この記事へのコメントはありません。
コメントをどうぞ

名前:(必須)

メールアドレス: (公開されません) (必須)

コメント本文:

この記事へのトラックバックとピンバック
現在、この記事へのトラックバックはありません。
トラックバックURL