WordPress

WordPressで『メディアを挿入』のデフォルトリンク先を「なし」にする方法

WordPressで、『メディアを挿入』をするとき、リンク先のデフォルトが『メディアファイル』になってますよね。

ですが、例えば大きめのファイルをアップした場合、画像をクリックするとファイルがでかでかと開いてしまい困ったことになります。

プラグインなどで対策する方法もありますが、この手の対策をしない場合、リンク先は『なし』の方が見やすいかと思います。

そこで、このデフォルト設定を『なし』にする方法をご紹介。


WordPressには隠しオプション設定ページがありまして、管理画面にログインした状態のまま、

http://(インストールディレクトリ中略)/wp-admin/options.php

にブラウザからアクセスします。すると

none

『image_default_link_type』とい項目がありますのでここを『none』にして、「変更を保存」します。

これで、『メディアを挿入』時のデフォルトのリンク先が『なし』になります。

『twentyfourteen』のアイキャッチ画像の消し方

テーマ「twentyfourteen」を使用しています。

トップページ用にアイキャッチ画像を設定したいのですが、アイキャッチ画像を設定すると、困ったことに各記事の上にも同じ画像が表示されてしまいます。

きれいに表示されるならいいのですが、なぜかタイトルと重なっておかしな表示のされ方になります。

イメージ2873

こんなように画像にタイトルがめり込んだ形になってしまいます。上手く使いこなせば綺麗に調整することもできるとは思うのですが、毎回調整するのは正直面倒です。

そこでこの表示を消してしまう方法を紹介。

「content.php」にある

 <?php twentyfourteen_post_thumbnail(); ?> 

これを消去します。これで各記事の上部分のアイキャッチ画像は表示されなくなります。

任意の場所にウィジェットを追加する方法

IMG_6918

例としてテーマ『twentyfourteen』に『Contents sita』という、いいかげんな名前のウィジェットを追加してみましょう。


まず『functions.php 』を設定します。

function twentyfourteen_widgets_init() {

以下に


	register_sidebar( array(
		'name'          => __( 'Footer Widget Area', 'twentyfourteen' ),
		'id'            => 'sidebar-3',
		'description'   => __( 'Appears in the footer section of the site.', 'twentyfourteen' ),
		'before_widget' => '<aside id="%1$s" class="widget %2$s">',
		'after_widget'  => '</aside>',
		'before_title'  => '<h1 class="widget-title">',
		'after_title'   => '</h1>',
	) );

のようなデフォルトで設定されているウィジェットの設定が並んでますので、これをコピペして、その下に


	register_sidebar( array(
		'name'          => __( 'Contents sita', 'twentyfourteen' ),
		'id'            => 'sita',
		'description'   => __( 'Appears in the Contents sita of the site.', 'twentyfourteen' ),
		'before_widget' => '<aside id="%1$s" class="widget %2$s">',
		'after_widget'  => '</aside>',
		'before_title'  => '<h1 class="widget-title">',
		'after_title'   => '</h1>',
	) );

nameとid(とdescription)を書きかけた別のウィジェットを追加設定します。


次に『single.php』や『content-page.php』など、ウィジェット設置したい場所に


<?php dynamic_sidebar(sita); ?>

と書き込みます。これで新しいウィジェット作成完了です。

あとは、通常のウィジェットと同じように設定してください。

 

『Contact Form 7』の簡単なスパム対策

IMG_6953

『Contact Form 7』は定番かつ便利なフォーム作成プラグインですが、それだけに使われているサイトも多く、デフォルト設定のままにしておきますと、いつの日かスパムに狙われやすくなります。

『Akismet』を使う、『画像認証』を使う等定番の対策はありますが、『Akismet』は必要なメッセージまでスパム扱いしてしまうことがある、『画像認証』は設置も入力側も面倒という問題があります。

そこで今回は1番単純なスパム対策をご紹介

『Contact Form 7』に「認証の確認」ボタンを付ける方法です。「タグの生成」から「認証の確認」で生成できます。

[acceptance acceptance-01]

ショートコードが生成されますので、これに文章を添えて『Contact Form 7』の送信ボタン上に設定します。

<p>【メッセージの確認】 必須

[acceptance acceptance-01]&nbsp;内容をご確認の上、チェックを入れて送信ボタンを押してください。</p>

<p>[submit "送信"]</p>

文章と併せるとこのような感じでしょうか。内容はご自由に設定してください。。

結論のようなもの

  • 特に難しい対策をしなくても、ひとまずこれだけでも、ほとんどのスパムは来なくなります。
  • また、「認証の確認」ボタンでなくて、選択式のボタンの方でも効果がありますので、アンケート形式の場合はそちらも効果的です。

使用中のWordPressテーマをバージョンアップするときの注意点

IMG_6943

Twenty Fourteen 1.1、Twenty Thirteen 1.2、Twenty Twelve 1.4と最近WordPressテーマのバージョンアップがありました。

バージョンアップすると、基本的にphpやcssを直接改造した箇所は全部なくなります。まぁ当然なんですが、現行使っているテーマを不用意にバージョンアップすると困ったことになる場合があるのでご注意ください。

改造でなくウィジェットなどからの設定などはそのまま引き継ぎますが、基本的にテーマを入れ替えたときに起こる問題と同じことが起こります。

分かってやってたつもりでしたが、Google Analyticsなどのトラッキングコードもです。これをすっかり見落としてました!

やらかしたー!

【追記】こういうことがあるので、めんどくさがらずにちゃんと「小テーマ」を作ってカスタマイズすべきでしたね。反省~。

Google Adsenseでクロールエラーが出ました。

IMG_6919

Google Adsenseの「収益の最適化」で、Wordpress の /wp-admin/customize.php に対して、クロールエラーが出ました。

エラー内容
robot.txt によって拒否

場所
http://(中略)/wp-admin/customize.php

エラー文章
「Google クローラがページにアクセスできなかったため、コンテンツを識別して広告を表示することができませんでした。クローラがコンテンツにアクセスできないと広告は表示されないため、収益と一致率が低下します。[修正方法] のリンクに従ってエラーを修正してください。」

http://(中略)/wp-admin/ は、wordpressのログイン画面や管理画面などの部分です。

外から見る内容には関わりない箇所のはずなので、robots.txtでクローラーアクセス不許可にしてあったんですよね。(Adsenceの表記は「robot.txt」になってますが、正しくは「robots.txt」のはず。)

詳細は→過去記事『robots.txtでやらかした!』で。

この箇所がなぜ必要なのか分かりませんが、robots.txtでこの部分だけクロール許可しておきました。


Disallow: /*/wp-admin/
Allow: /*/wp-admin/customize.php

これで大丈夫だと思うのですが、どうなんでしょ。

【追記】 対策後しばらくして、クロールエラーは消えてました。