Skip to content

Query Monitor incompatibility with {% do action('get_header') %} #171

@jasalt

Description

@jasalt

I haven't kept up with the changelogs lately but it seems that something has changed related to action hooks.

With freshly initialized WP 6.8.3 and timber-starter-theme using Timber v2.3.3 from Composer and getting uncaught exception after activating the theme:

Uncaught Exception: An exception has been thrown during the rendering of a template ("Too few arguments to function QM_Collector_Theme::action_get_position(), 0 passed in /srv/www/my-site/public_html/wp-includes/class-wp-hook.php on line 324 and exactly 1 expected") in "partials/head.twig" at line 6.
in /srv/www/my-site/public_html/wp-content/themes/ss-wordpress-theme/views/partials/head.twig on line 6

Call stack:

    Twig\Template::yield()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Environment.php(420) : eval()'d code:120
    __TwigTemplate_8c95d62f6d587ee6f85edf46be960e9d::block_head()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:446
    Twig\Template::yieldBlock()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Environment.php(420) : eval()'d code:53
    __TwigTemplate_8c95d62f6d587ee6f85edf46be960e9d::doDisplay()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:402
    Twig\Template::yield()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Environment.php(420) : eval()'d code:47
    __TwigTemplate_6bd28b246e39b61335c8a139458fdca3::doDisplay()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:402
    Twig\Template::yield()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:358
    Twig\Template::display()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:373
    Twig\Template::render()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/TemplateWrapper.php:51
    Twig\TemplateWrapper::render()
    wp-content/themes/ss-wordpress-theme/vendor/timber/timber/src/Loader.php:178
    Timber\Loader::render()
    wp-content/themes/ss-wordpress-theme/vendor/timber/timber/src/Timber.php:1474
    Timber\Timber::compile()
    wp-content/themes/ss-wordpress-theme/vendor/timber/timber/src/Timber.php:1613
    Timber\Timber::render()
    wp-content/themes/ss-wordpress-theme/index.php:27
    include('/srv/www/my-site/pu...ress-theme/index.php')
    wp-includes/template-loader.php:106
    require_once('/srv/www/my-site/pu.../template-loader.php')
    wp-blog-header.php:19
    require('/srv/www/my-site/public_html/wp-blog-header.php')
    index.php:17

Seems to come from views/partials/head.twig, after commenting {% do action('get_header') %} I get same for get_footer:

Uncaught Exception: An exception has been thrown during the rendering of a template ("Too few arguments to function QM_Collector_Theme::action_get_position(), 0 passed in /srv/www/my-site/public_html/wp-includes/class-wp-hook.php on line 324 and exactly 1 expected") in "layouts/base.twig" at line 41.
in /srv/www/my-site/public_html/wp-content/themes/ss-wordpress-theme/views/layouts/base.twig on line 41

Call stack:

    Twig\Template::yield()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Environment.php(420) : eval()'d code:47
    __TwigTemplate_6bd28b246e39b61335c8a139458fdca3::doDisplay()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:402
    Twig\Template::yield()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:358
    Twig\Template::display()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/Template.php:373
    Twig\Template::render()
    wp-content/themes/ss-wordpress-theme/vendor/twig/twig/src/TemplateWrapper.php:51
    Twig\TemplateWrapper::render()
    wp-content/themes/ss-wordpress-theme/vendor/timber/timber/src/Loader.php:178
    Timber\Loader::render()
    wp-content/themes/ss-wordpress-theme/vendor/timber/timber/src/Timber.php:1474
    Timber\Timber::compile()
    wp-content/themes/ss-wordpress-theme/vendor/timber/timber/src/Timber.php:1613
    Timber\Timber::render()
    wp-content/themes/ss-wordpress-theme/index.php:27
    include('/srv/www/my-site/pu...ress-theme/index.php')
    wp-includes/template-loader.php:106
    require_once('/srv/www/my-site/pu.../template-loader.php')
    wp-blog-header.php:19
    require('/srv/www/my-site/public_html/wp-blog-header.php')
    index.php:17

After commenting views/layouts/base.twig line {% do action('get_footer') %} page loads but not sure if something is missing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions