「ワードプレスカスタマイズ」の記事一覧

ワードプレスでメタ情報を最初から削除する方法

ログインしてウィジェットから削除する方法は知っていたが、
ワードプレス内のあるphpファイルからその部分を削除することにより
最初から削除できる方法を知ったので、メモります。

ワードプレスがインストールされているフォルダの中に
下記phpファイルがあるので、それを開く。

wp-includes/default-widgete.php

そうすると、380行目辺りに(バージョンによって若干前後します)

<ul>
<?php wp_register(); ?>
<li><?php wp_loginout(); ?></li>
<li>○○</li>
<li>△△</li>
<li>□□</li>
</ul>

のような形で記述されています。
(○△□は長いため省略)

ログイン/ログアウト
投稿のRSS(○○)
コメントのRSS(△△)
WordPress.org(□□)

自分にとって不必要な<li></li>部分を最初から削除することにより
ログインしてウィジェットを削除するという手間が省けます。

http://unmeino-rashinban.com/archives/158

ワードプレスコメント停止

子テーマ(theme内)のfucntions.php末尾に下記を追加
<?php function abc() {
/*  全コメント停止  */
add_filter( ‘comments_open’, ‘__return_false’);
}

※fucntions.php、不要な改行などが入ると動作しなくなってしまう場合もあるので、
注意が必要。バックアップ取れればとっておいた方が良い。

http://kwski.net/wordpress/1086/
http://entrys.jp/wordpress/blog/817
http://wp-technique.com/wp-functions/

ワードプレスマルチサイト化、サブドメイン、バリューサーバーにて

【データベース関連】
作成をしておく。

【ワードプレス関連】

1.wpをインストール(管理画面にログインできるところまで)

2.wp-config.phpを修正
define(‘WP_DEBUG’, false);
//↓追記↓
define(‘WP_ALLOW_MULTISITE’, true);

3.wpのプラグインの停止

4.wp設定画面、ツール、ネットワークの設置
サブドメインにチェックをしインストール

5.wp-config.phpと.htaccessのファイルを追記と修正
4のインストールをクリックすると、
wp-config.phpに追記して、
.htaccessを置き換えてと画面に出るので、それぞれ修正しアップロード

6.再ログインし、サブドメインサイトの追加
参加サイト、サイトネットワーク管理者、ダッシュボード
サイト、新規追加で、
サイトアドレス、タイトル、メールを入力しサイトを追加をクリック

7.同期(シンボリックリンク化)すれば終わり。
サーバーのコマンド上か、SSH使用にて。

※上記はwww.abc.com(同期元)とddd.abc.com(同期先)の場合。

ddd.abc.com(同期元)とeee.abc.com(同期先)の場合は、
上記だけでは少し足りない。7をする前に8が必要でさらに9以降も必要。

8.サイトアドレス、eee.ddd.abc.comをeee.abc.comに訂正する。
6で入力した際、少しおかしなことに気付く。
サイトアドレスが、eee.ddd.abc.comとなってしまう。
そのままだと利用できないので、一度eee.ddd.abc.comで登録後、
編集画面に入りeee.abc.comに訂正する。
これが出来たら、7をする。

9.WordPress MU Domain Mapping のプラグインのインストール
プラグイン画面、新規追加、キーワード検索、インストール、有効化

10.sunrise.phpをコピーし、wp-content直下へペースト
/wp-content/plugins/wordpress-mu-domain-mapping/sunrise.php
上記場所より、コピーをし、wp-content直下へペーストする。

11.wp-config.phpファイルに「define( ‘SUNRISE’, ‘on’ );」を追記して上書き。

12.設定、Domainsにて、site idとdomainを入力して保存。
7のプラグインをインストールするとDomainsができている。
そこにsite idとdomainを入力することにより、個別サイト編集画面が有効となる。
ただ、以下11を設定することが条件。
ちなみにsite idとは、サイトネットワーク管理者、ダッシュボード、サイトの画面で
編集をマウスオーバーした時にでる数字。登録した順に1,2,3…となっている。

