Поддержка Разное В чём смысл «постановки в очередь» CSS и JS ?

  • Не могу понять, в чём физический смысл
    «постановки в очередь» CSS и JS.

    Понятен смысл постановки в очередь запроса к операционной системе:
    все операции по манипуляции данными делаются с разрешения ОС,
    поэтому запросы выставляются в очередь. «Вас много, а я одна.»(с)

    Почему нельзя поставить напрямую <link> для CSS в <head>?
    Почему нельзя поставить <script> там, где нужно: в начале, середине
    или в конце? Что вообще происходит ?

    Спасибо за разъяснения.

    • Тема изменена 1 неделя, 3 дня назад пользователем Yui. Причина: в разное
Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Модератор Юрий

    (@yube)

    Не могу понять, в чём физический смысл
    «постановки в очередь» CSS и JS.

    Смысл в правильном порядке подключения с учетом зависимостей. И в возможности переопределить/убрать стиль/скрипт по хендлеру.

    Почему нельзя поставить напрямую <link> для CSS в <head>?

    Можно. Но придется вручную подключать в правильном порядке. И если с темой это в принципе реализуемо, то плагинам будет трудно объяснить, что, скажем, jquery уже подключили и не стоит это делать еще раз.

    Юрий:

    И если с темой это в принципе реализуемо, то плагинам будет трудно объяснить, что, скажем, jquery уже подключили и не стоит это делать еще раз.

    То есть, если в процессе генерации страницы программа
    AA «поставит в очередь» myCSS.css, а потом программа
    BB попытается тоже «поставит в очередь» myCSS.css, то WordPress
    без скандала эту попытку проигнорирует, так как он уже в курсе
    дела, что странице нужен этот myCSS.css.
    А раскрутку «очереди» осуществляют wp_head() и wp_footer().

    В общем понятно.

    Модератор Юрий

    (@yube)

    AA «поставит в очередь» myCSS.css, а потом программа
    BB попытается тоже «поставит в очередь» myCSS.css, то WordPress
    без скандала эту попытку проигнорирует, так как он уже в курсе
    дела, что странице нужен этот myCSS.css.

    Не совсем.
    1. Это работает не по имени файла, а по хендлеру.
    2. При совпадении хендлеров будет использовать тот файл, который будет добавлен последним. (т.е. ВВ перебьет АА)
    Это удобный механизм для подмены того, что загружено раньше. Например, css, подключенный плагином, можно подменить своим, если сделать wp_enqueue_style после того, как это сделает плагин. Большое количество хуков и возможность установить приоритет позволяют в большинстве случаев добиться желаемого, не вмешиваясь в чужой код.

Просмотр 3 ответов — с 1 по 3 (всего 3)