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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions