「WordPress」カテゴリーアーカイブ

WordPressのカスタマイズに関する記事です。

WordPressのスパムコメント対策 ~WordPressへログインしているユーザーのみコメントを許可する~

ここで言う「ログイン」とは、WordPressのアカウントへログインすることを指すようです。
スパムコメント送信者もWordPressのアカウントを所持しているでしょうから、スパム抑止効果は薄いと思われます。

[操作手順]
→WordPressへログインする。

→設定>ディスカッション の順にアクセスする。

→「ユーザー登録してログインしたユーザーのみコメントをつけられるようにする」をONにする(デフォルト:OFF)

以上で完了です。

 

[確認環境]
WordPress 4.0.1

WordPressのスパムコメント対策 ~新規投稿する記事のコメント機能をなくす~

新しく投稿する記事から「コメント欄」をなくします。
新しく投稿する記事のみが対象です。
※投稿済みの記事のコメント機能をなくすには別の設定が必要です。

 

[操作手順]
→WordPressへログインする。

→設定>ディスカッション の順にアクセスする。

→「新しい投稿へのコメントを許可する」をOFFにする(デフォルト:ON)

以上で完了です。

 

[確認環境]
WordPress 4.0.1

WordPressのバージョンを確認する方法

[操作手順]
→WordPressへログインする。

→ダッシュボードの「概要」の下部に注目する。
※表示されていない場合は、画面右上の表示オプションにて「概要」のチェックをONにします。

→バージョンが記載されているv。
例)WordPress 4.0.1 (Twenty Fourteen テーマ)

以上で完了です。

 

[確認環境]
WordPress 4.0.1

WordPressでソースコードをフォーマットして表示する

Crayon Syntax Highlighter というプラグインをインストール。

初期設定は適当。まずは使ってみる。
ちなみに初期設定の仕方は
管理画面の設定>Crayonを選択。いっぱい出てくる。

使い方は以下。

 

ビジュアルで編集している場合

<>みたいな「挿入画面」となっているボタンがツールバーにあるので、それを押す。すると、設定がもろもろ出てくる。

言語を正しく選択し、適当にチェックを入れて、右上の「挿入」を押す。

 

テキストで編集している場合

<pre></pre>

で囲んだところが自動でフォーマットされる。
装飾を入れたい場合は、preタグのclass名にいれる。

たとえば、

<pre class=”lang:php decode:true ” title=”wp-content/themes/twentytwelve/function.php”>
何らかのソースコード
</pre>

こんな感じ。

 

wordpressの固定ページでPHPを動かす

固定ページでショートコードを呼び出して実現する。

Exec-PHPというプラグインでPHPを個別ページに記述できるが、セキュリティ上利用しない方が良さそう。

ショートコードの使い方。

function.php
内に関数を書いて、returnする。
add_shortcode(‘ショートコード名’, ‘関数名’);
とし、wordpress上で利用できるようにする。

wordpressの投稿内で

[ショートコード名]

として呼び出す。以上。

例として、カテゴリ一覧を取得する関数の場合

function.php

 

固定ページの任意の箇所に

とする。

 

WordPressをローカル環境に新規インストールする方法

0.初めに
※XAMPP設定済みの環境を前提にしています。ご注意ください。

 

1.WordPressをダウンロードします。

http://ja.wordpress.org/

画面右側の少し下がった所にある青色のボタン [WordPress 3.9.2をダウンロード] を押すと
wordpress-3.9.2-ja.zip のDLが始まります。

 

2.wordpress-3.9.2-ja.zip を解凍します。

解凍先は、C:\xampp\htdocs とします。

C:\xampp\htdocs\wordpress となりました。
※ディレクトリ名はトラブルを避けるためにも、半角英数字にしましょう。

 

3.WordPressのデータベースを作成します。

xampp-control.exeより、XAMPPを起動します。

→ Apacheの右側にある [Start] ボタンを押して Running の状態にします。

→ MySql右側にある [Start] ボタンを押して Running の状態にします。

