为单个页面在Wordpress页面标题中插入变量


Insert variable into Wordpress page title for individual page

我有一个照片库页面,在Wordpress中使用单个页面。

图库显示是动态的,依赖于URL参数。参数本身是一个相关的wordpress页面ID的整数。(因为这是关于那一页)。

下面是一个图库URL的示例:

http://www.bellavou.co.uk/gallery/?pid=238

为了搜索引擎优化的目的,我试图摆脱每一个可能的画廊URL组合有页面标题"画廊",在Wordpress页面设置设置。

我一直在尝试这个,这已经被提到了几次:

function assignPageTitle(){
  return "Title goes here";
}
add_filter('wp_title', 'assignPageTitle');

但我也使用Yoast SEO插件,我认为这是覆盖它(即使我取消勾选"强制标题重写",并保持页面标题字段空白)。不知道为什么上面的函数似乎不起作用。

在图库页面中,我能够正确地显示h1标题,将PHP变量传递到代码中,但是我想对页面标题做同样的事情,但是以一种可以直接在页面模板上完成的方式

为什么每当我发布问题时,我似乎很快就能找到答案?

我读了一篇文章,说它有助于在wp_header调用之前放置一个wp_title函数,这就是我所尝试的,这似乎工作得很好。

我可以使用PHP页面模板为单个页面编辑页面标题,并使用以下命令:

$procedure = isset($_GET['pid']) ? $_GET['pid'] : '';
add_filter( 'wp_title', 'wp_title_gallery', 100 );
function wp_title_gallery($title) {
    global $procedure;
    if(!$procedure) {
        $title = the_title();
    } else {
        $title = the_title(get_the_title($procedure).'&nbsp');
    }
    return $title;
}
get_header();

$procedure获取URL参数,然后函数获取该ID,并从中获取相关的页面,然后将页面的标题打印到页面标题钩子中。最后,WP头被称为。

(以防有人来这里寻找解决方案)