studiopress / genesis-simple-faq

An accessible, performant WordPress plugin that adds FAQ management and rendering to your Genesis child theme.
10 stars 7 forks source link

Undefined variable: output in class-gs-faq-shortcode.php #22

Closed nickcernis closed 7 years ago

nickcernis commented 7 years ago
  1. Use the shortcode in a way that produces no posts from the query: [gs_faq id="111111111111111111112"]
  2. Visit the page containing that shortcode.

You'll see the notice below in your logs.

It's caused by defining $output inside the if statement here: https://github.com/copyblogger/genesis-simple-faq/blob/develop/includes/class-gs-faq-shortcode.php#L61 (if there are no posts $output is not defined).

Suggest using $output = ''; above the if statement and appending to it inside the statement.

[02-Aug-2017 16:52:57 UTC] PHP Notice:  Undefined variable: output in /Users/nick/Sync/Work/wp/wptest/wp-content/plugins/genesis-simple-faq/includes/class-gs-faq-shortcode.php on line 84
[02-Aug-2017 16:52:57 UTC] PHP Stack trace:
[02-Aug-2017 16:52:57 UTC] PHP   1. {main}() /Users/nick/.composer/vendor/laravel/valet/server.php:0
[02-Aug-2017 16:52:57 UTC] PHP   2. require() /Users/nick/.composer/vendor/laravel/valet/server.php:128
[02-Aug-2017 16:52:57 UTC] PHP   3. require() /Users/nick/Sync/Work/wp/wptest/index.php:17
[02-Aug-2017 16:52:57 UTC] PHP   4. require_once() /Users/nick/Sync/Work/wp/wptest/wp-blog-header.php:19
[02-Aug-2017 16:52:57 UTC] PHP   5. include() /Users/nick/Sync/Work/wp/wptest/wp-includes/template-loader.php:74
[02-Aug-2017 16:52:57 UTC] PHP   6. genesis() /Users/nick/Sync/Work/wp/wptest/wp-content/themes/genesis/page.php:15
[02-Aug-2017 16:52:57 UTC] PHP   7. do_action() /Users/nick/Sync/Work/wp/wptest/wp-content/themes/genesis/lib/framework.php:39
[02-Aug-2017 16:52:57 UTC] PHP   8. WP_Hook->do_action() /Users/nick/Sync/Work/wp/wptest/wp-includes/plugin.php:453
[02-Aug-2017 16:52:57 UTC] PHP   9. WP_Hook->apply_filters() /Users/nick/Sync/Work/wp/wptest/wp-includes/class-wp-hook.php:323
[02-Aug-2017 16:52:57 UTC] PHP  10. genesis_do_loop() /Users/nick/Sync/Work/wp/wptest/wp-includes/class-wp-hook.php:298
[02-Aug-2017 16:52:57 UTC] PHP  11. genesis_standard_loop() /Users/nick/Sync/Work/wp/wptest/wp-content/themes/genesis/lib/structure/loops.php:41
[02-Aug-2017 16:52:57 UTC] PHP  12. do_action() /Users/nick/Sync/Work/wp/wptest/wp-content/themes/genesis/lib/structure/loops.php:92
[02-Aug-2017 16:52:57 UTC] PHP  13. WP_Hook->do_action() /Users/nick/Sync/Work/wp/wptest/wp-includes/plugin.php:453
[02-Aug-2017 16:52:57 UTC] PHP  14. WP_Hook->apply_filters() /Users/nick/Sync/Work/wp/wptest/wp-includes/class-wp-hook.php:323
[02-Aug-2017 16:52:57 UTC] PHP  15. genesis_do_post_content() /Users/nick/Sync/Work/wp/wptest/wp-includes/class-wp-hook.php:298
[02-Aug-2017 16:52:57 UTC] PHP  16. the_content() /Users/nick/Sync/Work/wp/wptest/wp-content/themes/genesis/lib/structure/post.php:348
[02-Aug-2017 16:52:57 UTC] PHP  17. apply_filters() /Users/nick/Sync/Work/wp/wptest/wp-includes/post-template.php:240
[02-Aug-2017 16:52:57 UTC] PHP  18. WP_Hook->apply_filters() /Users/nick/Sync/Work/wp/wptest/wp-includes/plugin.php:203
[02-Aug-2017 16:52:57 UTC] PHP  19. do_shortcode() /Users/nick/Sync/Work/wp/wptest/wp-includes/class-wp-hook.php:298
[02-Aug-2017 16:52:57 UTC] PHP  20. preg_replace_callback() /Users/nick/Sync/Work/wp/wptest/wp-includes/shortcodes.php:223
[02-Aug-2017 16:52:57 UTC] PHP  21. do_shortcode_tag() /Users/nick/Sync/Work/wp/wptest/wp-includes/shortcodes.php:223
[02-Aug-2017 16:52:57 UTC] PHP  22. Genesis_Simple_FAQ_Shortcode->shortcode() /Users/nick/Sync/Work/wp/wptest/wp-includes/shortcodes.php:345