Skip to content

Commit d7d4ac1

Browse files
authored
Merge pull request #19 from Astrotomic/issue-16
generate twitter properties with name HTML attribute instead of property
2 parents c1e3230 + 9b45273 commit d7d4ac1

22 files changed

+168
-139
lines changed

composer.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@
2626
"php": "^7.4"
2727
},
2828
"config": {
29-
"sort-packages": true
29+
"sort-packages": true,
30+
"allow-plugins": {
31+
"pestphp/pest-plugin": true
32+
}
3033
},
3134
"autoload": {
3235
"psr-4": {

src/TwitterProperty.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?php
2+
3+
namespace Astrotomic\OpenGraph;
4+
5+
class TwitterProperty extends Property
6+
{
7+
/** @var string */
8+
protected $prefix = 'twitter';
9+
10+
public function __toString(): string
11+
{
12+
$content = str_replace('"', '&quot;', $this->content);
13+
14+
return "<meta name=\"{$this->prefix}:{$this->property}\" content=\"{$content}\">";
15+
}
16+
}

src/TwitterType.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,4 +45,14 @@ public function image(string $image, ?string $alt = null)
4545

4646
return $this;
4747
}
48+
49+
public function setProperty(string $prefix, string $property, string $content)
50+
{
51+
$this->tags[$prefix.':'.$property] = TwitterProperty::make($prefix, $property, $content);
52+
}
53+
54+
public function addProperty(string $prefix, string $property, string $content)
55+
{
56+
$this->tags[] = TwitterProperty::make($prefix, $property, $content);
57+
}
4858
}
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<html><head>
2-
<meta property="twitter:card" content="app">
3-
<meta property="twitter:title" content="Title | Example">
4-
<meta property="twitter:description" content="Description">
5-
<meta property="twitter:site" content="@astrotomic_oss">
6-
<meta property="twitter:app:name:googleplay" content="AppName">
7-
<meta property="twitter:app:id:googleplay" content="id123456789">
2+
<meta name="twitter:card" content="app">
3+
<meta name="twitter:title" content="Title | Example">
4+
<meta name="twitter:description" content="Description">
5+
<meta name="twitter:site" content="@astrotomic_oss">
6+
<meta name="twitter:app:name:googleplay" content="AppName">
7+
<meta name="twitter:app:id:googleplay" content="id123456789">
88
</head></html>
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<html><head>
2-
<meta property="twitter:card" content="app">
3-
<meta property="twitter:title" content="Title | Example">
4-
<meta property="twitter:description" content="Description">
5-
<meta property="twitter:site" content="@astrotomic_oss">
6-
<meta property="twitter:app:name:googleplay" content="AppName">
7-
<meta property="twitter:app:id:googleplay" content="id123456789">
8-
<meta property="twitter:app:url:googleplay" content="https://app.domainname.com">
2+
<meta name="twitter:card" content="app">
3+
<meta name="twitter:title" content="Title | Example">
4+
<meta name="twitter:description" content="Description">
5+
<meta name="twitter:site" content="@astrotomic_oss">
6+
<meta name="twitter:app:name:googleplay" content="AppName">
7+
<meta name="twitter:app:id:googleplay" content="id123456789">
8+
<meta name="twitter:app:url:googleplay" content="https://app.domainname.com">
99
</head></html>
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<html><head>
2-
<meta property="twitter:card" content="app">
3-
<meta property="twitter:title" content="Title | Example">
4-
<meta property="twitter:description" content="Description">
5-
<meta property="twitter:site" content="@astrotomic_oss">
6-
<meta property="twitter:app:name:googleplay" content="AppName">
7-
<meta property="twitter:app:id:googleplay" content="id123456789">
2+
<meta name="twitter:card" content="app">
3+
<meta name="twitter:title" content="Title | Example">
4+
<meta name="twitter:description" content="Description">
5+
<meta name="twitter:site" content="@astrotomic_oss">
6+
<meta name="twitter:app:name:googleplay" content="AppName">
7+
<meta name="twitter:app:id:googleplay" content="id123456789">
88
</head></html>
Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
<html><head>
2-
<meta property="twitter:card" content="app">
3-
<meta property="twitter:title" content="Title | Example">
4-
<meta property="twitter:description" content="Description">
5-
<meta property="twitter:site" content="@astrotomic_oss">
6-
<meta property="twitter:app:name:googleplay" content="AppName">
7-
<meta property="twitter:app:id:googleplay" content="id123456789">
8-
<meta property="twitter:app:url:googleplay" content="https://app.domainname.com">
9-
<meta property="twitter:app:country" content="HR">
2+
<meta name="twitter:card" content="app">
3+
<meta name="twitter:title" content="Title | Example">
4+
<meta name="twitter:description" content="Description">
5+
<meta name="twitter:site" content="@astrotomic_oss">
6+
<meta name="twitter:app:name:googleplay" content="AppName">
7+
<meta name="twitter:app:id:googleplay" content="id123456789">
8+
<meta name="twitter:app:url:googleplay" content="https://app.domainname.com">
9+
<meta name="twitter:app:country" content="HR">
1010
</head></html>
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<html><head>
2-
<meta property="twitter:card" content="app">
3-
<meta property="twitter:title" content="Title | Example">
4-
<meta property="twitter:description" content="Description">
5-
<meta property="twitter:site" content="@astrotomic_oss">
6-
<meta property="twitter:app:name:googleplay" content="AppName">
7-
<meta property="twitter:app:id:googleplay" content="id123456789">
8-
<meta property="twitter:app:url:googleplay" content="https://app.domainname.com">
2+
<meta name="twitter:card" content="app">
3+
<meta name="twitter:title" content="Title | Example">
4+
<meta name="twitter:description" content="Description">
5+
<meta name="twitter:site" content="@astrotomic_oss">
6+
<meta name="twitter:app:name:googleplay" content="AppName">
7+
<meta name="twitter:app:id:googleplay" content="id123456789">
8+
<meta name="twitter:app:url:googleplay" content="https://app.domainname.com">
99
</head></html>
Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
<html><head>
2-
<meta property="twitter:card" content="app">
3-
<meta property="twitter:title" content="Title | Example">
4-
<meta property="twitter:description" content="Description">
5-
<meta property="twitter:site" content="@astrotomic_oss">
6-
<meta property="twitter:app:name:ipad" content="AppName">
7-
<meta property="twitter:app:id:ipad" content="A1B2C3D4E5">
8-
<meta property="twitter:app:url:ipad" content="https://app.domainname.com">
9-
<meta property="twitter:app:name:iphone" content="AppName">
10-
<meta property="twitter:app:id:iphone" content="A1B2C3D4E5">
11-
<meta property="twitter:app:url:iphone" content="https://app.domainname.com">
12-
<meta property="twitter:app:name:googleplay" content="AppName">
13-
<meta property="twitter:app:id:googleplay" content="id123456789">
14-
<meta property="twitter:app:url:googleplay" content="https://app.domainname.com">
15-
<meta property="twitter:app:country" content="HR">
2+
<meta name="twitter:card" content="app">
3+
<meta name="twitter:title" content="Title | Example">
4+
<meta name="twitter:description" content="Description">
5+
<meta name="twitter:site" content="@astrotomic_oss">
6+
<meta name="twitter:app:name:ipad" content="AppName">
7+
<meta name="twitter:app:id:ipad" content="A1B2C3D4E5">
8+
<meta name="twitter:app:url:ipad" content="https://app.domainname.com">
9+
<meta name="twitter:app:name:iphone" content="AppName">
10+
<meta name="twitter:app:id:iphone" content="A1B2C3D4E5">
11+
<meta name="twitter:app:url:iphone" content="https://app.domainname.com">
12+
<meta name="twitter:app:name:googleplay" content="AppName">
13+
<meta name="twitter:app:id:googleplay" content="id123456789">
14+
<meta name="twitter:app:url:googleplay" content="https://app.domainname.com">
15+
<meta name="twitter:app:country" content="HR">
1616
</head></html>
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<html><head>
2-
<meta property="twitter:card" content="app">
3-
<meta property="twitter:title" content="Title | Example">
4-
<meta property="twitter:description" content="Description">
5-
<meta property="twitter:site" content="@astrotomic_oss">
6-
<meta property="twitter:app:name:ipad" content="AppName">
7-
<meta property="twitter:app:id:ipad" content="A1B2C3D4E5">
2+
<meta name="twitter:card" content="app">
3+
<meta name="twitter:title" content="Title | Example">
4+
<meta name="twitter:description" content="Description">
5+
<meta name="twitter:site" content="@astrotomic_oss">
6+
<meta name="twitter:app:name:ipad" content="AppName">
7+
<meta name="twitter:app:id:ipad" content="A1B2C3D4E5">
88
</head></html>

0 commit comments

Comments
 (0)