→ MySqlの右側にある [Admin…] を押すと、ブラウザ上でphpMyAdminの画面が開きます。
※phpMyAdminとは、MySQLをブラウザ上でGUI操作するための管理ツールです。
※MySQLのデータベース作成、テーブル作成など、SQL文の作成、実行なしで操作できるようになります。

phpMyAdmin画面の [データベース] タブをクリックします。

新規データベースを作成する

→「任意の名前」を付けます。例)wordpress

→ 「utf8_unicode_ci」を選択します。

→ 作成ボタンを押します。

以上でデータベースが作成されました。

 

4.wp-config.php を編集します。

C:\xampp\htdocs\wordpress を開きます。

wp-config-sample.php → wp-config.php へリネームします。

wp-config.php を編集します。
テキストエディタなどで開いてください。

デフォルト状態です
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
/** WordPress のためのデータベース名 */
define(‘DB_NAME’, ‘database_name_here’);

/** MySQL データベースのユーザー名 */
define(‘DB_USER’, ‘username_here’);

/** MySQL データベースのパスワード */
define(‘DB_PASSWORD’, ‘password_here’);
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

このように変更します。
※define(‘DB_NAME’, ‘wordpress’); の箇所は、先ほど新規作成したデータベースの名前を入れます。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
/** WordPress のためのデータベース名 */
define(‘DB_NAME’, ‘wordpress’);

/** MySQL データベースのユーザー名 */
define(‘DB_USER’, ‘root’);

/** MySQL データベースのパスワード */
define(‘DB_PASSWORD’, ”);
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

ブラウザで以下のページへアクセスして、キーをまるっとコピーします。
https://api.wordpress.org/secret-key/1.1/salt/

デフォルト状態です。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
define(‘AUTH_KEY’, ‘put your unique phrase here’);
define(‘SECURE_AUTH_KEY’, ‘put your unique phrase here’);
define(‘LOGGED_IN_KEY’, ‘put your unique phrase here’);
define(‘NONCE_KEY’, ‘put your unique phrase here’);
define(‘AUTH_SALT’, ‘put your unique phrase here’);
define(‘SECURE_AUTH_SALT’, ‘put your unique phrase here’);
define(‘LOGGED_IN_SALT’, ‘put your unique phrase here’);
define(‘NONCE_SALT’, ‘put your unique phrase here’);
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

