Можно ли заменить php-код на html?


Мой вопрос: нормально ли или даже предпочтительнее использовать html вместо php, когда это возможно?

Почему я спрашиваю: Wordpress, похоже, использует php даже для простых задач, где старый добрый html справился бы с этой задачей. Php-код не славится своей простотой или удобочитаемостью. Кроме того, я предполагаю, что все ненужные запросы к базе данных делают обслуживание веб-страниц немного медленнее. Поэтому мне интересно, есть ли веская причина, которую я не могу придумать, по которой WP предпочитает использовать php вместо html. Пример:

<div class="site-info">
<?php do_action( 'twentyfourteen_credits' ); ?>
  <a href="<?php echo esc_url( __( 'http://wordpress.org/', 'twentyfourteen' ) ); ?>"><?php printf( __( 'Proudly powered by %s', 'twentyfourteen' ), 'WordPress' ); ?></a>.
 Copyright ©<?php echo date( 'Y' ); ?>
</div>

Вместо

<div class="site-info">
 <a href="http://wordpress.org">Proudly powered by WordPress</a>.
 Copyright ©2015
</div>

(Я понимаю, что в приведенном выше примере я должен менять номер года один раз в год, и текст не может быть переведен, но это приемлемый компромисс для более приятного и быстрого кода)

 2
Author: IXN, 2015-09-07

4 answers

Довольно странно, что основные разработчики решили сделать URL-адрес переводимым, на самом деле здесь речь идет о том, чтобы что-то переусердствовать. Но в любом случае, давайте перейдем к главному вопросу

PHP против HTML

Хотя есть много причин, по которым я могу придумать, почему кто-то предпочел бы PHP над HTML, и это касается и основных разработчиков, основная причина заключается в одной большой разнице между этими двумя разными языками

  • PHP - динамический язык, а HTML - статический язык

Это означает, что код, написанный на PHP, будет обновляться в соответствии с условиями, установленными для этой конкретной операции, он не требует вмешательства человека, в то время как все, написанное в HTML, останется неизменным, пока кто-нибудь вручную не обновит код, чтобы отразить изменения, поэтому он требует вмешательства человека. Отсутствие необходимости вручную обновлять одну строку кода или тысячу строк кода, когда требуются изменения, является одной из основных причин, по которой PHP используется и предпочтительнее, чем язык, подобный HTML

Я действительно думаю, что ваша главная проблема заключается в том, что вы все еще очень новичок в PHP и на самом деле не понимаете язык как таковой, что на самом деле является отличной возможностью углубиться в PHP и изучить основы, чтобы начать работать

Что касается вашего точного вопроса, нет ничего плохого в замене PHP на HTML, но вы потеряете динамический аспект PHP

 2
Author: Pieter Goosen, 2015-09-08 06:08:33

Ключевое различие заключается в том, что вы смотрите на общедоступную тему. Он предназначен для использования многими сайтами и должен быть максимально удобным.

Это может быть ваш личный выбор редактировать год в каждом нижнем колонтитуле каждого сайта, которым вы владеете, но для кого-то другого это будет выглядеть как трата (дорогостоящих) человеческих ресурсов на то, что PHP может сделать без усилий и по существу бесплатно. Если вы профилируете производительность звонка с одной датой, его влияние будет невероятно незначительный по ресурсам.

Та же история с просто "текст не может быть переведен" обратная сторона. Это было бы невероятно неподходящим для людей, которые действительно нуждаются в переводе и дорого обходятся, чтобы сделать переводимым. Если я правильно помню, количество неанглоязычных установок WP по всему миру в настоящее время составляет большинство из них.

 2
Author: Rarst, 2015-09-08 09:08:00

Да, вы можете использовать HTML-теги вместо PHP-кода для печати статического содержимого. Так что это возможно. Например, у вас может быть веб-сайт со статическим контентом, за исключением статей, комментариев и страницы архива; в этом случае у вас будет заголовок, меню, боковые панели, виджеты, нижний колонтитул и даже короткие коды, используемые в статье в качестве статического контента.

Файлы будут .php в любом случае, потому что все темы WordPress имеют структуру PHP, поэтому эти файлы должны быть интерпретируется сервером для работы. Содержимое верхнего колонтитула интерпретируется из файла header.php, содержимое нижнего колонтитула интерпретируется из footer.php и так далее. Вы не можете изменить расширение файлов.

Тогда, если вы хотите использовать HTML-теги вместо PHP-кода, чтобы код был "быстрее", ответ - да: сократив количество вызовов базы данных, вы сможете увеличить скорость работы WordPress. Конечно.

Кстати, код не будет "приятнее". PHP трудно читать, если вы не знаете PHP. (Более того, HTML - это не язык программирования, а язык разметки. У каждого из них есть своя функциональность).

PD: Существуют более эффективные и предпочтительные способы увеличения скорости WordPress. Это последний метод, который я бы использовал.

 1
Author: Gerard, 2015-09-08 10:23:51

Хорошо.. быстрее использовать строгий html, потому что серверу требуется некоторое время для создания функций/действий/кода php.. но он менее гибок для отображения текста html, чем php..

Например, date( 'Y' ) требуется всего 2,5033950805664E-5 секунд, чтобы отобразить текущую дату, другие одиночные функции, а не функции БД, должны занять примерно столько же времени, чтобы завершить их.

Подумайте о том, чтобы лучше использовать какой-нибудь плагин для кэширования вместо удаления php-кода.

ПРИМЕЧАНИЕ: вы не можете использовать html вместо php - это 2 разных языка, и они используются для разных задач.

 -1
Author: Maikal, 2015-09-07 23:22:09