Php 用于视差背景的图像来自http localhost,而不是style.css中的wordpress url

Php 用于视差背景的图像来自http localhost,而不是style.css中的wordpress url,php,html,css,wordpress,Php,Html,Css,Wordpress,我为我创建的wordpress网站创建了一个视差滚动效果。使用了以下html和css: html 我转到页面,图像没有出现。我转到“检查”并得到以下错误:  (索引):1混合内容:位于“”的页面被删除 已通过HTTPS加载,但请求了不安全的映像 ''. 此内容还应通过HTTPS提供。无法加载img.png 资源:网络::错误连接被拒绝 这基本上意味着,由于图像不在https url下,chrome不会显示它,因为技术上它不安全。这没有多大意义,因为我用于图像的url是从我使用它的wordpre

我为我创建的wordpress网站创建了一个视差滚动效果。使用了以下html和css:

html

我转到页面,图像没有出现。我转到“检查”并得到以下错误:



(索引):1混合内容:位于“”的页面被删除 已通过HTTPS加载,但请求了不安全的映像 ''. 此内容还应通过HTTPS提供。无法加载img.png 资源:网络::错误连接被拒绝

这基本上意味着,由于图像不在https url下,chrome不会显示它,因为技术上它不安全。这没有多大意义,因为我用于图像的url是从我使用它的wordpress站点的媒体库中提取的https

因此,我转到“查看页面源代码”,果然,在style.css文件中,它正在提取localhost链接“”,而不是wordpress图像链接

所以我回到FTP中的style.css表,但是css仍然是一样的:

.parallax { 
            /* The image used */
            background-image: url("https://mywebsite.com/wp-content/uploads/2017/12/image.png");

            /* Set a specific height */
            height: 500px;

            /* Create the parallax scrolling effect */
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: contain;
        }
有人能解释一下吗?起初我认为这是缓存问题,但我在chrome中以匿名模式加载了该站点,得到了相同的效果和错误

我觉得我需要用wordpress做一些事情,也许是将图像插入html而不是css,但我还没有遇到任何具体的东西

提前感谢您的帮助。

@logos\u 164

如果您最近将此站点从本地开发人员移动到活动站点,我建议您在“设置”>“常规”下签入您的wp管理员,并查看您的WordPress地址(URL)和站点地址(URL)的设置

(有时,人们会导出其本地dev sql wordpress数据库,忘记对站点url进行查找/替换,最终所有设置都是localhost或*.dev)

如果这两个地址都不是本地主机,那么这就不是问题所在。尽管我会执行sql导出并在文件中搜索对localhost的任何引用,以防仍然存在与localhost相关的设置/字段

如果您最近确实将其从本地开发人员移动到了活动站点,我还将重做permalink设置以重置.htaccess文件


最后一种方法可能是通过ftp将图像上传到托管环境中的文件夹,并在style.css中引用该位置,而不是使用wordpress媒体上传文件夹

为此,您可以使用PHP函数
get_stylesheet_directory_uri()
来帮助您设置相对路径

获取样式表目录uri():检索当前主题/子主题的样式表目录uri。检查SSL

将此PHP放入您的
HTML

<?php echo get_stylesheet_directory_uri(); ?>
或者,在找到
sylesheet路径后,您可以在
CSS
中为
图像编写
相对路径,如下所示:

<img src="<?php echo get_stylesheet_directory_uri(); ?>/images/aternus.png" alt="" width="" height="" />
background-image: url('./../uploads/2017/12/image.png');
// explanation: /. means current folder, ../ means one folder back (up)

我按照你的建议做了,站点和Wordpress URL都设置为服务器域,而不是本地主机。我对你的第二个建议很感兴趣,但不知道怎么做(sql导出和搜索文件),你能链接到一些关于如何进行的文档吗?感谢您的建议如果您有权访问phpMyAdmin,您可以单击wordpress数据库,然后单击“导出”选项卡,然后将sql文件导出为文本文件。在任何文本编辑器或IDE(我建议使用Notepad++)中打开此文本文件,搜索“localhost”,查看表中是否有带有“localhost”的条目。谢谢,这样做了,是的,我有3个带有localhost的条目。在做了更多的研究之后,我认为我可能在将站点从本地WordPress开发站点移动到server aide oneEasy修复时出错了。在phpMyAdmin中,从live sites数据库中删除所有表。从dev安装程序导出sql文件,对localhost执行查找/替换,并替换为站点域,然后保存保存的sql文件并将其导入数据库。这会解决问题的。我对此有点困惑,你能链接到教程吗?
<img src="<?php echo get_stylesheet_directory_uri(); ?>/images/aternus.png" alt="" width="" height="" />
background-image: url('./../uploads/2017/12/image.png');
// explanation: /. means current folder, ../ means one folder back (up)