サポート » テーマ » 固定ページ編集で、コメントフォームを削除した際、–>が表示されてし

  • 解決済 Kengoro

    (@kengoro)


    twentytenをもとに子テーマを作成し、公開しました。

    その際、固定ページの設定については、one-column,no-sidebar(onecolumn-page.php)を選択。固定ページをnavbar-menuに表示するようにしました。

    併せて、サイドバーなしのワンカラム・レイアウトを選択した際、コメント欄をフォームごと削除するようにしました。具体的には、テンプレートファイルのコメントを挿入する個所のテンプレートタグ記述を割愛するように修正しました。

    この際、「コメント投稿用のフォーム」を表示させるためのテンプレートタグの記述部をHTMLのコメント表記(<!–・・・–>)でくくって、画面表示の際にコメントフォームが表示されないようにコードを部分修正しました。

    コメント部を削除する部分修正を行ったのは、loop.php, loop-page.phpの2つです。修正個所は以下の記述部です──
    <!– <?php comments_template( ”, true ); ?> –>

    ところが、更新・保存してサイトを表示させると、固定ページの本文末尾の左側に、
      –>
    が表示されてしまうのです。

    おそらく、コメントフォームを表示されないようにするために、HTMLのコメントタグ記述でくくった分が、正常にHTMLコメントとして機能せず、コメント指定タグの閉じタグだけが残って、画面に表示されてしまったのではないか?と見当をつけています。

    しかし、上記の2つのテンプレートファイルとは別に、設定した固定ページを通常に画面表示させ、そのページソース(HTML)を確認してみました。ソース表示では、「コメント投稿フォーム」を指定するタグの頭と末尾が以下のように記述されていました。

    <!–
    <div id=”comments”>
     (※以下、14行ほどコメント投稿フォーム部の記述)
    </div><!– #comments –>
    –>

    たぶん、上記の記述のうち、最後の–>が、頭の<!–と一対では認識されず、
    ブラウザで表示させた際に、固定ページの本文記事の末尾に残って打ち出されて
    しまったのではないかと推察されます。

    この「–>」を非表示にさせるためには、どのテンプレートのどこをどのように
    修正すればよいかをアドバイスしていただけると助かります。

    よろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター gatespace

    (@gatespace)

    こんばんは。
    とりあえず、<?php comments_template( '', true ); ?> の部分を
    丸ごとコメントアウトするなら、HTMLではなくPHPのコメントアウトをした方がよいです。
    http://php.net/manual/ja/language.basic-syntax.comments.php

    HTMLのコメントアウト<!-- -->はHTMLソース上にコメントアウトの中身も出力されてしまいますが、
    PHPのコメントアウトはブラウザに出力されないように処理されます。
    (という言い方はちょっと曖昧かもしれませんが・・・。)

    スレッド開始 Kengoro

    (@kengoro)

    #gatespaceさんへ

    最初に、「本当にどうもありがとうございました!」。

    ご指摘の形で修正したら、“一発”で直りました!!

    PHPマニュアルの該当個所を事例参照先としてご提示いただいたのも、
    大変参考になりました。

    要は、WordPressの使用ファイルはほとんどが「.php」拡張子のファイル
    で構成されている、という点が“すっぽりと”頭の中から抜け落ちていました。

    ※ちなみに、「.php」ファイルの中でphpコードで記述されている個所を
    コメントアウトの形で修正する際は、

    <?php ///// ?>

    の////部のように、<?php ?>のphpコードの中で使うことが大前提
    なのですね?!

    ◎複数行の場合の──/*・・・ */
    ▽1行だけの場合の──//・・・ & #・・・

    このどちらのケースでも、コメントアウトしたい個所は、
    <?php /*・・・ */ ?>と記述するか、
    <?php //・・・ ?> あるいは
    <?php #・・・ ?> と記さなければいけない、

    という点もすっかり抜け落ちていました。

    そのため、「#gatespaceさん」のご指摘をよく理解せず、
    第1回目の修正トライでは、

    /*<?php comments_template( ”, true ); ?>*/

    と記述の修正をしてしまいました。→ブラウザ表示させると、

    /*・・・*/も、
    <?php comments_template( ”, true ); ?>のコード部も、
    そのまま表示されてしまいました。

    そこで第2回目のトライ!
    <?php /*comments_template( ”, true );*/ ?>
    のように、<?php ?>の中で記述をして、ブラウザ表示させると、

    ちゃんと正常に表示され、“いまわしい”[–>]も消えていました!!

    3ヵ月近く呪詛のようにいまわしかった[–>]ですが、
    PHPの記述原則、WordPressの記述方式の基本中の基本を
    このエラーケースでしっかりと頭にたたき込むことが
    できました。

    追伸//
    「#gatespaceさん」は、当方の質問投稿にすぐさま回答を寄せて
    くれたのですね?本当に、ありがとうございました。
    自分で作業の跡付けと、画面操作で確認が取れるまでに時間を
    要したために、お礼の返信を差し上げるのが遅くなり、大変
    申し訳ありませんでした。
    ──PHPもWordPressも初心者なので、また質問投稿をする機会が
    ふえると予見されますが、いろいろとご教授ください。

    のどのつかえを下ろさせてくださった「#gatespaceさん」には、
    心から感謝です。ありがとうございました。

    これで万事、「解決」ということにさせていただきます。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「固定ページ編集で、コメントフォームを削除した際、–>が表示されてし」には新たに返信することはできません。