Есть ли блок-схема последовательности загрузки WordPress?

3 нояб. 2012 г., 12:26:48
Просмотры: 51.3K
Голосов: 72

Итак, WordPress должен загружать серию файлов, начиная с

index.php -> ... -> wp-header.php -> ... -> functions.php

...и так далее в процессе выполнения.

Также должна существовать подобная блок-схема для вызовов функций, условных операторов и тому подобного во время выполнения. Существует ли где-нибудь такая блок-схема (или схемы)?

0
Все ответы на вопрос 5
1
116

Вот довольно подробное объяснение, которое можно найти по ссылкам:

Часть 1

http://theme.fm/2011/09/wordpress-internals-how-wordpress-boots-up-2315/

Часть 2

http://theme.fm/2011/09/wordpress-internals-how-wordpress-boots-up-part-2-2437/

Там также есть диаграммы/схемы процесса.

Схема загрузки WordPress, часть 1

и...

Схема загрузки WordPress, часть 2

Это только начало понимания процесса инициализации WordPress, который также включает информацию об иерархии шаблонов, а также о том, какие хуки срабатывают на каких страницах и когда. Вместе это даёт глубокое понимание происходящего и мест, где это происходит!


Или вот эта схема от Rarst, которую можно увидеть в этом вопросе

Схема загрузки WordPress от Rarst


Создавайте свои собственные трассировки...

Пример трассировки вызовов

Как...?

  1. http://www.php.net/manual/en/function.debug-backtrace.php
  2. http://queryposts.com/function/wp_debug_backtrace_summary/

...в их самой базовой форме.

Ещё...

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


Ещё больше...

Хотите увидеть, какие действия запускаются во время запроса? Взгляните на этот плагин от Toscho,

Плагин для отслеживания действий

Хотите увидеть, какие хуки где и с каким приоритетом подключены? Взгляните на этот плагин от Rarst,

Плагин для анализа хуков

Очень полезно, когда нужно узнать, где находятся внутренние и пользовательские хуки в цепочке приоритетов.

А ещё есть этот плагин от Kaiser,

Только один скриншот из нескольких, остальные можно найти в репозитории на GitHub

Плагин для отладки WordPress


Также есть эта схема, объясняющая процесс запроса и что использовать в каких случаях, что дополнит этот вопрос,

Исходный вопрос и ответ здесь, схема от Rarst.

За эту схему и Q&A я могу поручиться.

Схема запросов WordPress

(нажатие на изображение приведёт вас непосредственно к обсуждению этого вопроса для получения дополнительной информации).


ПРИМЕЧАНИЕ

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

Это не ЕДИНСТВЕННЫЕ доступные инструменты и не единственные способы получения ценных данных во время процессов инициализации/запросов, но это выборка того, что я использую. Не стесняйтесь добавлять больше!

ИЕРАРХИЯ ШАБЛОНОВ

Вы также можете взаимодействовать с этой диаграммой. Нажатие на изображение приведёт вас непосредственно к Руководству по темам от WordPress для получения дополнительной информации.

Иерархия шаблонов WordPress

#changelog: 04/10/12 добавлена схема от Rarst / "Make sense of WP core load"
3 нояб. 2012 г. 13:17:25
Комментарии

Небольшая подсказка: многие из этих различных функций и плагинов являются возможностями плагина Debug Objects. Возможно, это поможет лучше понять, как работает WordPress.

bueltge bueltge
10 нояб. 2017 г. 10:14:10
0
14

Я всегда считал эту иерархию шаблонов довольно удобной:

Иерархия шаблонов WordPress

3 нояб. 2012 г. 19:16:24
1

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

3 нояб. 2012 г. 13:03:33
Комментарии

Ссылка не работает.

Hector Hector
16 дек. 2019 г. 11:27:07
1

эта статья от "Михая" тоже очень полезна, особенно диаграмма.

диаграмма сравнения производительности

18 мая 2020 г. 06:18:26
Комментарии

Указанная ссылка не работает. Сайт недоступен.

Rick Hellewell Rick Hellewell
31 янв. 2023 г. 20:36:52
1
-1

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

25 июл. 2013 г. 16:27:07
Комментарии

php-recognizer.ru больше не работает

mmm mmm
7 окт. 2016 г. 23:47:59