- プルダウンメニューの追加方法 (2011.03.18)
- Googleカレンダーの貼り付け方 (2011.03.18)
- HTML編集画面を大きくする方法(2011.03.18)
- (システム)Wordpress3.1とWPMLの組み合わせて、カテゴリー表示がおかしい(2011.03.23)
- (リンク)特定リンクカテゴリーを固定ページ等に貼り付けたい場合
- (投稿)編集履歴を出したい(2011.03.31)
- (未解決)日本語ファイル名のアップロード・ダウンロードができない(2011.04.01)
- (投稿)未来の公開日時を設定した記事でクイック編集でコメント許可すると表示されなくなる(2011.04.08)
- (ログイン)1つのブラウザで複数のGoogleアカウントを使う方法(2011.04.08)
- (バグ)タイトルが正しく反映されない(2011.04.18)
- (トラブル)「予定に基づいたメンテナンスを行っているためしばらくの間ご利用できません。少し間をおいて再度確認してください。」と出た場合(2011.05.10)
- (トラブル)IPアドレス制限をしたい
- (リンク)リンクに追加したリンクを固定ページ、投稿に挿入したい(2011.06.30)
- (プラグイン)WP-Table Reloadedに日本語ファイルを文字化けせずにインポートしたい(2011-07-04)
- (ダウンロード)ダウンロードURLを固定にしたい(2011.07.04)
- (トラブル)Wordpress 3.0.1以降で「設定」にアクセスできなくなった(2011.07.12)
- (トラブル)Contact Form 7で添付ファイルがアップロードできない(2011.08.01)
- (トラブル)Internet ExplorerでWordpressサイトを見ると待機中で表示できない(2011.08.02)
- (時間)ダウンロードモニタのログ時間がおかしい(2011.08.03)
- (トラブル)Wordpressに移転したときに、以前のサイトのURLからの転送ができない(2011/08/04)
- (トラブル)Contact Form 7でラジオボタン項目を選択しなくても送信できてしまう (2011-08-10)
- (改変)Contact Form 7で他のプラグインの「ショートコード」を使いたい(2011.08.19)
- (トラブル)Contact Form 7で送信ボタンを押しても送信できない
- (プラグイン)WPMLでの言語スイッチの言語の部分をそれぞれの母国語に変更したい(2012.04.16)
- (プラグイン)WPMLを利用したサイドメニュー表示で、他の言語が表示される(2012.04.19)
- (プラグイン)WP Table Reloadedで生成されるtableのidにつくナンバリングの意味は?(2012.05.11)
- (プラグイン)Wordpress HTTPSは、パスワード付きページでうまく動作しない(2012.05.15)
- (プラグイン)Contact Form 7でメールアドレス確認機能が使いたい(2012.05.30)
- (システム)パスワードロックページでSSLを利用する方法(2012.06.05, 2012.06.26)
- (プラグイン)Contact Form 7の日付入力にカレンダーを利用したい(2012.10.25)
- (プラグイン)PHP5.4にアップグレードしたら、User Access Managerがエラーを出してサイトが止まった(2013.06.04)
- (メディア)アップロードフォルダが写真の日付に沿っていない(2013.06.05)
問題: プルダウンメニューの追加方法 (2011.03.18)
解答:
[メイン項目追加] 1. 固定ページを新規作成する 2. サイドメニューの「外観」→「メニュー」→「global-navigation」を開く 3. 「ページ」から作成した固定ページタイトル名にチェックを入れて「メニューに追加」ボタンを押す 4. 追加されたメニューを並び替える(必要なら) 5. 「メニューを保存」ボタンを押す [サブ項目追加(プルダウンメニュー)] 1. 固定ページを新規作成する 1a. ページ属性の親を設定する(紐づけるメイン項目名を選択) 2. サイドメニューの「外観」→「メニュー」→「global-navigation」を開く 3. 「ページ」から作成した固定ページタイトル名にチェックを入れて「メニューに追加」ボタンを押す 4. 追加されたメニューを並び替える(必要なら) 4a. マウスでメイン項目から少し右へずらすようにドラッグ&ドロップするとサブメニュー化します 5. 「メニューを保存」ボタンを押す
問題: Googleカレンダーの貼り付け方 (2011.03.18)
解答:
1. Googleアカウントを取得し、ログイン 2. Googleカレンダーにアクセスして、設定からカレンダーを追加 3. 追加したカレンダーを公開する 4. ログイン状態のまま、 http://www.google.com/calendar/embedhelper にアクセス。 5. 自分のカレンダー一覧が表示されるので、追加したカレンダーのみにチェックを入れる 6. iframeに出たタグを、HTML内に埋め込む
問題: (システム)Wordpress3.1とWPMLの組み合わせて、カテゴリー表示がおかしい(2011.03.23)
解答:
[解決] Wordpress 3.1.1で修正された [問題点] WordPress3.1から cat --> category_name になったため、標準ではcategory_name --> cat変換されているが WPMLではそのあたりをしないので、wp-includes/query.phpに正しいデータが送られてないようだ。
HP Warning: reset() expects parameter 1 to be array, null given in /path..../query.php on line 2890,
というエラーが出る。多くのサイトでこのエラーがでているようだ。 [暫定対処法] wp-includes/taxonomy.php を改変し、URLに「cat=ID番号」を追加した function get_term_linkにおいて 1.2846行: $termlink = "?$t->query_var=$slug"; を下記に変更 $termlink = "?$t->query_var=$slug".'&cat='.$term->term_id; 2.2849行: $termlink = "?taxonomy=$taxonomy&term=$slug"; を下記に変更 $termlink = "?taxonomy=$taxonomy&term=$slug" .'&cat='.$term->term_id; ※WPMLの有償版(Wordpress3.1対応)では問題ないのかもしれません。
– WPML causes error: query.php on line 2890 (2011.03.23)
問題: (リンク)特定リンクカテゴリーを固定ページ等に貼り付けたい場合
解答:
固定ページでPHPを扱えるようにプラグインを入れて下さい。 その上で、リンクカテゴリー番号を調べてください。 これはリンク管理のリンクカテゴリーを選択することで出てくるURLのtag_IDをみてください。
のように記載します。 - リンクカテゴリ30 - 概要表示 - 最終更新日でソート - タイトルを付けない という感じです。 くわしくは - wp_list_bookmarks テンプレート をみてください。
解答:
問題: (未解決)日本語ファイル名のアップロード・ダウンロードができない(2011.04.01)
解答:
問題: (投稿)未来の公開日時を設定した記事でクイック編集でコメント許可すると表示されなくなる(2011.04.08)
解答:
問題: (ログイン)1つのブラウザで複数のGoogleアカウントを使う方法(2011.04.08)
解答:
問題: (バグ)タイトルが正しく反映されない(2011.04.18)
解答:
問題: (トラブル)「予定に基づいたメンテナンスを行っているためしばらくの間ご利用できません。少し間をおいて再度確認してください。」と出た場合(2011.05.10)
解答:
解答:
User Access Mangerプラグインを使うと可能です。 IP RangeにIPアドレス範囲を書きます。 ただし、WP Super Cacheが有効の場合にはまともに動作しません。 たとえば、IPアドレス範囲外の人がアクセスしてアクセス拒否画面がでると、 それがキャッシュされてしまい、IPアドレス範囲内の人もキャッシュの有効 期限内は、アクセス拒否画面が出てしまうためです。
問題: (リンク)リンクに追加したリンクを固定ページ、投稿に挿入したい(2011.06.30)
解答:
<?php $link = get_bookmark(リンクID); echo 'link_url, '" target="_blank">'. $link->link_name. ''; ?>
という風に書きます。
ただしこれをかいたら、ビジュアルモードにしないでください。PHPコードが無効にされてしまいます。
問題: (プラグイン)WP-Table Reloadedに日本語ファイルを文字化けせずにインポートしたい(2011-07-04)
解答:
これは、ExcelファイルとWP-Table Reloadedでは文字コードが違うために起こります。
文字化けしないようにするためには、インポートしたいファイルの文字コードを[UTF-8]に変換する必要があります。
1. インポートしたExcelデータをCSV形式で保存します
2. [UTF-8]が使用できるテキストエディタでCSVファイルを開き、保存形式を[UTF-8]に変換します
3. [UTF-8]に変換したファイルを手順に従ってインポートします
これで、文字化けせずにインポートできるはずです。
情報処理室では、「xyzzy」をいうテキストエディタを使って[UTF-8]に変換しました。
問題: (ダウンロード)ダウンロードURLを固定にしたい(2011.07.04)
解答:
Wordpress Download Monitorというプラグインについての話です。 通常は、donwload.php?id=3 などになりますが、これをファイル名やタイトル名に変更することが 可能です。 /download/ファイル名 /download/タイトル名 等です。 個人的には、ファイル名に日本語を入れるとURLが長くなるので、 1. ファイル名が重ならないようにルールを設ける 2. ファイル名はASCIIコード(主に英数字、ハイフンやアンダーライン等)を使う 3. /download/ファイル名 にする このためには、パーマネント設定がデフォルト以外であることが必須となります。 このためには、左サイドメニューの「ダウンロード」→「設定」→「カスタムダウンロードURL」にある ダウンロードURLについて、download/「ファイル名」とし保存。 左サイドメニューの「設定」→「パーマネント設定」で「変更を保存」する。 このあたりはダウンロードプラグインのカスタムURLを有効にすると、その後の作業については 説明が出てきますので指示に従えばよいと思います。 ただしショートコードはID指定です。ID変更はMySQLデータベースの方をいじることで可能です。
問題: (トラブル)Wordpress 3.0.1以降で「設定」にアクセスできなくなった(2011.07.12)
解答:
問題点 Redhat Linuxでyum管理していると、timezone関連の関数が使えない問題に起因しています。 PHP5.3以降で問題が発生しており、timezone_identifiers_list()を呼び出すと、 Segmentation faultsがでます。 対策 1. timezonedbの更新 pect upgrade timezonedb とコマンドラインでアップデート 2. timezonedbをphpのextensionとして読み込む /etc/php.d/timezone.ini を作成し extension=timezonedb.so とする。 php -r 'timezone_identifiers_list();' というコマンドラインでエラーが発生しないことを確認した上で、 Apacheを再起動すれば、timezonedbがTimezoneで使われ、本問題が回避できるようです
問題: (トラブル)Contact Form 7で添付ファイルがアップロードできない(2011.08.01)
解答:
デフォルトでアップロード可能な拡張子あh jpg、jpeg、png、gif、pdf、doc、docx、ppt、pptx、odt、avi、ogg、m4a、 mov、mp3、mp4、mpg、wav, wmv となります。 したがって、それ以外の場合には、filetypes:scn 等自分で指定しなくてはなりません。
問題: (トラブル)Internet ExplorerでWordpressサイトを見ると待機中で表示できない(2011.08.02)
解答:
Javascript関連の可能性が高いですが、現状では
- Internet Explorer ダウンロードサイトよりInternet Explorer 9をダウンロード&アップグレードすること。
が根本的な解決方法のようです
問題: (時間)ダウンロードモニタのログ時間がおかしい(2011.08.03)
解答:
プラグイン側でタイムゾーン変換処理がなされていない場合「+9時間」してみてください。
問題: (トラブル)Wordpressに移転したときに、以前のサイトのURLからの転送ができない(2011/08/04)
解答:
というのは、Wordpressは内部でrewriteルールを.htaccessに書き出しているためです。
たとえば、index_ja.html を index.phpに、index_en.htmlを/en/にそれぞれ変更する場合には、プラグイン等によってカスタムする必要があります。
これを解決するためには、Redirectプラグインが有用です。その設定事例を下記に書いておきます。
ケース1)/index_en.htmlを/en/に転送したい
- ソースURL: /index_en.html | 転送先: /en/
このケースは簡単でした。次は正規表現を使った事例を紹介します。
ケース2)index_en.html を発見したら en/ に転送したい(下位ディレクトリも適応)
- ソースURL: ^(.*)/index_en.html$ | 転送先: $1/en/(正規表現のチェックを入れる)
です。(.*)が正規表現の任意設定で、そこでヒットした物が$1に入るという感じです。^は先頭の意味で$は末尾を意味します。
つまりこのケースにおいては、URLの末尾が「/index_en.html」で終わるものについては、「/en/」に置換するということなのです。
問題: (トラブル)Contact Form 7でラジオボタン項目を選択しなくても送信できてしまう (2011-08-10)
解答:
しかし、実際にはContact Form 7で入力必須項目としては扱われず、一つも選択していなくてもエラーチェックはされずに、そのまま送信されてしまいます。必ず、選択してもらいたいときにこれでは困ります。
そこで、ラジオボタンを使わずに、チェックボックスを使うことをおすすめします。
チェックボックスでは、複数選択されてしまうのではないかと思われるかもしれませんが、”チェックボックスを排他化”しておけば、常に0または1個だけがチェックされた状態にすることができます。
Contact Form 7の「タグの作成」でチェックボックスを選ぶと、”チェックボックスを排他化しますか?”という項目があります。これを選んでください。
そうすると、"exclusive"という項目が追加されます。この"exclusive"があると、複数選択されることを避けることができます。
ただし、この機能はJavaScriptを使用しているため、 JavaScriptが使えない状態では機能しないことにご注意ください。
問題: (改変)Contact Form 7で他のプラグインの「ショートコード」を使いたい(2011.08.19)
解答:
すぐに実装したければ下記のように、1行コードを追加するだけです(ただしプラグイン更新毎に新たに追加しなければなりません)。
プラグインのContact Form 7の「編集」を押し、「contact-form-7/includes/shortcodes.php」を開きます。
下記の場所を探し、// *** Added **** の一行を追加します。
function do_shortcode( $content, $exec = true ) {
$this->exec = (bool) $exec;
$this->scanned_tags = array();
$content = do_shortcode($content); // *** Added **
if ( empty( $this->shortcode_tags ) || ! is_array( $this->shortcode_tags ) )
同じコードを下記のcontact form 7用フォーラムに投稿しておきました。
さらに要望をフォーラムの方にアップしておきました。
問題: (トラブル)Contact Form 7で送信ボタンを押しても送信できない
解答:
で筆者が投稿したフィックスをすれば暫定回避できますが、MEE Newsプラグインの更新毎に設定する必要があります。
より詳しく説明すると、下記のようになります。
プラグインの「init_meenews.php」内を下記のように編集します。
// これを追加
if ( !isset($_POST['_wpcf7']) || $_POST['_wpcf7'] == ""){
// Mee News Process
foreach(....){
}
} // これを追加
問題: (プラグイン)WPMLでの言語スイッチの言語の部分をそれぞれの母国語に変更したい(2012.04.16)
解答:
下記で実現できます。
- ログイン
- WPMLサイドメニューの言語
- 「言語スイッチャーに含むもの」
表示言語の言語名(現在表示されている言語名) → 母国語名(言語名)
問題: (プラグイン)WPMLを利用したサイドメニュー表示で、他の言語が表示される(2012.04.19)
解答:
これは下記で直るはずです。
- ログイン
- サイドメニューの「外観」→「メニュー」を選択
- メニューの選択言語について、問題の言語をクリック
- 問題となっているメニュー項目を選択
- 「言語が意図した言語になっているか」「右記の翻訳」に正しい翻訳先が指定されているかを確認してください。このいずれかが間違っている場合に本件が起こります
- 修正したら「メニューを保存」をクリックして更新してください
問題: (プラグイン)WP Table Reloadedで生成されるtableのidにつくナンバリングの意味は?(2012.05.11)
解答:
- no-1: 編集権限を持たない場合
- no-2: 編集権限を持つユーザでログインした場合
であることが分かった。
classは同じなので、編集者と閲覧者で見せ方を変えたい場合にはidを、共通ならclassを使えということだろう。
問題: (プラグイン)Wordpress HTTPSは、パスワード付きページでうまく動作しない(2012.05.15)
解答:
絶対パスと相対パスの変換のタイミングと、http→httpsのタイミングの問題だと思いますが、修正方法は見つかっていません。
本問題は、Wordprss HTTPSのフォーラムの方でディスカッションを始めました。
問題: (プラグイン)Contact Form 7でメールアドレス確認機能が使いたい(2012.05.30)
解答:
- 情報参照元:こぶたのラッパさん
を参考に、日英両対応機能を追加。
add_filter( 'wpcf7_validate_email', 'wpcf7_text_validation_filter_extend', 11, 2 );
add_filter( 'wpcf7_validate_email*', 'wpcf7_text_validation_filter_extend', 11, 2 );
function wpcf7_text_validation_filter_extend( $result, $tag ) {
$k_lang = "";
if(defined("WPLANG")) $k_lang = WPLANG;
if(defined("ICL_LANGUAGE_CODE")) $k_lang = ICL_LANGUAGE_CODE;
if($k_lang == 'ja')
$k_error = '確認用のメールアドレスが一致していません';
else
$k_error = 'Not match e-mail address for confirmation.';
$type = $tag['type'];
$name = $tag['name'];
$_POST[$name] = trim( strtr( (string) $_POST[$name], "n", " " ) );
if ( 'email' == $type || 'email*' == $type ) {
if (preg_match('/(.*)_confirm$/', $name, $matches)){
$target_name = $matches[1];
if ($_POST[$name] != $_POST[$target_name]) {
$result['valid'] = false;
$result['reason'][$name] = $k_error;
}
}
}
return $result;
}
問題: (システム)パスワードロックページでSSLを利用する方法(2012.06.05, 2012.06.26)
解答:
本フィルタをテーマのカスタム関数に入れている場合には、解除してください。パスワードに関する処理が変更されていて動かなくなります。フィルタをオフにすることで動作するようになります。
- 関連情報: Cannot work under Password Lock page in "Wordpress HTTPS" forum.
まず最初に、サイトでSSL(https)が利用できることが前提となります。これが出来ているものとして進みます。
Wordpressの標準機能として搭載されているページのパスワード保護については、「サイトURL」が参照されるために、これが変更されると動作しない問題があります。
たとえば、「Wordpress HTTPS」プラグインを導入し、「Secure post」で強制的にページをSSL(https)へ遷移させるケースを例にとって、どこが問題か説明してみましょう。まずこのプラグインが活用されるのは「お問い合わせフォーム」や「ウェブ申し込み」等、個人情報を安全に行うためだと思います。しかしながら、中にはさらにパスワードロックしたいケース(IPアドレス制限せずに、検索エンジンにひっかかって欲しくない、特定メンバーのみできるようにしたい等)があるでしょう。そのようなケースに使えると思います。
- 「Wordpress HTTPS」を導入することで記事や固定ページに表示される「Secure post」をチェックすると、そのサイトは「http://」から強制的に「https://」に遷移させることができます。
- しかし、パスワード入力フォームは「http://」のまま変更されません(Wordpress HTTPSは、ブラウザのアドレスバーの部分のみ変更し、コンテンツの変更を行わないため
- 従って、適切なパスワードを入力したとしても、本来コンテンツのある「https://」にアクセスする必要があるのに、「http://」の方をアクセスしようとして、エラーが起こり何も表示されない状況になります。
さらに具体的に「http://sample.com/test」にパスワードロックページをかけ、Wordpress HTTPSプラグインによって、https://へのアクセスを強要する設定にしたとすると、
- http://sample.com/test へアクセス
- 自動的に https://sample.com/test へ飛ぶ
- パスワードロックされているので、パスワード入力画面が表示される。
- パスワードをいれ、「送信」ボタンを押す。
- パスワードを処理するために、http://*******/wp-pass.phpにアクセスし、適切なパスワードなら本来のコンテンツページへ遷移するが、http://sample.com/test にページがないのでエラーとなる(https://sample.com/test にアクセスしてくれないと駄目)
以上の結果から、パスワードロック解除ページ(Wordpressの標準機能)自体を、SSL対応にしなければならないことがわかった。調査の結果、「wp-includes/post-templete.php」内のmy_password_form() 関数を上書きすれば実現できることが分かった.
具体的には、テーマのための関数(function.php)に、下記のコードを追加することで実現できる。
/** Overwrite the password lock form in wp-includes/post-templete.php
*
* @ Kimiya Kitani (kitani@cseas.kyoto-u.ac.jp) June 5, 2012
*
* By adding the function, you can use the secure password lock page with "Wordpress HTTPS" plug-in.
*/
function my_password_form() {
global $post;
$label = 'pwbox-'.(empty($post->ID) ? rand() : $post->ID);
// If the page is equipped with SSL (https), the action url of the password lock form changes to https link.
if(function_exists('is_ssl') && is_ssl())
$site_url = get_site_url(null, '', 'https');
else
$site_url = get_site_url(null, '', 'http');
$output = '
' . __("This post is password protected. To view it please enter your password below:") . '
';
return $output;
}
add_filter( 'the_password_form', 'my_password_form' );
問題: (プラグイン)Contact Form 7の日付入力にカレンダーを利用したい(2012.10.25)
解答:
理由は、jQueryを本プラグインより先に読み込まないといけないためです。
問題: (プラグイン)PHP5.4にアップグレードしたら、User Access Managerがエラーを出してサイトが止まった(2013.06.04)
解答:
class/UamUserGroup.class.phpにある二つの「&$this」を「$this」に変更するといける。
情報源:User Access Manager [resolved] Error on PHP 5.4.0 (WordPress Forum)
問題: (メディア)アップロードフォルダが写真の日付に沿っていない(2013.06.05)
解答:
結論は、固定ページや投稿ページから追加した場合、固定ページや投稿ページの「作成日時」が参照されてしまうため。upload/ページ作成年/ページ作成月 になってしまうということ。
© Kimiya Kitani