「ワードプレス」タグアーカイブ

WordPressの管理画面、ダッシュボードでオリジナルパーツ(独自メタボックス)を追加する方法 BuddyPressカスタマイズメモ

管理画面のダッシュボードで、独自のパーツ(メタボックス)を作って追加表示させる

WordPressのSNSプラグイン、BuddyPressを導入すると不特定多数のメンバーが参加することになる。

管理者以外には、Wordpressのニュース、WordPress イベント、ようこそ画面など(ダッシュボードのメタボックスと呼ぶ)不要なものは全て非表示にしたうえで、独自のメタボックスを追加する方法を紹介。

ちなみに非表示にする方法はこちらを参照:
ダッシュボード画面(管理画面)の「アクティビティ」「クイックドラフト」などを非表示 WordPress BuddyPressカスタマイズメモ
 

独自メタボックス追加したい場合

普通の管理画面は色々と便利なウィンドウがあるが、記事を投稿してもらう人には不要なものばかり。

なので、不要なものを非表示にした上で

オリジナルの「クイックアクセス」というメタボックスを追加してみよう。


 

追加方法と記述のしかた

記述は簡単で、functions.php に下記のように書くだけ。

function my_meta_box(){
 add_meta_box( 'my_meta_box', 'クイックアクセス', 'my_meta_box_in', 'dashboard', 'normal', 'core' );
}
function my_meta_box_in(){
 echo '<a href="https://xxxxxxxx.com/">ホームページを確認</a><br />';
 echo '<a href="https://xxxxxxxx.com/wp-admin/post-new.php">新しく記事を書く</a><br />';
 echo '<a href="https://xxxxxxxx.com/wp-admin/profile.php">個人設定やプロフィールを編集</a><br />';
}
add_action( 'admin_menu', 'my_meta_box' );

‘クイックアクセス’の部分はタイトルなので、好きなタイトルでOK。

今回はリンクを貼り付けただけだが、phpで様々な機能を持たせることができる。

この記事も読まれています

ビジュアルエディター見た目を実際の投稿の色や見た目と揃える方法 WordPress BuddyPressカスタマイズメモ SANGOテンプレート

WordPressのビジュアルエディターで、H2やH3のをつけると、実際のCSSと違うようになるので、それを揃える方法

WordPressのSNSプラグイン、BuddyPressを導入すると不特定多数のメンバーが投稿するようになると、投稿画面のビジュアルエディターの見た目と、サイトフロントの見た目を揃えておいた方がいい。

別のCSSを用意してそれをビジュアルエディター用のCSSとして読み込ませる必要がある。
 

投稿画面のプレビュー用の別のCSSを用意する

SANGOのテーマの場合は
library/css/editor-style.css
に投稿画面用のCSSが入っている。

それを子テーマに別のCSSを入れて読み込ませてみる。

//スタイルとビジュアルエディターの見た目を揃える
function correct_visual() {
add_editor_style(get_stylesheet_directory_uri() . '/library/css/editor-style.css');
}
add_action('admin_init', 'correct_visual', 20);
get_stylesheet_directory_uri()

とパスを書いておくことによって、子テーマのURLが取得されるのでこれでOK。

例えば、
「オレンジ見出し」を実際のページで青くした場合、オレンジのプレビューになるのに、実際のページでは青。

editor-style.css の中に

/*オレンジ見出し*/
body#tinymce.wp-editor .hh8 {
  padding: 0.5em;
  color: #494949;
  background: #fffaf4;
  border-left: solid 5px #ffaf58;
}

この color や、background の色を変えればいい。

WordPressでデータベース接続確立エラーになり、Not enough memory for blob データベースの修復(Repair)もできない時の対処法

データベースエラーになった時の状況確認

データベース接続確率エラーとWordpressで表示される時の状況確認。

・インストール後やサーバー移転後ずっとエラーなのか、ある時急にエラーになったのか
→ 最初からの場合は、データベース名、ホスト名、ユーザー名、パスワード、プリフィックスなど何かしらが間違えている可能性が高い。
まずはwp-config.phpの中のデータベースの設定などを確認。

ある時を境に、急にエラーになった場合は下記確認。

・サーバー側のエラーなのか、データベースのテーブルが壊れているのか
→ サーバーがダウンしている、メンテナンス中などの場合もこのエラーが表示される場合がある。緊急でないなら数時間~1日待ってみる。
国内サーバーなら、ホスティング会社のWebサイトなどに障害状況が掲載される場合が多いのでチェック。
海外サーバーなら、カスタマーサポートにメールかチャットで連絡してみる。