※同期の前に12を行ってしまうと、同期後、12のデータが初期化されてしまう場合があるので、
順番通りやるのが望ましい。

【バリューサーバー関連】

1.サブドメインを追加
「ドメインの利用」「ドメインウェブの設定」にて追加。

2.シンボリックリンクの作成(データの同期)
バリューサーバー管理画面→「ドメインの利用」「データの同期設定」
ドメイン設定(同期元)とドメイン設定(同期先)を設定で問題なくできた。
ただ、設定完了に10分ぐらいかかる場合もある。
大量にやった場合は、1時間以上になる場合も注意。

ちなみに、SSHを用いた同期化は以下参照↓
http://ameblo.jp/sui-smile/entry-12080110570.html

参考
http://hep.eiz.jp/201502/wordpress-multisite/
http://wpgogo.com/customize/wordpress-multisite-multiple-domains.html
http://www.templateking.jp/practical/build/sub_dom.html
http://tsupate.com/%E3%83%90%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6wordpress%E3%81%A7%E3%83%9E%E3%83%AB%E3%83%81%E3%82%B5%E3%82%A4%E3%83%88%E3%82%92%E9%81%8B/

コアサーバーも基本的には同じだが、
日曜日にデータベースエラーなどが発生したが、
月曜日には改善させていた。
次に進めない場合は、1日置いてからやったほうがいい。
エラーが出た場合、どうあがいても次には進めなかった。
日曜日だから、様々な方がサーバーにアクセスしていたためもあるのかもしれない。

バリューサーバー、コアサーバー色々まとめて作成すると…

サブドメインの場合、
1000個まとめてはNGとなる。

500個作った後、ftpで5分後くらいに
フォルダができているか確認しできていたら、
もう500個つくる。そうするとできる。

同期の場合、
300個連続で作成した場合。
例えば9:00~9:30までに入力完了。
そうすると、9:59に同期が完了する。
たくさん作成した場合、59分にまとめて同期される場合が多い。

ただ、バリューサーバーの場合、59分以外にも
同期される場合がある。もう少し早めに処理が完了する場合も。

コアサーバーもバリューサーバーも
短時間に大量の同期申請を受け付けることを想定していない。

1時間以内に千件程度の同期を一度でも行うと、申請が滞ったままとなる。
つまり、シンボリックリンク作成プロセスが起動しなくなってしまう。

問い合わせをしないと、直らないらしい。

今後は、一件一件の申請の間隔を数分程度開けてやることが必要。
もしくは、SSHを使用する。

メール問い合わせ担当部門に引き継ぐ場合。
7営業日以内に回答が来る。
サブドメインの増加は問い合わせから依頼する。
9999→99999になる。

アクセス統計(コアサーバーの場合は・ログと追記記載ある)
CPUをクリックするとアカウントの負荷率がわかる。

コアサーバーは、1000 pt以上が続く場合、
バリューサーバーは、100000 pt以上が続く場合、制限がかかる場合があるので注意。

コアサーバーは制限がかかりやすい。
http://webaccess.blog13.fc2.com/blog-entry-127.html

アクセス閲覧(バリューはログと追記記載あり)でlogを保存する設定になっていると
上記制限にかかりやすくなるので、特に必要を感じない場合は、保存しない方が良い。

ドメインキング

特長
ワードプレスのマルチサイト化できるが、
最大で20個までしかできない。
マルチサイトをたくさん製作したい人は注意が必要。

詳細
p,sプラン、10個
mプラン、20個

方法
ドメインエイリアスの作成をする
(サブドメインの作成ではない)

その他特長
SSH(シェルなど)、ワイルドカード利用不可。
サブドメインはs,mプランの場合、無制限に作れる。

ドメインキング初期設定など
http://kanrininroom.seesaa.net/article/421175592.html

ドメインキングでのWPインストール
http://www.memorou.com/2013/12/wordpress_25.html

