Page meta properties

This commit is contained in:
M. Dent 2018-09-22 10:44:51 +02:00 committed by Mario
parent 2b452ffbd3
commit ed00d1b2e3
4 changed files with 35 additions and 4 deletions

View File

@ -54,8 +54,19 @@ class HttpMeta {
} }
} }
if($this->check_required()) { if($this->check_required()) {
$arrayproperties = [ 'og:image' ];
foreach($this->og as $k => $v) { foreach($this->og as $k => $v) {
$o .= '<meta property="' . $k . '" content="' . urlencode($v) . '" />' . "\r\n" ; if (in_array($k,$arrayproperties)) {
if (is_array($v)) {
foreach ($v as $v2) {
$o .= '<meta property="' . $k . '" content="' . $v2 . '" />' . "\r\n" ;
}
} else {
$o .= '<meta property="' . $k . '" content="' . $v . '" />' . "\r\n" ;
}
} else {
$o .= '<meta property="' . $k . '" content="' . $v . '" />' . "\r\n" ;
}
} }
} }
if($o) if($o)
@ -63,4 +74,4 @@ class HttpMeta {
return $o; return $o;
} }
} }

View File

@ -1119,8 +1119,12 @@ class App {
if(! x(self::$page,'title')) if(! x(self::$page,'title'))
self::$page['title'] = self::$config['system']['sitename']; self::$page['title'] = self::$config['system']['sitename'];
if(! self::$meta->get_field('og:title')) $pagemeta = [ 'og:title' => self::$page['title'] ];
self::$meta->set('og:title',self::$page['title']);
call_hooks('page_meta',$pagemeta);
foreach ($pagemeta as $metaproperty => $metavalue) {
self::$meta->set($metaproperty,$metavalue);
}
self::$meta->set('generator', Zotlabs\Lib\System::get_platform_name()); self::$meta->set('generator', Zotlabs\Lib\System::get_platform_name());

13
doc/hook/page_meta.bb Normal file
View File

@ -0,0 +1,13 @@
[h2]page_meta[/h2]
Called before generating the page header.
[code]
$pagemeta = [ 'og:title' => self::$page['title'] ];
call_hooks('page_meta',$pagemeta);
foreach ($pagemeta as $metaproperty => $metavalue) {
self::$meta->set($metaproperty,$metavalue);
}
[/code]

View File

@ -451,6 +451,9 @@ Hooks allow plugins/addons to "hook into" the code at many points and alter the
[zrl=[baseurl]/help/hook/page_header]page_header[/zrl] [zrl=[baseurl]/help/hook/page_header]page_header[/zrl]
Called when generating the navigation bar Called when generating the navigation bar
[zrl=[baseurl]/help/hook/page_header]page_meta[/zrl]
Called when generating the meta data in the page header.
[zrl=[baseurl]/help/hook/parse_atom]parse_atom[/zrl] [zrl=[baseurl]/help/hook/parse_atom]parse_atom[/zrl]
Called when parsing an atom/RSS feed item Called when parsing an atom/RSS feed item