昨日の日記が分かり辛いという意見をいただきましたので、詳細を書くことにしました。
まず、うちのサイトは以下の二つのサイトを参照してコメント欄を作成しておりました。
- コメント欄を表示するcomments.phpを作る [WordPressテーマ作成の手順16] (*Web Design 覚え書き*)
- WordPress:コメントフォームをカスタマイズする方法 (NxWorld)
その結果、しばらく「comment.php」に適用していたソースコードがこちら。※ 一部抜粋
comment.php
<?php $args = array(
'comment_notes_after' => '<p class="commentNotesAfter">内容をご確認の上、送信してください。</p>',
'fields' => array(
'author' => '<p class="comment-form-author">' .
'<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '"size="25"' . $aria_req . ' placeholder="お名前" /></p>', 'email' => '<p class="comment-form-email">' . '<input id="email" name="email" ' . ( $html5 ? 'type="email"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_email'] ) . '"size="25"' . $aria_req . 'placeholder="メールアドレス" /></p>',
'url' => '',
),
'comment_field' => '<p class="comment-form-comment"><textarea id="comment" name="comment" size="30" placeholder="*コメント" aria-required="true"></textarea></p>',
);
comment_form( $args ); ?>
そして、いろいろと使用例を載せているサイトやWordPressの公式サイトを調べて直したつもりだったソースがこちら。
comment.php
<?php $args = array(
'comment_notes_after' => '<p class="commentNotesAfter">内容をご確認の上、送信してください。</p>',
'fields' => array(
'author' => '<p class="comment-form-author">' .
'<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '"style="width: 100%;"' . $aria_req . ' placeholder="お名前" /></p>', 'email' => '<p class="comment-form-email">' . '<input id="email" name="email" ' . ( $html5 ? 'type="email"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_email'] ) . '"style="width: 100%;"' . $aria_req . 'placeholder="メールアドレス" /></p>',
'url' => '',
),
'comment_field' => '<p class="comment-form-comment"><textarea id="comment" name="comment" style="width=100%;height:90px;" placeholder="*コメント" aria-required="true"></textarea></p>',
);
comment_form( $args ); ?>
ちょっと分かり辛いかもしれませんが、三つ目の太字に注目です。
style="width=100%;height:90px;"
「width=」って何なんだー!? 「width:」やがなっ!!
というわけで、単なるポカミスであったことが判明いたしました。
気が付かないものですねぇ。
確かにphpをいじるときはシンプルなテキストエディタを使っていたので、ガイドも警告も出ないから間違える可能性はありましたが……。
phpもちゃんとしたエディタ使って書くことにします。って言っても、どれがいいのかな;;
えー、一応、完成版のソースを以下に載せておきます。
comment.php
<?php $args = array(
'comment_notes_after' => '<p class="commentNotesAfter">内容をご確認の上、送信してください。</p>',
'fields' => array(
'author' => '<p class="comment-form-author">' .
'<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '"style="width: 100%;"' . $aria_req . ' placeholder="お名前" /></p>', 'email' => '<p class="comment-form-email">' . '<input id="email" name="email" ' . ( $html5 ? 'type="email"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_email'] ) . '"style="width: 100%;"' . $aria_req . 'placeholder="メールアドレス" /></p>',
'url' => '',
),
'comment_field' => '<p class="comment-form-comment"><textarea id="comment" name="comment" style="width:100%;height:90px;" placeholder="*コメント" aria-required="true"></textarea></p>',
);
comment_form( $args ); ?>