ドメインキングでのマルチサイト化
http://miuran.net/wordp/inst/kiji52/
http://perruche15.blog134.fc2.com/blog-entry-53.html

ワイルドカードとは
http://blog.je-pu-pu.jp/archives/682

SSHを用いた同期(シンボリックリンク化)の仕方。

コアサーバーではなぜか同期コマンドを使用すると
最初はできるのだが、途中からできなくなってしまう。

少し面倒だが、手入力のSSHを使用し、同期することができたのでメモります。

手順
0.ホスト情報登録にてSSHを利用できるようにしておく。(コアサーバーの管理画面)
1.サブドメインを作成する。(コアサーバーの管理画面)
  フォルダ(ディレクトリ)が作成される(ftpにて確認)
2.ftpを用い、上記で作成をした同期先のフォルダを削除する。
3.SSHを用い、同期させる。

同期元:○○○.□□□.net
同期先:△△△.□□□.net

入力コマンド
cd public_html
ln -sf ○○○.□□□.net △△△.□□□.net

コラム

2でフォルダを削除する理由。
フォルダが残っていると、適切に同期してくれないため。(エラー例、ケース2参照)

1のサブドメイン作成でNoDirにチェックを入れるとフォルダは作成されないので、
チェックしたくなるが、それはやってはいけない。403エラーとなり同期をするしないに関わらず
何も表示されなくなってしまう。強制的にmainに戻る(同期か転送)ためなのかよくわからないが、
おかしくなってしまうので。

ちなみに順調にいけば1hで300個くらいは同期できる。

SSH使用した同期の場合、コマンドを入力したらすぐにシンボリックリンクができあがっているので、
ftpでログインすると確認がすぐにできるので、便利。コアサーバーの管理画面からの同期の場合、
基本的に59分区切りでの作成っぽいので、確認まで時間がかかってしまう。

同期先が複数ある場合は、|で区切れば一回で入力ができる。

入力コマンド
cd public_html
ln -sf ○○○.□□□.net △△△.□□□.net | ln -sf ○○○.□□□.net ☆☆☆.□□□.net

|はバーディカルバーで、前後には半角スペースが入っている。
☆☆☆.□□□.netが2個めの同期先。三個以上でも同じようにすればOK。

コマンドの手入力は面倒なので、エクセルなどで作成後、atl+vでペーストすれば楽。
ctr+Vではペーストできないので注意が必要。

rmの場合*(アスタリスク)を付けると一括で削除できるので便利。
lnの場合は、簡単にはいかないが…。

findやforなどを使うと難しい処理もできそう…。

注意事項
2でフォルダを削除してもなぜか、59分になるとフォルダが復活してしまう場合がある。
(他にも立ち上げ直後など復活しているケースもあるため、こまめにftpでログインしてチェックが必要かも)
そのまま気付かず作成をしてしまうと、同期先のフォルダ内に同期元がシンボリックリンク化された
ものができてしまう。削除するのも面倒なので、気を付ける。(エラー例、ケース2参照)

削除の際の入力コマンド
cd public_html
cd △△△.□□□.net
rm ○○○.□□□.net

コマンドメモ

cd public_html
意味:public_htmlに移動する。

コマンド入力欄の前に/public_html>
と表示されるので、これでフォルダ内に入れた。

rm ○○○.□□□.net
意味:○○○.□□□.netを削除する。

エラー例

同期元:○○○.□□□.net
同期先:△△△.□□□.net

入力前フォルダ階層
———————————-
第一階層
log
Mailder
public_html

第二階層(public_html内)
○○○.□□□.net
△△△.□□□.net
———————————–

ケース1、入力
ln -sf ○○○.□□□.net △△△.□□□.net

出力:
———————————-
第一階層
log
Mailder
public_html
△△△.□□□.net(シンボリックリンク)
———————————–

ケース2、入力
cd public_html
ln -sf ○○○.□□□.net △△△.□□□.net