データベースの異常を確認するには、phpMyAdminにログインして、テーブルが「in use」になっているかどうかを確認すれば、データベースが壊れているかはすぐに分かる。

 

phpMyAdminを使いたくない(使い方が分からない)人は?

蛇足だが、phpMyAdminを使いたくない人は、

wp-config.phpのどこかに

define( 'WP_ALLOW_REPAIR', true );

と記述してから

ブログURL/wp-admin/ にアクセスしてみてWordPressからDBの修復を試みる事ができる。

これで修復できればいいが、できない場合は下記へ。
 

phpMyAdminからのデータベース修復

サーバーの管理画面などからphpMyAdminへログイン。

該当のデータベースを開くと

テーブルで「in use」となっているものがあり、「in use」は、破損を意味している。
今回は、wp_options が死んでいる。
あと他にも、wp_commentmeta もよく死ぬ。

壊れているテーブルの左のチェックボックスを選択してから上のメニューで「Repair table」を選ぶ。

日本語版だったら「テーブルの修復」かな?

上に緑で「Your SQL query has been executed successfully」って出たので、やった!成功だ!と思いきやエラーでした。

「Not enough memory for blob at 64384 (need 16862691..」

need xxxxx の部分の数字が途方もなく大きいので、これはもうまともな手法では直せないなと理解。

このエラーが出た時は 修復(repair)では直せない。

ちなみに、シェルアクセスでコマンドを打っても同じ、当然WordPressのdefine( ‘WP_ALLOW_REPAIR’, true );で、管理画面からリペアを試みても無理だ。
 

データベースのバックアップの復元、それが無いならサーバー管理会社にお願いしてリストア(ロールバック)してもらう。

自分で定期的なバックアップをとっていればそれをリストアしてもいい。

データベースのバックアップなんかしてねーって場合は、サーバーの運営会社(ホスティング会社)に連絡して最新のデータベースのバックアップへ復元してもらうしかない。

WordPress BuddyPressカスタマイズメモ 返信メール、メニュー、管理画面、投稿画面など (SANGOテンプレート)

BuddyPressのカスタマイズメモ

基本設定と運用の前提

・BuddyPressでユーザー登録(投稿者として)してもらい、みんなで記事を投稿してもらう

・ユーザー同士は顔見知りじゃないので、それぞれの記事は、管理画面では見えないように

・ユーザー(投稿者権限)の管理画面でのメニューを一部非表示に

・ユーザーの投稿画面で表示オプションを非表示に

・Buddypressのmemberページを使わずに、SangoのAuthorページを活用

・アップデートの通知などをユーザーに見えないように

・コメント時のメール通知などの最適化

・アップデート時に問題が起こらないように、子テーマ化して、コアファイルは極力触らず、functions.phpを使う
 

BuddyPressで実現したカスタマイズ一覧

サイトフロント(管理画面以外の見えるWebサイト全て)

・サイドバーにオリジナルWidget、ユーザーごとの記事PVランキング「人気のメンバー」を追加

・サイトフロントのアドミンバー非表示

・ログイン直後に管理画面ではなくサイトフロントへ飛ばす

・サイトフロントのコメントの編集ボタンを削除

・ログイン時は、非ログイン時と違うメニューを表示させる

 

管理画面全体

・管理画面の一部メニュー非表示

・管理画面のサブメニューの非表示

・管理画面のメニューのアドミンバーの、BuddyPress通知の吹き出しを削除

・管理画面のアドミンバー内の「ヘルプ」「表示オプション」「Wロゴ」などのメニューを非表示

・Wordpressやプラグインのアップデート通知を非表示

・「投稿」→「記事」、「コメント」→「あなたの記事へのコメント」へ、メニューの文言変更

・ダッシュボード画面の「アクティビティ」「クイックドラフト」などを非表示

・管理画面用のCSSファイルを、子テーマ化する

・ログイン画面の「W」のロゴを他の画像に変え、リンク先、マウスホバーの文言変更

・管理画面のプロフィール項目でいらない部分を消す

 

投稿画面、投稿権限

・記事投稿でタイトルの入力を必須にする

・投稿者の「投稿」では、自分の投稿のみ表示させる(他ユーザーの投稿は管理画面の投稿一覧では見えない)

・自分のもののみの投稿数を取得して、記事数に代入

・upした画像は投稿者本人しか見えないようにする

・投稿画面で、メタディスクリプション、トラックバック、リビジョン、フォーマットなどの不要なオプションを削除

・cssで投稿画面の不要な文字修飾オプションを非表示に ※・sango のビジュアルエディターのバグ修正(スマホでTinyMCEの文字修飾がおかしい)へリンク

 

コメント関連

・「あなたのコメント」を管理画面のメニューに追加

・「あなたのコメント」に投稿者自身が、人の記事に書いたコメントを表示

・「あなたのコメント」の上のコメントメニュー(スパム、承認待ち等を)削除

・「あなたのコメント」の上のコメントメニュー(スパムチェック、一括操作も)削除

・「あなたのコメント」「あなたの記事へのコメント」の編集権を調整して、「あなたのコメント」に編集権限を与え、「あなたのコメント」に「削除する」だけ残す

・「コメント」に、「あなたの記事へのコメント」のみを表示させる

・コメントページの上のコメント数を「あなたの記事に書かれた、人からのコメント数」のみカウントする

・「あなたの記事に書かれた、人からのコメント」で上のコメントメニュー削除

 

BuddyPressのメンバー機能

・メンバーなどWidget/ウィジェットのURLの文字列を、別の文字列に置換する

・メンバーなどWidget/ウィジェットのURLをリダイレクトさせる

・メンバー登録時の、ユーザー名で禁止文字列を設定する

・メンバーのタイトルの名前(ユーザーID)に「さん」を追加して表示

・文言変更「登録」→「新規登録」に

 

Sangoのバグ修正・カスタマイズ

・sango のビジュアルエディターのバグ修正(スマホでTinyMCEの文字修飾がおかしい)

・新たなプルダウン(フォントサイズ)追加

・管理画面のプロフィールで、sangoによる追加項目を一旦削除

・管理画面のプロフィールで、Sangoの「肩書」の部分を「出身地」などに変更、管理画面のプロフィールでいらない部分を消す

Sangoの著者ページ「author/…」でその著者の投稿が無いと、プロフィール詳細とアバターが正しく表示されないバグ修正

 

通知メールのカスタマイズ

・コメント通知メールの差出人(wordpress@yourdomain.com)を変更

・トラックバック、ピンバック、コメントの通知メール内容を変更

 

プラグインのカスタマイズ(子テーマ及びfunctions.phpで)

・メールに返信した時にコメントを書いた人のメールアドレスが出ないようにする(Better Notifications for WordPressの設定の問題点を修正するため、管理画面で特定のページの時のみ、jsを上書きする)

この記事も読まれています

さくらのレンタルサーバーでログイン画面で500エラー。クイックインストールでも500エラー

さくらサーバーでWordpressが500エラー internal server errorになる

さくらのレンタルサーバーにWordpressをインストールする時にはパーミッションが問題になる場合がある。

だが、パーミッションが問題なくても管理画面(サイト画面も)500エラーになる場合がある。

そのポイントをまとめておく。
 

パーミッションは問題なし!

直接インストールした場合は、フォルダやphpファイルのパーミッションの設定をしておく必要がある。

しかし今回の場合はパーミッションも問題ない

クイックインストールだから、パーミッションに問題がないのも当たり前。

さくらのレンタルサーバーに他のワードプレスも多数インストールしており、他のWordpressは正常に稼働している。

新規にインストールしたWordpressだけが500エラー。

 

色々調べた結果、php.iniが問題だった

まず、さくらのレンタルサーバーではエラーログを確認してみよう。

さくらのインターネットサーバコントロールパネルにログインし、左のメニューから「アクセスログの設定」をクリック。

ページ中ほどの「エラーログの表示 エラーログ」をクリック。

 
エラーログが表示される。下の方が新しいエラーだ。日付を見ながら確認していこう。

[error] [client **.***.0.106] malformed header from script. Bad header=<br />: install.php

このようなエラーが確認できるなら、PHP.iniの編集で500エラーを回避可能。
 

500エラーの回避方法

さくらのインターネットサーバコントロールパネルで

左のメニューから「PHP設定の編集」をクリック。

php.iniで「magic_quotes_gpc = On

となっている。

これは、フォームで送られた全てのデータがエスケープされる。

つまり、PHPのコマンドなどが正常に受け取れなくなる。

まあ小難しい事はどうでもいいので、この箇所ををコメントアウトしよう。

PHPのコメントアウトは 「;」 で可能。

;magic_quotes_gpc = On

とすれば500エラーは回避できる。

さくらのVPSに導入したWordPressでRSSのFeedや、個別記事のページが404 not foundになったら

WordPressでRSSフィードが取得できない時に疑うこと

ワードプレスでは自動でRSSを出力してくれる。その取得URLは下記の通り、

http://example.com/feed/
http://example.com/feed/rss/
か、
http://example.com/?feed=rss
http://example.com/?feed=rss2

他にもあるが、どうでもいいので割愛。

マネージド・レンタルサーバーであれば多分このエラーはレアケース。

ちゃんと指定してもRSSが取得できないケースがある。
VPSにインストールした場合は割とある。
その原因は .htaccess にある。

 

症状

・RSSが取得できない
・直接RSSのURLを見に行くと404エラー(そりゃ取得できる訳もない)
・個別記事も404
・カテゴリーなども404

 

確認

サーバー内(FTPソフトなどで見る)Wordpressのフォルダの .htaccess をダウンロードして中身を見てみよう。

# BEGIN WordPress
<ifmodule mod_rewrite.c=”">
RewriteEngine On
RewriteBase /wp/
RewriteRule ^index\.php$ ? [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

大体こんな感じのものが書かれているはず。

書かれてなければコピペして上書きアップロードで完了。

書かれてるのにダメな場合もある。
よくあるパターンはVPS使っていて .htaccess が無効になっている場合。

 

VPSで個別記事が404になる時の解決法

.htaccess が無効になっているのを有効化する方法。通称黒い窓を触る必要がある。

さくらのVPSで説明するが、他のVPSでもやり方は割と同じ。


さくらの会員メニューにログインする。

「契約情報」→「契約サービス一覧」→「サーバ設定」→「コンソールの中のシリアルコンソール」

なお、シリアルコンソールでなくてもやり方は同じ。

基本的には、マウスは使えない、コピペなど普通にはできない。

キーボードの矢印とコマンドとエンターでやっていく。

[root@www~]#

となっている状態で

vi /etc/httpd/conf/httpd.conf

と入力して(何回か)エンター。

ずらーっと英語が出て来るので

/AllowOverride

とコマンドを打てば検索できる。

「n」 で次の検索結果へ、「N」で前へ検索していく。

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be “All”, “None”, or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride None

この 「None」 を 「All」 に変更する。

「i」をキーボードで押すとインサートモードになる。

つまり書き換えができる。

インサートモードで「バックスペース」で削除、普通に記入して

記入し終わったらインサートモードを止める。

「ESC」 でインサートモード終了。

続いて mod_rewrite の検索。

/LoadModule rewrite_module

LoadModule rewrite_module modules/mod_rewrite.so の先頭に # がついていれば、その # を削除。

# はコメントアウトなので、 # の行は無視される。

インサートモードを解除(コマンドモードで)

「:wq」エンターで、上書き保存。

[root@www~]# となってるところで、

service httpd restart エンター

で、 httpd を再読み込み。

これで、.htaccess が効くようになり、404は解消されるはず。

Twenty Twelveのスマホメニューが開かない場合の対処法

WordPressのスマホレイアウトでメニューボタンが動かない!

ある特定の条件下で、Wordpressのテーマ、Twentytwelveのスマホ用メニューが開かない場合がある。
twentytwelve-menu1
この修正方法を紹介。
 

 

条件1 Twentytwelveを使っている。

WordPressのテーマ(テンプレート)にtwentytwelveを使っている時にこれは発生する。TwentyelevenやTwenty thirteen fourteen fifteen…などでは起こらない(今後ずっとおこらないかどうかは不明)

条件2 子テーマを使用していて、header.phpをカスタマイズしている

親テーマのheader.phpがアップデートで変更になった。具体的には端末判定によるスマホ対応ではなく、レスポンシブデザインによるスマホ対応になった。

レスポンシブってなに?って場合はこちらのレスポンシブデザインでtableタグを制御をチェック。

この2つの条件が当てはまる場合に、Twentytwelveのスマホメニューが動かなくなる。
 

 

解決法 子テーマのheader.phpを修正

 
Wordpressの管理画面にログインし「外観」→「テーマ編集」

右上の「編集するテーマを選択:」の箇所がTwentytwelveの子テーマになっている事を確認して、「header.php」を編集する。

メニューの部分が

<nav id=”site-navigation” class=”main-navigation” role=”navigation”>
<h3 class=”menu-toggle”><?php _e( ‘Menu’, ‘twentytwelve’ ); ?></h3>
<a class=”assistive-text” href=”#content” title=”<?php esc_attr_e( ‘Skip to content’, ‘twentytwelve’ ); ?>”><?php _e( ‘Skip to content’, ‘twentytwelve’ ); ?></a>
<?php wp_nav_menu( array( ‘theme_location’ => ‘primary’, ‘menu_class’ => ‘nav-menu’ ) ); ?>
</nav><!– #site-navigation –>

となっている箇所があるはずなので、その中の

<h3 class=”menu-toggle”><?php _e( ‘Menu’, ‘twentytwelve’ ); ?></h3>

を、↓↓↓ に変更するだけ。

<button class=”menu-toggle”><?php _e( ‘Menu’, ‘twentytwelve’ ); ?></button>

これでメニューが動くようになったはずだ。

なお、カスタマイズは自己責任で。心配ならバックアップを取っておこう。

WordPressでログインしてる時だけスタイルシートを追記する方法

WordPressで、ログイン時だけdisplay noneなどを適用し、非表示にする方法

 
 
例えば、「ログインはこちら」などを固定フッターに表示しているが、ログインした人には、固定フッターそのものを非表示にしたい場合などに便利。

 
beforelogin
↓↓↓ログインすると、固定フッターを非表示に↓↓↓
afterlogin
 

 

ちなみに、上の写真のように、固定フッターに「ログインボタン」を追加するのに便利なWordperssのプラグインはこちらの記事を参照。
固定フッターを導入する方法 ワードプレスプラグインSimple Sticky Footer
 

 

functions.phpにログイン時のみ、CSS追記をする記述を追加

 

管理画面の「外観」→「テーマの編集」→「テーマのための関数(functions.php)」 とクリックして、 functions.php に、

add_action( ‘wp_head’, ‘footer_custom’);
function footer_custom() {
if ( is_user_logged_in() ) :
echo ‘<style type=”text/css”>#sticky-footer {display: none;}</style>’;
endif;
}

と追記しよう。

add_action( ‘wp_head’, ‘footer_custom‘);
function footer_custom() {

この、footer_custom は任意の名前でOK。

これで、ログイン時のみ、ヘッダーに、「id=”sticky-footer” に対して display: none; ね」と追記することができる。
 

 

応用編、ログインしてない時だけに適用する

 

add_action( ‘wp_head’, ‘footer_custom’);
function footer_custom() {
if ( is_user_logged_in() ) :
else :
ここに非ログイン時の処理を記載
endif;
}

こんな感じで色々使える。

WordPressの子テーマを最速で適用する手順

WordPressのテーマを子テーマ化する最速の方法

細かい説明一切無しの手順。

1.FTPソフトで子テーマフォルダを作る

 

/wp-content/themes の中に 「テーマ名-ch」と言う名のフォルダを作成する。
ちなみに名前はなんでもいいので、適当でもOK。

child-theme1

 

2.作ったフォルダにcssファイルとfunctions.phpファイルをアップロード

FTPソフトで、今作った子テーマフォルダに、style.cssとfunctions.phpをアップロードする。

style.css
functions.txt
↑「右クリック」 「名前を付けて保存」でダウンロードせよ。

style.cssの中身

/*
Theme Name: Child
Template: twentytwelve
*/

Theme Name: これは適当でいい。
Template: の右の「twentytwelve」と書いてある部分は、親のテーマのフォルダ名なので、違うテンプレートを使っている場合は、(FTPソフトなどを見て)親のテーマのフォルダ名に変更する事。

functions.txt の中身

<?php
add_action( ‘wp_enqueue_scripts’, ‘theme_enqueue_styles’ );
function theme_enqueue_styles() {
wp_enqueue_style( ‘parent-style’, get_template_directory_uri() . ‘/style.css’ );
}

こちらは編集する必要はないので、拡張子の.txtを、.phpに変更し、functions.phpをそのまま子テーマフォルダにアップロード。
 
 

3. 親テーマのカスタマイズしたphpを子テーマフォルダにアップロード

 
例えば、ヘッダーをカスタマイズした場合、親テーマのheader.phpを一旦ダウンロードし、子テーマフォルダにアップしなおす。
 
child-theme2

 
子テーマフォルダ内はfunctions.php、style.css、header.php(などのカスタマイズしたphpファイル)の3つだけ。
 
child-theme3
 
 

4. ワードプレス管理画面から、テーマを子テーマに変更する

 
「外観」→「テーマ」→「Childなどの子テーマの名前を選んで有効化」
 
※ヘッダー画像、jetpackのCSS編集、メニューなど、テーマ由来の設定は一旦初期化される(削除されるわけではない)ので、先にコピペメモをとるなり、覚えておくなりする事。
一般設定、表示設定、パーマリンク設定などは初期化されないのでそのままでOK。
 
 

5. メニューやCSS編集(jetpackプラグイン)などの設定をやりなおす

 
「外観」→「メニュー」→「位置の管理」で、メニューを以前と同じものを選んだり、ヘッダー画像を戻したりすれば、全て元通り。
 
これで、子テーマ適用完了。

3.WordPress.orgの自作プラグインをアップロードする方法。Subversionの使い方。

WordPress.orgの自作プラグインをApache Subversionを使って公式ディレクトリに公開する

 

順序は大まかに

0. 概要:Wordpressの自作プラグインを公式ページに登録・公開して、プラグイン追加からインストールできるようにする方法

1.WordPress.orgのアカウントに登録し、公式ディレクトリにプラグインを申請する

2.プラグインの公式ディレクトリへのアップロードに必要なSubversionのダウンロードとインストール

3.Subversionを使ってWorpdress.orgの公式ディレクトリにアップロード&バージョン管理
↑いまここ↑

4..potファイルから .mo ファイルを作ってプラグインの多言語化(国際化)
 
 

という感じ。
公開後もSubversion (Apache Subversion / アパッチ・サブバージョン) を使い、バージョンアップを行っていくことになるので、その基本的な使い方のメモ。

Subversionは、コマンドプロンプトに新たなコマンドを追加するソフトウェアなので、操作はコマンドプロンプトから行う。
 
まだSubversionのインストールがまだの場合は → Subversionのダウンロードとインストール を参照。
 
 

Subversionの使い方(WordPressの自作プラグインのアップロード・公開編)

 
コマンドプロンプトを起動。
subversion-usage-1

Windows7以前のバージョンの場合は、「左下のスタートボタン」→「全てのプログラム」→「アクセサリ」→「コマンドプロンプト」。

 
 
まず、Wordpress.orgの公式ディレクトリから作業スペースを自分のPC内にコピーする。
コマンドは

svn co http://plugins.svn.wordpress.org/レポジトリへのパス/

←coとレポジトリへのパスの間に半角スペース。
subversion-usage-2

上の画像の場合、自分のPCの「Cドライブ→Users→userpc」内に作業スペース(フォルダ)をコピーする。
作業スペースの場所はどこでもいいので、デスクトップなどで作業したい場合は、

cd (フォルダへのパス)

←cdとフォルダへのパスの間に半角スペース。
で移動してから、「svn co」コマンドでコピーすること。
cd-move
コマンドプロンプト内に「cd 」と

ちなみに、レポジトリへのパスは、Wordpress.orgへのプラグイン登録申請の承認メールに SVN repository へのリンクとして記載されている。
addplugin5

 
 

コピー完了すると、下の画像のように表示される。
これで、指定した場所に「tags、assets、trunk、branches」の4つのフォルダがコピーされている。
subversion-usage-3

※エラーでコマンドが通らない場合はSubversionのインストールがうまくいっていない可能性があるので、Subversionのダウンロードとインストール を再度チェック。

 
 

コピー先を見てみると、確かにフォルダができている。
今回の場合は、「Cドライブ→Users→userpc」
subversion-usage-4

 
 

作業スペースの 「trunk」 フォルダに入れたプラグインを、Wordpress.orgのディレクトリへアップロードすることになるので、自作のプラグイン.php と、readme.txt を「trunk」内に移動しておく。

 
 

作業スペース(フォルダ)に移動するので「cd (trunkフォルダへのパス)」とコマンドを叩く。
subversion-usage-5

画像の場合では「cd C:\Users\userpc\add-featuredimage-to-all-posts\trunk」
 
 

作業フォルダ trunk の中の、自作プラグイン.php と readme.txt をWordpressの公式ディレクトリ(レジストリ)にアップロードする。
コマンドは「svn add (自作プラグイン名).php readme.txt」。
subversion-usage-6

A (自作プラグイン名).php
A readme.txt

と表示されたら、アップロード成功。1分程度必要な場合もある。
 
 

次にコミット(作業を更新を実行すること)する。
コマンドは「svn commit -m “first release.”」とする。
subversion-usage-7
この際、PCへのログインパスワードと、Wordpress.orgへのログインパスワードの入力が必要。PCへのログインパスワードが設定されていない場合は、空欄(または0000など適当)でもOK。

追加しています xxxx.php
追加しています readme.txt
ファイルのデータを送信しています ..done

と表示されれば、コミット(更新の実行)が完了している。
こちらも1分程度必要な場合もある。

 
 

以上で、自作プラグインのWordpress.org公式ディレクトリへのアップロード・公開は完了。

 
 

作業としては必要ないが、Wordpress.orgのレジストリを覗いてみると、ちゃんとアップロードされていることが分かる。なお、サーバー反映までに10分程度必要。

subversion-usage-10

これで、管理画面のプラグインの新規追加からも検索で表示され、インストールも可能になった。

 
 

Subversionの使い方(WordPressの自作プラグインのバージョンアップ編)

 
 

バージョンアップも基本的にはやることは同じ。
trunk フォルダ内の 自作プラグイン.php に修正を加えたりした後、レジストリにアップロードしてコミットする。

バージョンアップの際のコミットは「svn commit -m “1.2(数字はバージョン数)”」という形で、バージョンアップしていく。
「commit」でファイルの送信上書きもされるので、「svn add」や「svn copy」は必要ない。バージョンアップだけなら、

下画像では「first release」となっている部分をバージョン数にする。
「cd」コマンドで、trunk フォルダに移動してからコミットすること。
subversion-usage-7

追加しています xxxx.php
追加しています readme.txt
ファイルのデータを送信しています ..done

と表示されれば、コミット(更新の実行)が完了している。

 
 

バージョンを変化させずに修正する場合(誤字訂正などの簡易な変更など)の場合も、同じ方法で、
「svn commit -m “1.2(数字はバージョン数)”」
でバージョン数を変化させずにコミットすることで対応可能。

ただし、この場合既にインストールしている人には、プラグインのバージョンアップが通知されないので、修正されないままになる。

 
 

更新後にも、過去のバージョンを、残したい場合は、タグ付けが必要になる。
タグ付けのコマンドは
「svn copy (http://wordpress内のディレクトリ/trunkのURL) (http://wordpress内のディレクトリ/tags/現バージョン) -m “tagging (現バージョン) release.”」
URLとURLの間などは半角スペースを入れて。
subversion-usage-8

これで、現バージョンを、1.8としてタグ付けして残すことになる。

例えば1.9にバージョンアップした場合、1.8は1.8のまま残せるし、1.9のタグ付けをすれば、1.9も1.9のまま残すことができる。

 
 

ディレクトリに公開されているので、wordpress.orgでプラグインの検索をすると、出てくるようになる。

subversion-usage-11

また、管理画面の プラグイン > 新規追加 からも検索で追加できるようになる。

 
 

この公式ディレクトリに、ヘッダー画像を追加することもできる。
subversion-usage-12

 
 

作業スペースの assetsフォルダ に、 banner-772×250.jpg という名前の、サイズ 772px 250px の画像を入れる。
画像のファイル名は、必ずこの名前にすること。

cd コマンドで、 作業スペースの assets フォルダに移動し、
「svn add banner-772×250.jpg」 とコマンドを叩いて、画像をアップロードする。
subversion-usage-9
上の画像では、「screenshot-1.jpg」 になっているが、 banner-772×250.jpg でも同じ方法でアップロードできる。

 
 

以上で、プラグインのバージョン管理と、ヘッダー画像のアップロードも完了。

次は、プラグインの翻訳の方法を見ていこう。

————-
関連記事:

0. 概要:Wordpressの自作プラグインを公式ページに登録・公開して、プラグイン追加からインストールできるようにする方法

1.WordPress.orgのアカウントに登録し、公式ディレクトリにプラグインを申請する

2.プラグインの公式ディレクトリへのアップロードに必要なSubversionのダウンロードとインストール

3.Subversionを使ってWorpdress.orgの公式ディレクトリにアップロード&バージョン管理

4..potファイルから .mo ファイルを作ってプラグインの多言語化(国際化)
↑次ここ↑