When using the `created` field, this module works fine.
But we have content that has a "Source Publish Date" field that's different from the "created" field.
"source_publish_date" is a date field.
http://i.alphex.io/3b04f7638e41

When I try to use this as the `Date Field Name` in the Format Settings.
http://i.alphex.io/d82c479463d8

I just get a nice big error message.
The website encountered an unexpected error. Please try again later.</br></br><em class="placeholder">InvalidArgumentException</em>: The date cannot be created from a format. in <em class="placeholder">Drupal\Component\Datetime\DateTimePlus::createFromFormat()</em> (line <em class="placeholder">248</em> of <em class="placeholder">core/lib/Drupal/Component/Datetime/DateTimePlus.php</em>). <pre class="backtrace">template_preprocess_views_blogspot_archive_view_archive(Array, 'views_blogspot_archive_view_archive', Array) (Line: 287)
Drupal\Core\Theme\ThemeManager->render('views_blogspot_archive_view_archive', Array) (Line: 437)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 450)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 195)
Drupal\Core\Render\Renderer->render(Array) (Line: 490)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 90)
__TwigTemplate_3ce44e2e408b9fa53e45bf76f55faedc7847f7c8832f63550d7eb0bb7e0e6acb->doDisplay(Array, Array) (Line: 432)
Twig_Template->displayWithErrorHandling(Array, Array) (Line: 403)
Twig_Template->display(Array) (Line: 411)
Twig_Template->render(Array) (Line: 64)
twig_render_template('themes/custom/foo/templates/views/views-view.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('views_view', Array) (Line: 437)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 450)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 195)
Drupal\Core\Render\Renderer->render(Array) (Line: 490)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 188)
__TwigTemplate_130b30279904003c46fa21a1d77a70d26bdbfc44d0b7698e0ec782fe4b99d08e->doDisplay(Array, Array) (Line: 432)
Twig_Template->displayWithErrorHandling(Array, Array) (Line: 403)
Twig_Template->display(Array) (Line: 411)
Twig_Template->render(Array) (Line: 64)
twig_render_template('themes/custom/foo/templates/nodes/node--news-pr-landing-page--full.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 437)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 195)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 226)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 582)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 227)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 117)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.view', Object) (Line: 156)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 68)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 184)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 121)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 75)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 52)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 669)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
</pre>
I'm trying to use the same Date format as created is (html_date), but... Still getting this.
Is there a required date format?
Thoughts?
Thank you!
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | 3026743-hacky-fix-for-blogspot-fatal.patch | 1.51 KB | neclimdul |
| view_config_02.png | 52.41 KB | alphex | |
| view_config_01.png | 86.93 KB | alphex |
Comments
Comment #2
neclimdulMakes sense. Date fields are stored in Core's "storage format" which is not ATOM which is what's hard coded into the template method.
Here's a hacky fix. Core doesn't have a method for getting a DateTime object from a field for some strange reason so anything is going to be hacky. Without knowing why the ATOM format was hard coded I'm not sure how best to fix this specific code though.
Comment #3
neclimdulshoot, there are 2 places where this logic exists.
Comment #4
d2ev commentedComment #6
d2ev commentedEvent I am wondering why i have hard-coded ATOM format. Now I have fixed it. Thanks