Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undefined index: loc in models/SitemapIndexTemplate.php #674

Closed
jamealg opened this issue Jun 23, 2020 · 4 comments
Closed

Undefined index: loc in models/SitemapIndexTemplate.php #674

jamealg opened this issue Jun 23, 2020 · 4 comments
Assignees
Labels

Comments

@jamealg
Copy link

jamealg commented Jun 23, 2020

When I access /sitemap.xml or even /admin/seomatic/site/sitemap/default I get this PHP error:

PHP Notice – yii\base\ErrorException
Undefined index: loc

  1. in /site/app/vendor/nystudio107/craft-seomatic/src/models/SitemapIndexTemplate.php

Other SEOmatic admin pages load just fine.
I'm on Craft 3.4.24 and Seomatic 3.3.8.
PHP is version 7.0.15 and MySQL 5.6.35.

Full stack trace:

2020-06-23 09:09:37 [-][1528][b05d7b851be20f2663d4198ed21eff98][error][yii\base\ErrorException:8] yii\base\ErrorException: Undefined index: loc in /site/app/vendor/nystudio107/craft-seomatic/src/models/SitemapIndexTemplate.php:236
Stack trace:
#0 /site/app/vendor/craftcms/cms/src/web/ErrorHandler.php(74): yii\base\ErrorHandler->handleError(8, 'Undefined index...', '/Applications/M...', 236)
#1 /site/app/vendor/nystudio107/craft-seomatic/src/models/SitemapIndexTemplate.php(236): craft\web\ErrorHandler->handleError(8, 'Undefined index...', '/Applications/M...', 236, Array)
#2 /site/app/vendor/nystudio107/craft-seomatic/src/models/SitemapIndexTemplate.php(186): nystudio107\seomatic\models\SitemapIndexTemplate->addAdditionalSitemaps(Object(nystudio107\seomatic\models\MetaBundle), 1, '[<span class="s...')
#3 [internal function]: nystudio107\seomatic\models\SitemapIndexTemplate->nystudio107\seomatic\models{closure}(Object(yii\caching\FileCache))
#4 /site/app/vendor/yiisoft/yii2/caching/Cache.php(597): call_user_func(Object(Closure), Object(yii\caching\FileCache))
#5 /site/app/vendor/nystudio107/craft-seomatic/src/models/SitemapIndexTemplate.php(193): yii\caching\Cache->getOrSet('seomatic_sitema...', Object(Closure), 30, Object(yii\caching\TagDependency))
#6 /site/app/vendor/nystudio107/craft-seomatic/src/services/Sitemaps.php(166): nystudio107\seomatic\models\SitemapIndexTemplate->render(Array)
#7 /site/app/vendor/nystudio107/craft-seomatic/src/controllers/SitemapController.php(55): nystudio107\seomatic\services\Sitemaps->renderTemplate('SeomaticSitemap...', Array)
#8 [internal function]: nystudio107\seomatic\controllers\SitemapController->actionSitemapIndex(1, NULL)
#9 /site/app/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
#10 /site/app/vendor/yiisoft/yii2/base/Controller.php(157): yii\base\InlineAction->runWithParams(Array)
#11 /site/app/vendor/craftcms/cms/src/web/Controller.php(178): yii\base\Controller->runAction('sitemap-index', Array)
#12 /site/app/vendor/yiisoft/yii2/base/Module.php(528): craft\web\Controller->runAction('sitemap-index', Array)
#13 /site/app/vendor/craftcms/cms/src/web/Application.php(291): yii\base\Module->runAction('seomatic/sitema...', Array)
#14 /site/app/vendor/yiisoft/yii2/web/Application.php(103): craft\web\Application->runAction('seomatic/sitema...', Array)
#15 /site/app/vendor/craftcms/cms/src/web/Application.php(276): yii\web\Application->handleRequest(Object(craft\web\Request))
#16 /site/app/vendor/yiisoft/yii2/base/Application.php(386): craft\web\Application->handleRequest(Object(craft\web\Request))
#17 /site/app/public/index.php(21): yii\base\Application->run()
#18 {main}

Let me know if I can provide any more info. I've tried disabling/enabling the plugin and clearing all caches but to no avail.

@khalwat
Copy link
Collaborator

khalwat commented Jul 1, 2020

@jamealg It looks like you might have created an additional sitemap without adding a location to it. I'll add in a fix to work around this, it shouldn't throw an error in this case.

@khalwat khalwat added the bug label Jul 1, 2020
@khalwat khalwat self-assigned this Jul 1, 2020
@khalwat
Copy link
Collaborator

khalwat commented Jul 1, 2020

fixed in b90cbf3

@khalwat khalwat closed this as completed Jul 1, 2020
@jamealg
Copy link
Author

jamealg commented Jul 6, 2020