出力:
———————————-
第三階層(△△△.□□□.net内)
○○○.□□□.net(シンボリックリンク)
———————————–

SSHを使うためのソフト
Tera Term
http://www.adminweb.jp/web-service/ssh/index1.html

SSHとはFTPのようなもの(TTSSHのソフトは使えず)
http://www.tku.ac.jp/~densan/local/ssh/ssh-top.html

SSHでよく使うコマンド
http://www.leosv.jp/manual/ssh2.html

コアサーバーでSSHを使う
http://webaccess.blog13.fc2.com/blog-entry-60.html#more

SSHでシンボリックリンクを作成する
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230812/

シンボリックリンクで悩んだこと
http://open-groove.net/linux/directory-symbolic-link/

WPマルチサイトの際のシンボリックリンク作成コマンド
http://hep.eiz.jp/201502/wordpress-multisite/

SSH使えない場合は、phpでシンボリックリンク作成
http://d.hatena.ne.jp/iwahei0813/searchdiary?word=%A5%B7%A5%F3%A5%DC%A5%EA%A5%C3%A5%AF%A5%EA%A5%F3%A5%AF

よくわからないSSHのコマンド
http://d.hatena.ne.jp/aquarla/20121206/1354784935
http://d.hatena.ne.jp/Tetsujin/20070921/1190305986

WPテンプレート手動インストール

WPテンプレート手動インストール

/wp-content/themes
にテンプレートをインストールすればよい

参考

SEO用にワードプレスカスタマイズ中

■作業内容

◆header.phpに追加

●タイトルタグを可変できるように、<title>タグ内に追加
<?php if (is_home () ) { bloginfo(‘name’); }
 elseif (is_category()) {echo single_cat_title(); if($paged){echo ‘ Page’.$paged;}}
 elseif (is_single() ) { single_post_title(); }
 elseif (is_month()) {echo get_the_time(‘Y年n月’).’ | ‘; if($paged){echo ‘Page’.$paged.’ | ‘;} bloginfo(‘name’);}
 elseif (is_page() ) { bloginfo(‘name’); echo ‘|’; single_post_title(); }
 else { wp_title(”,true); } ?>

●メタタグを可変できるように
、上記の後に追加

<?php if(is_single()): // 投稿ページ ?>
<meta name=”keywords” content=”<?php foreach((get_the_category()) as $category) { echo $category->cat_name . ‘,’; } $posttags = get_the_tags();if ($posttags) {foreach($posttags as $tag) {echo $tag->name . ‘,’; } } ?>”>
<?php if($post->post_excerpt): // 抜粋あり
$summary = strip_tags($post->post_excerpt);
$summary = ereg_replace(“(rn|r|n)”, “”, $summary); ?>
<meta name=”description” content=”<?php echo $summary; ?>”>
<?php else: // 抜粋なし
$content_summary = strip_tags($post->post_content);
$content_summary = ereg_replace(“(rn|r|n)”, “”, $content_summary);
$content_summary = mb_substr($content_summary, 0, 100). “…”; ?>
<meta name=”description” content=”<?php echo $content_summary; ?>”>
<?php endif; ?>
<?php elseif(is_page()): // 固定ページ ?>
<meta name=”keywords” content=”<?php $title = get_the_title(); echo $title; ?>,(関連キーワード)”>
<meta name=”description” content=”<?php $title = get_the_title(); echo $title; ?>のページ、<?php bloginfo(‘description’); ?>”>
<?php elseif(is_category()): // カテゴリー ?>
<meta name=”keywords” content=”<?php single_cat_title(); ?>,(関連キーワード)”>
<meta name=”description” content=”<?php single_cat_title(); ?>カテゴリーの記事 <?php if($paged){echo $paged.’ページ目’;} ?>、<?php bloginfo(‘description’); ?>”>
<?php elseif(is_month()): // 月別アーカイブ ?>
<meta name=”keywords” content=”<?php echo get_the_time(‘Y年n月’); ?>,(関連キーワード)”>
<meta name=”description” content=”<?php echo get_the_time(‘Y年n月’); ?>の記事 <?php if($paged){echo $paged.’ページ目’;} ?>、<?php bloginfo(‘description’); ?>”>
<?php else: // その他のページ ?>
<meta name=”keywords” content=”(関連キーワード)”>
<meta name=”description” content=”<?php bloginfo(‘description’); ?>”>
<?php endif; ?>

