BloInfo(‘TEMPLATE_DIRECTORY’)是基于设置中的WP_SITEURL和WP_HOME生成的吗?

时间:2021-09-21 作者:alancc

在我的主题中,许多URL是基于bloginfo(“template\\u directory”)生成的,例如,下面是标题中的一个片段

  <link rel="apple-touch-icon" sizes="64x64" href="<?php bloginfo(\'template_directory\'); ?>/apple-touch-icon.png">
现在是我的网站起源。实例com,我已经创建了一个Cloudfront发行版xxx。cloudfront。网

确保网页中的URL将使用xxx中的URL。cloudfront。网络,而不是原点。实例com,我修改wp配置。php并添加以下行:

define( \'WP_SITEURL\', \'https://xxx.cloudfront.net\' );

define( \'WP_HOME\', \'https://xxx.cloudfront.net\' );
然而,即使在此之后,当我从https://origin.example.com, 我仍然看到:

<link rel="apple-touch-icon" sizes="64x64" href="https://origin.example.com/wp-content/themes/datanumen/apple-touch-icon.png">
所以我怀疑bloginfo(“template\\u directory”)是基于WP\\u SITEURL和WP\\u HOME生成的,还是基于数据库中的其他值生成的?

我检查一下https://developer.wordpress.org/reference/functions/bloginfo/ 而且它没有明确提到,在注释中有一个示例暗示这些值来自WP\\u SITEURL和WP\\u HOME。

Update

一定是出了什么事。我有:

在wp配置中添加以下行。php:

define( \'WP_CONTENT_URL\', \'https://xxx.cloudfront.net\' );
使用;更好的搜索替换“;替换所有原点。实例与xxx通信。cloudfront。网

停用WP火箭,使缓存无法工作。

即使做了所有这些,我的页面仍然使用https://origin.example.com/wp-content/themes/xxx/ 作为bloginfo(\'template\\u directory\')的值。

1 个回复
SO网友:Jacob Peattie

使用的URLbloginfo(\'template_directory\') 基于确定主题目录URL的各种函数,这些函数最终基于WP_CONTENT_URL 常量,它是指向wp-content/ 目录

此常量的初始值(如果您自己没有定义)基于数据库中设置的站点URL,在设置中;概述。

在您的情况下,仅基于您的问题,因为我不太了解Cloudfront,您可能想要这样的东西:

define( \'WP_CONTENT_URL\', \'https://xxx.cloudfront.net/wp-contebt\' );
据我所知,通常WP_CONTENT_URL 将使用WP_SITEURL, 但这不会发生在您必须使用的多站点安装上。

相关推荐

About wordpress child themes

我对WordPress和儿童主题有一些问题。据我所知,如果我不想在更新主题时失去任何东西,使用子主题是很重要的。我是WordPress的初学者,到目前为止,我一直在使用PageBuilder(管理面板上的板载自定义选项)自定义我的网站,并在“附加CSS”选项中加入几行CSS。所有这些都是在主主题上完成的(只是玩转尝试学习),现在我想开始使用一个儿童主题。问题如下:我不知道我是否可以像通过管理界面设计父主题那样设计我的子主题,或者我是否必须通过文本编辑器(在我的计算机上,然后通过FTP等方式上传)对所有内容