この例のようにまるっと貼り付けて上書き保存します。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
define(‘AUTH_KEY’, ‘Tib#L]=PO]IB^r+Xk>5<$geaU4-hG@|MuS;E)!n]HJ?>R<%g4tkbkPh_L5smxie1’);
define(‘SECURE_AUTH_KEY’, ‘C8JrmT2>ZsHI,m,}Iq7x-1aZ-,wPvSYu&K?*mu%ZpY5{rDhJxVuv{u*#IZ$U6(X');
define('LOGGED_IN_KEY', '.bM;x*0#5dhCrMW/ox_P=SZ[VuCgx8Z&aR^DG</8I!p I=xYt~*Wl;Lvyd2|}w7&');
define('NONCE_KEY', 'K.]#RqOmO dag
,5kVx!:]L4qI{UqOV _M>Y?kY&F8n33 }Q/9.+E:X|>{uMo(l=’);
define(‘AUTH_SALT’, ‘^f?Q[jFb8|jy_v?pzw![8Q[j-FjN4k=HEj0[jKMe~nSh 71314cT#I})0Jypx_$');
define('SECURE_AUTH_SALT', '-9No
x~@+EhB=mJ:S+-M1G^mo5@VHyA?OPtvrMth|xcO-y[(GXPy#W68D&v9@J{_’);
define(‘LOGGED_IN_SALT’, ‘v3hhhHPnZIeasX`0G1rk:Z6Wr2)CXcblCERtdL5LY:5XNYy(+Q{{+f{_^#Td*+x_’);
define(‘NONCE_SALT’, ‘STyHE|lKEO&oe?f&PSSx]d5xqIIbXR..Krd&%n]_F_d6sn-EA*1~!Or}6p*)hQGn’);
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

 

以上でローカル環境に新規インストールが完了しました。

ブラウザで以下のページへアクセスできることを確認してください。
http://localhost/wordpress/

wordpress テンプレートファイルの役割

ワードプレスは、個別のページごとに分割されたphpファイルを都度組合せて表示に利用する仕組みがあります。

個別のphpファイルのことをテンプレートファイルと呼び、ページごとに機能が違います。

主なテンプレートファイル

  1. page.php // 固定ページで使用
  2. search.php // サイト内検索ページで使用
  3. archives.php // アーカイブページ(月別)で使われます
  4. comments.php // コメント用のファイルで、single.phpが読み込む
  5. functions.php // いろいろな機能を追加するために利用
  6. header.php //ページ上部 いわゆるヘッダー部分。
  7. index.php //基本となるページ
  8. sidebar.php //サイドバー部分
  9. footer.php //ページ下部いわゆるフッター部分。

wordpressで作者(著作者)ごとにプロフィール画像などを表示する。

VK Post Author Display というプラグインを利用する。

出来ることは以下。

・プロフィールを表示する。

・最新記事4件を表示する。

 

プロフィール画像を登録できるようにするには、

設定 > Post Author Display から
Display post thumbnail image」を display thumnail image にする。デフォルトはhide。

さらに、Gravatarのアカウントが無い場合は、
Simple Local Avatars というプラグインも入れる。

 

wordpressで人気の記事をサイドバーに表示する。

WP-PostViews というプラグインを利用。

WP-PostViews のインストールは、
プラグイン > 新規追加 画面で検索し、選択。画面の指示に従って完了。プラグインを有効化することを忘れないように。

実際の表示は、
外観 > ウィジェット 画面で設定する。

表示順位を掲載するには、プログラム自体の改変が必要。
\wp-content\plugins\wp-postviews\wp-postview.php

foreach ($most_viewed as $post) {
$post_views = intval($post->views);
$post_title = get_the_title();
if($chars > 0) {
$post_title = snippet_text($post_title, $chars);
}
$post_excerpt = views_post_excerpt($post->post_excerpt, $post->post_content, $post->post_password, $chars);
$post_content = get_the_content();
$temp = stripslashes($views_options[‘most_viewed_template’]);
$temp = str_replace(“%VIEW_COUNT%”, number_format_i18n($post_views), $temp);
$temp = str_replace(“%POST_TITLE%”, $post_title, $temp);
$temp = str_replace(“%POST_EXCERPT%”, $post_excerpt, $temp);
$temp = str_replace(“%POST_CONTENT%”, $post_content, $temp);
$temp = str_replace(“%POST_URL%”, get_permalink(), $temp);
$output .= $temp;
}

この記述があるのは複数個所ある。

238、287、341、395、449、503

$rankingNo = 1;//順位を計数する変数の定義
foreach ($most_viewed as $post) {
$post_views = intval($post->views);
$post_title = get_the_title();
if($chars > 0) {
$post_title = snippet_text($post_title, $chars);
}
$post_excerpt = views_post_excerpt($post->post_excerpt, $post->post_content, $post->post_password, $chars);
$post_content = get_the_content();
$temp = stripslashes($views_options[‘most_viewed_template’]);
$temp = str_replace(“%VIEW_COUNT%”, number_format_i18n($post_views), $temp);
$temp = str_replace(“%POST_TITLE%”, $post_title, $temp);
$temp = str_replace(“%POST_EXCERPT%”, $post_excerpt, $temp);
$temp = str_replace(“%POST_CONTENT%”, $post_content, $temp);
$temp = str_replace(“%POST_URL%”, get_permalink(), $temp);
$temp = str_replace(“%RANKING_NO%”, $rankingNo, $temp);//変数への代入
$output .= $temp;
$rankingNo++;//順位のカウントアップ
}

に変更する。変更するのはコメントのあるところ。コードに追加する。それ以外のコードは、微妙に違うのでまるッと上書きしないように。

 

WordPressの必須の初期設定について

・コメントの手動承認を必須にする:ON(デフォOFF)
場所:WordPress ログイン>設定>ディスカッション>コメント表示条件

これで管理者が承認するまではコメントが表示されなくなりました。
ロボットによるスパムコメントを防ぐために必要な設定となります。