●h1を右上に追加

●h2をタイトルタグ同様、可変できるように<h2>タグ内に追加
<?php if (is_home () ) { bloginfo(‘name’); }
 elseif (is_category()) {echo single_cat_title(); if($paged){echo ‘ Page’.$paged;}}
 elseif (is_single() ) { single_post_title(); }
 elseif (is_month()) {echo get_the_time(‘Y年n月’); if($paged){echo ‘ Page’.$paged;}}
 elseif (is_page() ) { bloginfo(‘name’); echo ‘|’; single_post_title(); }
 else { wp_title(”,true); } ?>

◆script.jsに追加
とある理由で短縮URL転送を行いたくなったので、
下記を追加した。

var tt = new Array();
window.onload = fn;

//ここに転送URLを記述する
tt[“yah”] = “http://www.yahoo.co.jp/”;
tt[“goo”] = “https://www.google.co.jp/”;

/******************************************
アクセス方法
//http://設置したサーバ/?短縮URL
*******************************************/

function fn(){

var arg = window.location.search;
if(arg.substring(0,1) == ‘?’){

var value = arg.substring(1);
var url = tt[value];

if(url){
document.location = url;
}
else {
alert(“引数が無効、又はURLが登録されていません”);
}

}
}

sidebar1.phpの一部削除
サイドバーにあったカテゴリタグ削除(重複していた)
○○の所、相対リンクで、短縮URLを使った。rel=”nofollow”を使用。

footer.phpの一部可変
いらないリンクついていたから削除した
topへ戻れるよう内部リンクつけた

◆function.phpに追加
著者ページを非表示(ページが見つかりませんでした)に
add_filter( ‘author_rewrite_rules’, ‘__return_empty_array’ );

その後、
ダッシュボード>設定>パーマリンク設定を開き、「変更を保存」ボタンを押す
ならない場合、

function.phpに以下を追加し保存、非表示になったら、下記記述消す。なぜかできた。
add_action( ‘template_redirect’, ‘theme_slug_redirect_author_archive’ );

◆さまざまなphpファイル
・h4以降使用しないので関連を削除
h1,h2のスタイルシート、重複があったため、可変し削除

・著者ページ削除に伴い、関連を削除
search、index、arcive、single、pageなどのphpファイルにある著者(author)を含む記述↓

<?php $icons[] = ob_get_clean(); ?><?php endif; ?><?php if (!is_page()): ?><?php ob_start(); ?><?php _e(‘Author’, ‘kubrick’); ?>: <?php the_author_posts_link() ?>

※arcive.phpのsorry付近は削除しなかった。coment.phpも、コメント非表示に付き。

・ヘッダー画像変更に伴い、スタイルシートで、サイズを変更
既存、記事タイトルなどのh2タグをh3に変更(h1タグを右上に設置したため)
h1,h2は内部リンクつけなくした。

◆ローカル上にて作業をしアップロード

●imagesファイルにブックマーク用、記事用画像を追加。
ブックマークの画像のリンク先をワードプレス上のアドレスに変更。

●h1とmeta(関連キーワード)を同じものに

以下参考リンク

metaタグを使えるように

ページ別にタイトルが重複しないように設定
その2
その3

著者ページ表示されないように
その2

短縮URL

elseif(is_category())single_cat_title(); ワードプレス 検索
ワードプレス h1 トップ 個別 変える
cgi url 転送

ワードプレス便利なプラグイン

JETPACK説明
メール投稿、facebookボタンなど
ワードプレス追加機能追加プラグイン

JETPACK説明2

サブコンテンツ

このページの先頭へ