aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs/Web
diff options
context:
space:
mode:
authorredmatrix <git@macgirvin.com>2016-03-07 15:03:53 -0800
committerredmatrix <git@macgirvin.com>2016-03-07 15:03:53 -0800
commitd5db25808a0847e09ee3735faeac3552c722e0ae (patch)
treef9f7e91b0860a91c29338b3ba10c41f4eec00337 /Zotlabs/Web
parent68d7ab6b55d34e19055aaab30966c4827c63e370 (diff)
downloadvolse-hubzilla-d5db25808a0847e09ee3735faeac3552c722e0ae.tar.gz
volse-hubzilla-d5db25808a0847e09ee3735faeac3552c722e0ae.tar.bz2
volse-hubzilla-d5db25808a0847e09ee3735faeac3552c722e0ae.zip
Facebook scraper "OpenGraph" support; modules will need to set the required fields (type, image, url) as well as any desired optional or type specific fields. We will set the title during pagebuild.
Diffstat (limited to 'Zotlabs/Web')
-rw-r--r--Zotlabs/Web/OpenGraph.php43
1 files changed, 43 insertions, 0 deletions
diff --git a/Zotlabs/Web/OpenGraph.php b/Zotlabs/Web/OpenGraph.php
new file mode 100644
index 000000000..b14b2b989
--- /dev/null
+++ b/Zotlabs/Web/OpenGraph.php
@@ -0,0 +1,43 @@
+<?php
+
+namespace Zotlabs\Web;
+
+
+class OpenGraph {
+
+ private $vars = null;
+
+ function __construct() {
+
+ $this->vars = array();
+
+ }
+
+ function set($property,$value) {
+ $this->vars[$property] = $value;
+ }
+
+ function check_required() {
+ if(
+ ($this->vars)
+ && array_key_exists('og:title',$this->vars)
+ && array_key_exists('og:type', $this->vars)
+ && array_key_exists('og:image',$this->vars)
+ && array_key_exists('og:url', $this->vars)
+ )
+ return true;
+ return false;
+ }
+
+ function get() {
+ if($this->check_required()) {
+ $o = "\r\n";
+ foreach($this->vars as $k => $v) {
+ $o .= '<meta property="' . $k . '" content="' . urlencode($v) . '" />' . "\r\n" ;
+ }
+ return $o;
+ }
+ return '';
+ }
+
+} \ No newline at end of file