Thanks @khalwat. It looks like there is a bit more to it. After applying your latest update accessing /sitemap.xml once again works without error but accessing the sitemap section of the admin panel (admin/seomatic/site/sitemap/default) returns this error:

PHP Notice – yii\base\ErrorException
Array to string conversion

  1. in /site/app/vendor/twig/twig/src/Extension/CoreExtension.php

I'm not sure how that additional sitemap got created, but I was able to manually delete it by temporarily removing the Last Modification Date column from /vendor/.../templates/settings/site/_includes/tab-sitemap.twig. Once I removed the empty additional sitemap rows and reverted those changes it worked fine.

Full stack trace:

yii\base\ErrorException: Array to string conversion in /site/app/vendor/twig/twig/src/Extension/CoreExtension.php:524
Stack trace:
#0 /site/app/vendor/craftcms/cms/src/web/ErrorHandler.php(74): yii\base\ErrorHandler->handleError(8, 'Array to string...', '/Applications/M...', 524)
#1 /site/app/vendor/twig/twig/src/Extension/CoreExtension.php(524): craft\web\ErrorHandler->handleError(8, 'Array to string...', '/Applications/M...', 524, Array)
#2 /site/app/storage/runtime/compiled_templates/26/26d97f5b369cbb9b3e81691eac496ff397315a345a8d9773120594824e1a7e7e.php(42): twig_date_converter(Object(craft\web\twig\Environment), Array, false)
#3 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_d3decc072a1d23dd1ef26ed4aa2cc4a6b01ce0b6ba9c3bb394c66ecac14a2f76->doDisplay(Array, Array)
#4 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#5 /site/app/storage/runtime/compiled_templates/3c/3cadbd908ce001f51a77f5c4d626d301b3c006f24a30ad37d1ed6b27d99ce52a.php(382): Twig\Template->display(Array)
#6 /site/app/vendor/twig/twig/src/Template.php(184): __TwigTemplate_6df25d7d19808220db89f6ab7d16cf4bcb40cf0e64ed962e2a5d877fccec27c4->block_tablecell(Array, Array)
#7 /site/app/storage/runtime/compiled_templates/3c/3cadbd908ce001f51a77f5c4d626d301b3c006f24a30ad37d1ed6b27d99ce52a.php(237): Twig\Template->displayBlock('tablecell', Array, Array)
#8 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_6df25d7d19808220db89f6ab7d16cf4bcb40cf0e64ed962e2a5d877fccec27c4->doDisplay(Array, Array)
#9 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#10 /site/app/storage/runtime/compiled_templates/83/83fd49a245c6690dcbdc6715ccea4c21f140adfd95110f72023ca3a9c68c0254.php(1383): Twig\Template->display(Array)
#11 /site/app/vendor/twig/twig/src/Extension/CoreExtension.php(1109): __TwigTemplate_71c38d22e62d975b35fed685ba4c9200406ecc1d2d92553f608ccae800ae61c6->macro_editableTableField(Array)
#12 /site/app/storage/runtime/compiled_templates/d4/d466cf2b7bfdc9d2d9649a304aa46e5fec6a0675799586caf78a97ef8233a2c5.php(71): twig_call_macro(Object(__TwigTemplate_71c38d22e62d975b35fed685ba4c9200406ecc1d2d92553f608ccae800ae61c6), 'macro_editableT...', Array, 14, Array, Object(Twig\Source))
#13 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_9b48ba6d613f0a60937f23670a38987b49fa13088205c439b46f82ee7d9390cc->doDisplay(Array, Array)
#14 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#15 /site/app/storage/runtime/compiled_templates/e6/e6952591b77b28702f1508c4995eaf9f01830d32e5fa6fd2d31849fd98e65d1b.php(151): Twig\Template->display(Array)
#16 /site/app/vendor/twig/twig/src/Template.php(184): __TwigTemplate_15bfac149c659634f0af86e5e95f7b8bc3aca70b2126f3066a27ea4880d90e77->block_content(Array, Array)
#17 /site/app/storage/runtime/compiled_templates/4e/4efce0340beb46b2f8a80a4753cd3691433fe7cb36d812f600bb44276fb7e04f.php(411): Twig\Template->displayBlock('content', Array, Array)
#18 /site/app/vendor/twig/twig/src/Template.php(184): __TwigTemplate_4310ee8fcda1edde0543a90c42042dd31c0bd1f05a76ca4d3843fb6668b1ffec->block_main(Array, Array)
#19 /site/app/storage/runtime/compiled_templates/4e/4efce0340beb46b2f8a80a4753cd3691433fe7cb36d812f600bb44276fb7e04f.php(266): Twig\Template->displayBlock('main', Array, Array)
#20 /site/app/vendor/twig/twig/src/Template.php(184): __TwigTemplate_4310ee8fcda1edde0543a90c42042dd31c0bd1f05a76ca4d3843fb6668b1ffec->block_body(Array, Array)
#21 /site/app/storage/runtime/compiled_templates/73/73febc6c75998d2fbbc5c74ae24ce93a196da2bc38230c30d678e16df0868588.php(75): Twig\Template->displayBlock('body', Array, Array)
#22 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_43d26e3b2652fe09eb3a4954b163dfd2d53a586a38021a7212aef9583e74bead->doDisplay(Array, Array)
#23 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#24 /site/app/storage/runtime/compiled_templates/3d/3d3efd7e2a18266d48613f9ad21bdf414f426ba55f7c0839e45f722188265d22.php(56): Twig\Template->display(Array, Array)
#25 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_ba71c7401d20f6c51e90a7556caa6877eab30f5b87d519b7cfb8e166d0a3f428->doDisplay(Array, Array)
#26 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#27 /site/app/storage/runtime/compiled_templates/4e/4efce0340beb46b2f8a80a4753cd3691433fe7cb36d812f600bb44276fb7e04f.php(138): Twig\Template->display(Array, Array)
#28 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_4310ee8fcda1edde0543a90c42042dd31c0bd1f05a76ca4d3843fb6668b1ffec->doDisplay(Array, Array)
#29 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#30 /site/app/storage/runtime/compiled_templates/ea/eac0b6706203b05cbe488a2b42812818d3533e66eb3c00f89b630afbb598fed7.php(48): Twig\Template->display(Array, Array)
#31 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_026c65aab05c260326f10f07fa15bfc759ee5f31afd949a28d9659d9e0beeba9->doDisplay(Array, Array)
#32 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#33 /site/app/storage/runtime/compiled_templates/aa/aa62bd3be4826708e4411ed76567d8663dc81693f96db1ac46f4c1dd42d725f9.php(78): Twig\Template->display(Array, Array)
#34 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_921b3b1c77f5f36f5a85cffbd0b232af913187489d51ccbc76b30ae9484ebad9->doDisplay(Array, Array)
#35 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#36 /site/app/storage/runtime/compiled_templates/e6/e6952591b77b28702f1508c4995eaf9f01830d32e5fa6fd2d31849fd98e65d1b.php(50): Twig\Template->display(Array, Array)
#37 /site/app/vendor/twig/twig/src/Template.php(407): __TwigTemplate_15bfac149c659634f0af86e5e95f7b8bc3aca70b2126f3066a27ea4880d90e77->doDisplay(Array, Array)
#38 /site/app/vendor/twig/twig/src/Template.php(380): Twig\Template->displayWithErrorHandling(Array, Array)
#39 /site/app/vendor/twig/twig/src/Template.php(392): Twig\Template->display(Array)
#40 /site/app/vendor/twig/twig/src/TemplateWrapper.php(45): Twig\Template->render(Array, Array)
#41 /site/app/vendor/twig/twig/src/Environment.php(318): Twig\TemplateWrapper->render(Array)
#42 /site/app/vendor/craftcms/cms/src/web/View.php(375): Twig\Environment->render('seomatic/settin...', Array)
#43 /site/app/vendor/craftcms/cms/src/web/View.php(436): craft\web\View->renderTemplate('seomatic/settin...', Array)
#44 /site/app/vendor/craftcms/cms/src/web/Controller.php(235): craft\web\View->renderPageTemplate('seomatic/settin...', Array, 'cp')
#45 /site/app/vendor/nystudio107/craft-seomatic/src/controllers/SettingsController.php(710): craft\web\Controller->renderTemplate('seomatic/settin...', Array)
#46 [internal function]: nystudio107\seomatic\controllers\SettingsController->actionSite('sitemap', 'default', NULL)
#47 /site/app/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
#48 /site/app/vendor/yiisoft/yii2/base/Controller.php(157): yii\base\InlineAction->runWithParams(Array)
#49 /site/app/vendor/craftcms/cms/src/web/Controller.php(178): yii\base\Controller->runAction('site', Array)
#50 /site/app/vendor/yiisoft/yii2/base/Module.php(528): craft\web\Controller->runAction('site', Array)
#51 /site/app/vendor/craftcms/cms/src/web/Application.php(291): yii\base\Module->runAction('seomatic/settin...', Array)
#52 /site/app/vendor/yiisoft/yii2/web/Application.php(103): craft\web\Application->runAction('seomatic/settin...', Array)
#53 /site/app/vendor/craftcms/cms/src/web/Application.php(276): yii\web\Application->handleRequest(Object(craft\web\Request))
#54 /site/app/vendor/yiisoft/yii2/base/Application.php(386): craft\web\Application->handleRequest(Object(craft\web\Request))
#55 /site/app/public/index.php(21): yii\base\Application->run()
#56 {main}

@khalwat
Copy link
Collaborator

khalwat commented Jul 7, 2020

I am unable to reproduce this; I can create as many black sitemaps entries as I want, and I'm not seeing any errors

Screen Shot 2020-07-06 at 10 46 55 PM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants