Reputation: 405
I have a pods page using a template, and it's working great. But I just need to override the title tag with a pods field containing a value:
$parcours = pods('parcours', pods_v_sanitized(3, 'url'));
$seo_title = $parcours->field('seo_title');
// Supposed override
function custom_page_title($seo_title) {
return $seo_title;
}
add_filter('pre_get_document_title', 'custom_page_title', 999, 1);
get_header();
?>
The title does not appear on the page (no override). Of course I made sure that $seo_title
actually has a value.
Am I missing something or this is not doable that way?
Upvotes: 0
Views: 576
Reputation: 2960
You're trying to use the $seo_title
variable in the function as a global
.
Your code will work if you use it like this:
$parcours = pods('parcours', pods_v_sanitized(3, 'url'));
global $seo_title;
$seo_title = $parcours->field('seo_title');
// Supposed override
function custom_page_title() {
global $seo_title;
return $seo_title;
}
add_filter('pre_get_document_title', 'custom_page_title', 999);
get_header(); ?>
With the line global $seo_title;
, we are calling the variable, which is out of the function:
$seo_title = $parcours->field('seo_title');
Upvotes: 3