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対策・内部リンクでSEO効果を高める5つのポイント!
このサイトはJavaScriptがオンになっていないと正常に表示されません

SEO対策・内部リンクでSEO効果を高める5つのポイント!

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

SEO対策・内部リンクでSEO効果を高める5つのポイント!のイメージ

検索エンジンは外部からのリンク(被リンク)をとても重要視しているということは周知の事実でありますが、内部リンクも同様に重要であると判断しています。内部リンクが充実しているために上位に表示されやすくなっているサイトがあります。その代表が【Wikipedia(ウィキペディア)】や【Amazon】です。これらのサイトは、サイト内のページ数の量と内部リンクの数が検索エンジンに評価され、上位に表示されやすくなっていると言われています。

まずは、内部リンクがわからない方のために簡単に説明させていただきます。

内部リンクとは

内部リンクとは、同じサイトのページ内へ向けて張るリンクのことす。ナビゲーションがその代表に当たります。

また、リンクを張るという事について少し理解しておいていただきたいのですが、リンクを張るということは、【そのページが持っている検索エンジンからの評価をリンク先のページに受け渡す】ことを意味しています。なので不必要な外部リンクは避けるべきですし、評価を与えたくないサイト内のページへの内部リンクもむやみに張るべきではありません。

今回は内部リンクでSEO効果を高める5つのポイントを紹介いたします!

キーワードを含めたリンクを張ってSEO効果を高める

よくブログなどで【詳細はこちら】というリンクを見ますが、このリンク方法はSEO対策上NGです。
リンク文章は、リンク先のページにどのような内容が書かれているのかを検索エンジンに伝える働きがあります。なので、【詳細はこちら】という文章でリンクしてしまうと、検索エンジンは【詳細はこちらについて書かれたページ】と判断します。
この時、あなたが【詳細はこちら】という事についての記事を書いていなければ、検索エンジンは【このページには詳細はこちらについて何も書かれていなかった】と判断してそのページの評価を下げます。

上記のことを理解していただければ、リンクを張る時に『キーワードを埋め込むべきだ』と、理解できるはずです。
例えば、おいしい北関東のラーメン店を紹介しているページにリンクするのであれば、【北関東のおいしいラーメン店はコチラ】とリンクすれば良いわけです。こうすることで、リンク先のページは【北関東のおいしいラーメン店について書かれているページ】と検索エンジンに判断してもらえます。
この時キーワードを埋め込むことばかりに気をとられてしまうと、不自然な文章のリンクになってしまいます。不自然な文章は人もロボット(検索エンジン)も嫌い、評価を下げます。最悪の場合スパムと判断され、ペナルティーを受けることもあります。あくまでも自然にキーワードを埋め込むようにしましょう!

『HOMEへ』を『サイト名+HOMEへ』に変えてSEO効果を高める

下層ページからTOPページに戻るために、『HOMEへ』ボタンや、『TOPへ戻る』というリンクを、皆さん用意されていると思いますが、このリンク文章を少し工夫することでSEO効果を高めることができます。この『HOMEへ』を『サイト名やキーワード+HOMEへ』にすることでサイト内の全てのページからキーワードでリンクを得ることができます。先ほどの項目でも説明したように、リンクにキーワードを含めることで検索エンジンから評価を得られるようになります。

TOPページからリンクを張ってSEO効果を高める

サイトのTOPページは、サイト内でもっとも検索エンジンから高く評価される構造になっています。また、検索エンジンはどこのページよりも頻繁に、サイトのTOPページを巡回します。そのため、新しく作ったページは、検索エンジンに評価してもらいたい場合、TOPページからリンクするようにしましょう!
新しく作ったページだけでなくとも、検索エンジンに評価してもらいたいページがある場合、TOPページからリンクを張ったほうが良いでしょう。ただし、評価してもらいたいがために、TOPページから全てのページにリンクを貼ってしまっては効果が薄れてしまいます。リンク数が増えれば増えるほど、リンク先に渡される評価が少なくなってしまうんです。

リンクによる評価の受け渡しについて

TOPページが検索エンジンから100点分の評価を受けていた場合、TOPページから50個のそのほかのページにリンクを貼ると、1ページあたり2点分の評価がTOPページから受け渡されます。TOPページから5個のそのほかのページにリンクを貼れば、1ページあたり20点分の評価が受け渡されます。

実際には上記のように単純ではないのですが、基本的にこのような感じです。なので、本当に評価を受け渡したいページにだけ、リンクを貼るようにしましょう。

サイトマップページを作ってSEO効果を高める

検索エンジンはサイト内の全てのページを巡回しているわけではありません。
巡回されないページの多くは、階層の深いページである傾向があるのですが、サイトマップを作り、その階層の深いところにあるページへ内部リンクをすれば、巡回してもらえるようになります。サイト内の多くのページをインデックスしてもらうことで、おのずと検索結果に表示されやすくなり、アクセスアップにつながります。またgoogleでもサイトマップの制作は公式に推進しています。

関連記事(ページ)へリンクを貼ってSEO効果を高める

検索エンジンは、同じテーマのページからのリンクを重要視します。このことを外部リンクだけだと考えている人がいますが、そんなことはありません、内部リンクも同じです。同じテーマを扱っているページ同士でリンクをしあう事で、お互いに検索エンジンからの評価を高めることができます。また、関連記事やページを用意することで、ユーザビリティーの向上にもつながりますので、積極的に活用するようにしましょう!

関連記事(ページ)の数は、ユーザーの探しやすさと、リンクによる評価の分散を考えると、2から10個程度にするといいと思います。


関連記事
この記事へのコメント
  • nara より:

    リンクによる評価の受け渡しについて 
    フッターには、サイトマップと同様に全ページを入れるのがいいかと勘違いしていました。

    とは言っても、どう絞ればいいものか・・・。

コメントをどうぞ

名前:(必須)

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

コメント本文:

この記事へのトラックバックとピンバック
トラックバックURL