Skip to content

Commit

Permalink
Add new type and possibility to add a media link
Browse files Browse the repository at this point in the history
  • Loading branch information
Andde Zudaire authored and Andde Zudaire committed Feb 17, 2025
1 parent a2375ad commit 452104b
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 16 deletions.
43 changes: 36 additions & 7 deletions Resources/config/forms/page_opengraph.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,22 @@
<param name="values" type="collection">
<param name="website">
<meta>
<title>website</title>
<title>Website</title>
</meta>
</param>
<param name="article">
<meta>
<title>article</title>
<title>Article</title>
</meta>
</param>
<param name="blog">
<meta>
<title>blog</title>
<title>Blog</title>
</meta>
</param>
<param name="restaurant">
<meta>
<title>Restaurant</title>
</meta>
</param>
</param>
Expand All @@ -47,12 +52,30 @@
<param name="soft_max_length" value="200" />
</params>
</property>
<property name="ext/opengraph/og_image" type="single_media_selection">
<property name="ext/opengraph/og_site_name" type="text_line">
<meta>
<title>og:site_name *</title>
</meta>
<params>
<param name="soft_max_length" value="200" />
</params>
</property>
<property name="isLink" type="checkbox">
<params>
<param name="type" value="toggler"/>
<param name="default_value" value="true"/>
<param name="label">
<meta>
<title lang="fr">Lien d'image ou média ?</title>
<info lang="fr">Activer pour lien d'image</info>
</meta>
</param>
</params>
</property>
<property name="ext/opengraph/og_image" type="single_media_selection" visibleCondition="isLink == false">
<meta>
<title lang="fr">og:image *</title>
<info_text lang="fr">
format 1200x627
</info_text>
<info_text lang="fr">Choissisez un média (format 1200x627)</info_text>
</meta>
<params>
<param name="types" value="image"/>
Expand All @@ -61,6 +84,12 @@
</param>
</params>
</property>
<property name="ext/opengraph/og_image_link" type="text_line" visibleCondition="isLink == true">
<meta>
<title lang="fr">og:image *</title>
<info_text lang="fr">Coller le lien de l'image</info_text>
</meta>
</property>
</properties>
</section>
</properties>
Expand Down
24 changes: 15 additions & 9 deletions Resources/views/open_graph.html.twig
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,20 @@
<meta property="og:description" content="{{ opengraph.og_description }}" />
<meta name="twitter:description" content="{{ opengraph.og_description }}" />
{% endif %}
{% if opengraph.og_image %}
{% set imgUrl = sulu_resolve_media(opengraph.og_image.id, app.request.locale) %}
<meta property="og:image" content="{{ absolute_url(imgUrl.thumbnails['1200x627']) }}" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="627" />
<meta property="og:image:alt" content="{{ imgUrl.title }}" />
{% set imgUrl = '' %}
{% if opengraph.isLink %}
<meta property="og:image" content="{{ opengraph.og_image_link }}" />
<meta property="og:image:alt" content="{{ opengraph.og_title }}" />
<!-- Twitter Card -->
<meta name="twitter:image" content="{{ opengraph.og_image_link }}" />
{% elseif opengraph.isLink == false and opengraph.og_image %}
{% set imgUrl = sulu_resolve_media(opengraph.og_image.id, app.request.locale) %}
<meta property="og:image" content="{{ imgUrl.thumbnails['1200x627'] }}" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="627" />
<meta property="og:image:alt" content="{{ opengraph.og_title }}" />

<!-- Twitter Card -->
<meta name="twitter:image" content="{{ absolute_url(imgUrl.thumbnails['506x628']) }}" />
<!-- Twitter Card -->
<meta name="twitter:image" content="{{ absolute_url(imgUrl.thumbnails['506x628']) }}" />
{% endif %}
{% endif %}
{% endif %}s
9 changes: 9 additions & 0 deletions Structure/OpengraphStructureExtension.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ class OpengraphStructureExtension extends AbstractExtension implements ExportExt
'og_title',
'og_type',
'og_description',
'og_site_name',
'isLink',
'og_image_link',
'og_image',
];

Expand All @@ -32,7 +35,10 @@ public function save(NodeInterface $node, $data, $webspaceKey, $languageCode)
$this->saveProperty($node, $data, 'og_title');
$this->saveProperty($node, $data, 'og_type');
$this->saveProperty($node, $data, 'og_description');
$this->saveProperty($node, $data, 'og_site_name');
$this->saveProperty($node, $data, 'isLink');
$this->saveProperty($node, $data, 'og_image');
$this->saveProperty($node, $data, 'og_image_link');
}

public function load(NodeInterface $node, $webspaceKey, $languageCode)
Expand All @@ -47,6 +53,9 @@ public function load(NodeInterface $node, $webspaceKey, $languageCode)
'og_title' => $this->loadProperty($node, 'og_title'),
'og_type' => $this->loadProperty($node, 'og_type'),
'og_description' => $this->loadProperty($node, 'og_description'),
'og_site_name' => $this->loadProperty($node, 'og_site_name'),
'isLink' => $this->loadProperty($node, 'isLink'),
'og_image_link' => $this->loadProperty($node, 'og_image_link'),
'og_image' => $ogImage,
];
}
Expand Down

0 comments on commit 452104b

Please sign in to comment.