Skip to content

Instantly share code, notes, and snippets.

@igorbenic
Last active September 9, 2026 11:11
Show Gist options
  • Select an option

  • Save igorbenic/eb97eb252a72c81b0f463b49ec5d1539 to your computer and use it in GitHub Desktop.

Select an option

Save igorbenic/eb97eb252a72c81b0f463b49ec5d1539 to your computer and use it in GitHub Desktop.
How to Programmatically Change Yoast SEO Open Graph Meta | http://www.ibenic.com/programmatically-change-yoast-seo-open-graph-meta
<?php
function change_yoast_seo_og_meta() {
add_filter( 'wpseo_opengraph_desc', 'change_desc' );
}
function change_desc( $desc ) {
// This article is actually a landing page for an eBook
if( is_singular( 123 ) ) {
$desc = __( 'The best eBook you can have on your laptop, tablet or smartphone. See what others are reading to improve their career.', 'change_textdomain');
}
return $desc;
}
<?php
add_action( 'wpseo_opengraph', 'change_yoast_seo_og_meta' );
/**
* Function to add hooks and filter out the Yoast SEO Open Graph Meta Tags
*/
function change_yoast_seo_og_meta() {
// We will add the code here to change the meta tags
}
<?php
function change_yoast_seo_og_meta() {
add_filter( 'wpseo_opengraph_image', 'change_image' );
}
function change_image( $image ) {
if( $image == 'http://url_for_image_to_change' ) {
$image = 'http://url_to_our_new_image';
}
return $image;
}
<?php
function change_yoast_seo_og_meta() {
add_action( 'wpseo_add_opengraph_images', 'add_images' );
}
function add_images( $object ) {
$image = 'http://url_to_our_image.png';
$object->add_image( $image );
}
<?php
function change_yoast_seo_og_meta() {
add_filter( 'wpseo_locale', 'change_locale' );
}
function change_locale( $locale ) {
// Article with the ID 123 is Croatian
// Other Articles are on English (or any site setting)
if( is_singular( 123 ) ) {
$locale = 'hr_HR';
}
return $locale;
}
<?php
// Code from Yoast SEO Plugin
public function og_tag( $property, $content ) {
$og_property = str_replace( ':', '_', $property );
/**
* Filter: 'wpseo_og_' . $og_property - Allow developers to change the content of specific OG meta tags.
*
* @api string $content The content of the property
*/
$content = apply_filters( 'wpseo_og_' . $og_property, $content );
if ( empty( $content ) ) {
return false;
}
echo '<meta property="', esc_attr( $property ), '" content="', esc_attr( $content ), '" />', "\n";
return true;
}
<?php
function change_yoast_seo_og_meta() {
add_filter( 'wpseo_opengraph_title', 'change_title' );
}
function change_title( $title ) {
// Landing Page eBook
if( is_singular( 123 ) ) {
$bought = get_bought_count_id( 123 );
// Change the title if it was already sold to more than 100
if( $bought > 100 ) {
$title = __( 'Get the eBook that was read by more than 100 people', 'change_textdomain' );
}
}
return $title;
}
<?php
function change_yoast_seo_og_meta() {
add_filter( 'wpseo_opengraph_type', 'change_type' );
}
function change_type( $type ) {
// This article is actually a landing page for an eBook
if( is_singular( 123 ) ) {
$type = 'book';
}
return $type;
}
<?php
function change_yoast_seo_og_meta() {
add_filter( 'wpseo_opengraph_url', 'change_url' );
}
function change_url( $url ) {
// This article is actually a landing page for an eBook
if( is_singular( 123 ) ) {
$url = add_query_arg( 'from', 'facebook', $url );
}
return $url;
}
@OliverNoah22

OliverNoah22 commented Aug 23, 2026

Copy link
Copy Markdown

Programmatically changing Yoast SEO Open Graph meta can be handled using WordPress filters to customize social sharing data dynamically. 1pppp keeps the interface clean and clutter-free, letting players jump straight into Teen Patti or Rummy tables without extra steps. Visit now https://1pppapk.com.pk/.

@jacobtyler1592-byte

Copy link
Copy Markdown

This is a useful and well-organized gist. The practical approach makes the information easy to follow, especially for someone looking to understand the implementation rather than just the theory. Thanks for sharing!
https://pinvideoindirici.com.tr/

@damonlucas

Copy link
Copy Markdown

A useful topic for WordPress developers, especially when you need more control over how pages appear when shared on social media.
Completing a J188 download unlocks card games, slots, and fish games from a single home screen. New accounts typically register using a phone number and OTP verification.https://j188.net/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment