backdrop-contrib / metatag

Add structured metadata, aka "meta tags", for various pages on your site.
GNU General Public License v2.0
3 stars 15 forks source link

PHP Warning: Invalid argument supplied for foreach() in metatag_preprocess_maintenance_page #3

Closed jenlampton closed 7 years ago

jenlampton commented 7 years ago

In my logs I see the following PHP warning:

Warning: Invalid argument supplied for foreach() in metatag_preprocess_maintenance_page() (line 2092 of backdrop/modules/contrib/metatag/metatag.module).

It looks like this was fixed in preprocess_page but not for maintenance page.

/**
 * Implements hook_preprocess_maintenance_page().
 *
 * @see metatag_preprocess_page().
 */
function metatag_preprocess_maintenance_page(&$variables) {
  // Prepare all the tags, including doing token replacements.
  $metatags = metatag_prepare_tags();

  // Add each metatag to page header.
  if (is_array($metatags) && !empty($metatags)) {
    foreach ($metatags as $instance => $set) {
      if (is_array($set) && !empty($set)) {
        foreach ($set as $tag => $data) {
          // The title tag is special.
          if ($tag == 'title') {
            $variables['head_title'] = check_plain($data['#value']);
          }
          else {
            backdrop_add_html_head($data, 'metatag_preprocess_page-' . $tag);
          }
        }
      }
    }
  }
}
jenlampton commented 7 years ago

Fixed in the next release.