Intereting Posts
Перевод виджета на моем плагине Не удается установить WordPress (локальный) Не удалось открыть файл wp-includes / wp-db.php Создать запись, используя Ajax Любой способ разделить wp_options? Отключить плагин для определенной группы пользователей Страница автора Создать ссылку на страницу, которая отображает все сообщения автора? Изменение имени вставки WP в postid во время загрузки только для типа сообщения удалять только сообщение в запросе / для каждого утверждения (передняя часть) Почему на статических страницах моей темы отображаются эти данные? Как изменить количество сообщений, отображаемых на главной странице, и на другие страницы? Моя пользовательская страница настроек администратора не использует пользовательские CSS и JS даже после успешной регистрации и регистрации скриптов Как изменить заголовок Open Graph для публикации мета? Как настроить эту тему? Запрос на получение данных сообщения, если в категории? Попытка получить свойство не-объекта в shortocde

Отступы (tabbing) WP_head

В настоящий момент все содержимое, которое входит в wp_head, остается полностью оправданным в представлении кода.

В то время как весь мой другой код, который находится вокруг wp_head, имеет отступы (с вкладками) два раза. Можно ли добавить отступ / вкладки ко всей информации wp_head?

благодаря

Solutions Collecting From Web of "Отступы (tabbing) WP_head"

Технически возможно, но, вероятно, не стоит усилий (и накладных расходов). Если вы проверите источник с помощью чего-то вроде инструментов разработчика в Chrome, ваш HTML будет автоматически отступать. Фактически, некоторые кеширующие плагины (например, W3 Total Cache) даже удаляют все пробелы, чтобы улучшить время загрузки страницы.

Тем не менее, если вы хотите, чтобы ваше содержимое wp_head отступом, вам нужно будет сделать следующее:

  1. Добавьте функцию get_header которая выполняет последний. Эта функция получает все функции, привязанные к wp_head (используя $wp_filter['wp_head'] ), удаляет их и привязывает их к собственному пользовательскому действию (например, my_wp_head ).
  2. Например, пользовательская функция ( my_wp_head() for example ) должна быть присоединена к wp_head
  3. В функции my_wp_head() вы хотели бы
    1. Создайте массив шаблонов regex match / replace ( $patterns = array("pattern"=>"replace pattern"); ). Этот шаблон должен обрезать пробелы и снова добавлять вкладки в начало каждой строки.
    2. Вызов ob_start() для вывода вывода
    3. Обработайте предыдущие функции wp_head , вызвав do_action('my_wp_head')
    4. Вывод процесса с вызовом echo preg_replace( array_keys($patterns), array_values($patterns), ob_get_clean() );

Лучше всего избегать отступов, которые уже отступы, которые, по-видимому, кажутся

 function indented_wp_head(){ ob_start(); wp_head(); $header = ob_get_contents(); ob_end_clean(); echo preg_replace("/\n</", "\n\t<", substr($header, 0, -1)); echo "\n"; } 

Вы можете решить эту проблему, создав пользовательскую функцию внутри функции functions.php:

 function indented_wp_head(){ ob_start(); wp_head(); $header = ob_get_contents(); ob_end_clean(); echo preg_replace("/\n/", "\n\t", substr($header, 0, -1)); echo "\n"; } 

Теперь вам просто нужно вызвать эту функцию в «header.php»:

 <head> <!-- ... --> <?php indented_wp_head() ?> </head> 

Если вы также хотите использовать его для wp_footer() , вы можете создать эту функцию для общего использования в «functions.php»:

 /** * Indents the output of * a function * * @return void */ if (! function_exists("print_indented")) { function print_indented($fn) { ob_start(); call_user_func($fn); $html = ob_get_contents(); ob_end_clean(); echo preg_replace("/\n/", "\n\t", substr($html, 0, - 1)); echo "\n"; } } 

И назовите его в «header.php» или «footer.php», как

 <?php print_indented("wp_footer") ?> <?php print_indented("wp_head") ?> 

Используйте http://wordpress.org/plugins/wp-minify/ . Он будет слить css, js & html + удалить бесполезные комментарии. Скорость вашей страницы будет улучшена, и весь HTML-код в источнике будет уплотнен.

Проблема решена, я думаю!

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

 function add_indented($fn, $num_tabs=1, $params=null){ ob_start(); call_user_func($fn, $params); $html = ob_get_contents(); ob_end_clean(); $tabs=""; for ($i=0 ; $i<$num_tabs ; $i++) $tabs.="\t"; echo preg_replace("/\n/", "\n" . $tabs, substr($html, 0, - 1)); echo "\n"; } 

До

 <?php wp_head(); ?> <?php wp_footer(); ?> <?php get_template_part('template-parts/content','home'); ?> 

После:

 <?php print_indented("wp_head"); ?> <?php print_indented("wp_footer"); ?> <!-- Add 4 tabs --> <?php print_indented('get_template_part', 4,'template-parts/content', 'home'); ?>