WordPress SEO Yoast ヘッダーのコメントを削除

Yoastは素晴らしい

いいね!
英語何言ってるかよくわからないけど。

All in One SEO Packもよかったけど、Yoastの方が評価が高かったもんで乗り換えた。
全然使いこなせてないけど。

みんながいいね!って言っているものは、おそらくいいものなんだろうてきな感じで導入。

WordPress SEO by Yoastの設定

細かい。
色々いじってたら、サイトがくっそ重くなった。

でも、やっぱりYoastはいいね。
当分これだね、無料のSEOで十分だよ。

Yoastを作ってくれた作成者: Joost de Valkさんには感謝でいっぱいです。

こんな素敵なプラグインを作ってくれてありがとう。

うん、素晴らしい。

Clean up the <head>っていうのも素晴らしいね。
今回はremoveがfunctionsに書いてあったから必要なかったけど。

でも、SEOにいいよね。headerをスッキリっての。
どれだけSEOに効果があるのか、実際のところはグーグル先生にしかわからないと思うけど。

それで、YoastはSEOをよくするものだし、headerのコメントもいらないよね!SEO的に!
もっと些細なSEOもいいよね!


Yoast のヘッダーのコメントアウトを削除する


で、このコメントアウトを消したいんだが...


<!-- This site is optimized with the Yoast WordPress SEO plugin v' . WPSEO_VERSION . ' - https://yoast.com/wordpress/plugins/seo/ -->

と、


<!-- / Yoast WordPress SEO plugin. -->



まず、②から

吐き出してるソースはこれっぽい。
http://baka★.com/wordpress/wp-content/plugins/wordpress-seo/frontend/class-frontend.php


(560~590辺り)

public function head() {
global $wp_query;

$old_wp_query = null;

if ( ! $wp_query->is_main_query() ) {
$old_wp_query = $wp_query;
wp_reset_query();
}

/**
 * Action: 'wpseo_head' - Allow other plugins to output inside the WP SEO section of the head section.
*/
do_action( 'wpseo_head' );

echo "<!-- / Yoast WordPress SEO plugin. -->\n\n";

if ( ! empty( $old_wp_query ) ) {
$GLOBALS['wp_query'] = $old_wp_query;
unset( $old_wp_query );
}

return;
}


//echo "<!-- / Yoast WordPress SEO plugin. -->\n\n";
コメントアウトでOK。



次、①なんだが...

これが曲者だった。


外人さんのブログhttp://tj.mk/remove-site-optimized-yoast-wordpress-seo-plugin/に

function remove_yoast(){
  global $wpseo_front;
  remove_action( 'wpseo_head', array($wpseo_front, 'debug_marker') , 2 );
}
add_action('wp_enqueue_scripts','remove_yoast'); 

↑をfunctions.phpに書き込めばOKだよって書いてあったのでやってみたら、消えた

・・・

んだけど、これだとYoastで書き換えたSEOタイトルまで消える。


で、次はclass-frontend.phpの45行目辺りに

add_action( 'wpseo_head', array( $this, 'debug_marker' ), 2 );

てのがあるからコメントアウトしてみたが、やっぱり、SEOタイトルまで消える。


タイトル書き換えは使いたいんだYo!


どんな仕組みだYoこれ#となりながら、いろいろ見ていくと見つけた。

class-frontend.phpの1600行目辺りに

$content = str_replace( $this->debug_marker( false ), $this->debug_marker( false ) . "\n" . '<title>' . $title . '</title>', $content );

これを、

$content = str_replace( $this->debug_marker( false ), '<title>' . $title . '</title>', $content );

に書き換えて目的達成。



まあ、①も②もYoastのファイルを直接編集してるからUPDATEとかあったらまた消さないといけないか。


だれかもっとスタイリッシュにできる方法を教えてつかさい。




Yoast header のコメントを削除 まとめ


<!-- This site is optimized with the Yoast WordPress SEO plugin v' . WPSEO_VERSION . ' - https://yoast.com/wordpress/plugins/seo/ -->



Ⅰ YoastのSEOタイトル書き換えを使わない場合


class-frontend.phpの45行目辺りにある、

add_action( 'wpseo_head', array( $this, 'debug_marker' ), 2 );


をコメントアウト。

※これはYoastで設定したSEOタイトルも消える※



Ⅱ YoastのSEOタイトル書き換えを使っている場合


class-frontend.phpの1600行目辺り
$content = str_replace( $this->debug_marker( false ), $this->debug_marker( false ) . "\n" . '<title>' . $title . '</title>', $content );

を、↓のように書き換えればOK。

$content = str_replace( $this->debug_marker( false ), '<title>' . $title . '</title>', $content );


※Yoastで設定したSEOタイトルは消えない※




<!-- / Yoast WordPress SEO plugin. -->



class-frontend.phpの580行目辺りにある、

echo "<!-- / Yoast WordPress SEO plugin. -->\n\n";
をコメントアウト。

コメント

このブログの人気の投稿

eclipse 改行後のインデントを無効にする

Jquery datetimepicker 日本語にならない原因

サービスエラー:Spreadsheets(service error:Spreadsheets)の原因