Комментирование контента - HTML и PHP

В настоящее время я настраиваю тему BigCommerce для своего работодателя. Они попросили меня удалить и изменить несколько элементов CSS / HTML, чтобы они соответствовали стилю и функциональности, которые им нужны.

Вместо того, чтобы просто УДАЛИТЬ функциональность в теме, я надеялся просто закомментировать ее на тот случай, если она понадобится позже. Но у меня проблема с форматированием.

Ниже приведен код, отображаемый в файле панели ProductDetails.html:

    <div class="Content" id="prodAccordion">
        %%Panel.ProductTabs%%
        %%Panel.ProductDescription%%
        %%Panel.ProductVideos%%
        %%Panel.ProductWarranty%%
        %%Panel.ProductOtherDetails%%
        %%Panel.SimilarProductsByTag%%
        %%Panel.ProductReviews%%
        %%Panel.ProductByCategory%%
        %%Panel.SimilarProductsByCustomerViews%%
    </div>

Я пытаюсь закомментировать только последние 3 строки.

Однако, когда я это делаю, в браузере появляется конец комментария (->). Я правильно закрыл комментарии, но должна быть какая-то простая концепция, которую мне не хватает. Надеюсь, что хорошие люди в SO могут помочь.

Ниже приведен код, который я сохранил, и снимок экрана, отображаемый в моем браузере. Первый снимок экрана - это то, как он выглядит до того, как я добавлю какие-либо комментарии, а второй - после того, как я добавлю их. Вы можете ясно видеть заключительный комментарий на втором изображении, может кто-нибудь сказать мне, почему??

Заранее благодарю за любую помощь.

    <div class="Content" id="prodAccordion">
        %%Panel.ProductTabs%%
        %%Panel.ProductDescription%%
        %%Panel.ProductVideos%%
        %%Panel.ProductWarranty%%
        %%Panel.ProductOtherDetails%%
        %%Panel.SimilarProductsByTag%%
        <!--%%Panel.ProductReviews%%-->
        <!--%%Panel.ProductByCategory%%-->
        <!--%%Panel.SimilarProductsByCustomerViews%%-->
    </div>

До

После

1 ответ

Решение

Николь, я имел дело с этим и могу точно объяснить, почему это происходит и как этого избежать.

Почему это происходит

Это происходит потому, что именно так серверный PHP-процессор BigCommerce анализирует код, который вы просматриваете. Код является базовым HTML, в то время как %%Panel.something%% - это просто способы, которые процессор BigCommerce может распознать как команду для BigCommerce.
Каждый раз, когда сайт BC видит %%Panel.Name%%, он знает, что это не HTML, а место, где процессор на стороне сервера BC должен вставить файл Panel перед передачей этого HTML-кода пользователю.

Как избежать этого и правильно закомментировать

Просто удалите символы% и используйте регулярные комментарии. Это будет работать:

 <!-- Panel.ProductReviews-->

Так будет ли это:

 <!--%%Panel.ProductReviews-->

И это:

  <!-- Panel.ProductReviews%%-->

Или даже это:

  <!-- %Panel.ProductReviews% -->

В основном, вы должны убедиться, что каждая сторона Panel.Name ссылка, не имеет 2 % символов на каждой стороне.

Восстановить правильно закомментированный код / ​​панель

Просто восстановить 2 % символы на каждой стороне, как это так (пробелы между - а также % не имеет значения, вы можете иметь ни одного или 10)

  <!-- %%Panel.ProductReviews%% -->

Почему ты видишь --> На сайте в реальном времени

Как сказано / объяснено в комментариях к вашему вопросу, вы видите --> когда комментируешь панель вроде <!--%%Panel.Name%%--> потому что, комментируя Группу таким образом, не удаляя хотя бы один из % символами, вы все еще говорите BigCommerce загрузить HTML-файл Panel, но поместить его в

<!-- [HTML code from panel goes here] -->

Проблема в том, что некоторые из этих файлов Panel содержат комментарии сами. Например, допустим, вы комментируете %%Panel.Header%% вот так !<--%%Panel.Header%%-->, Панель Header.html может иметь такой код:

<!-- this is the header code panel-->
<div class"MainHeader">
     <ul class="TopNav">
         ...
     </ul>
</div>

Закомментировав код без удаления % символы, BigCommerce загрузит это:

<!--
<!-- this is the header code panel-->
<div class"MainHeader">
     <ul class="TopNav">
         ...
     </ul>
</div>
-->

когда пользователь откроет страницу, которая использует панель Header.html, он увидит этот код как закомментированный <!--<!-- this is the header code panel--> потому что браузер запустит комментарий при первом <!-- и закончить комментарий при первом появлении -->,

В браузере пользователь увидит незакомментированные остатки:

<div class"MainHeader">
     <ul class="TopNav">
         ...
     </ul>
</div>
-->

И, следовательно, вы увидите некоторый дополнительный, возможно, неработающий HTML, а также --> где-то в конце неправильно прокомментированного кода.

Опять же, чтобы избежать всего этого, просто удалите один из % используйте символы регулярного комментирования, чтобы закомментировать ссылку на файл Panel.

Дайте мне знать, если это поможет, и если у вас есть другие вопросы.

Другие вопросы по тегам