WordPress.com VIP 主题激活问题 - 找不到 vip-init.php

问题描述 投票:0回答:1

我正在 Ubuntu 14.04 LTS 计算机上按照以下说明设置我的第一个 VIP 主题:

https://vip.wordpress.com/documentation/vip/dev-environment/http://docs.chassis.io/en/latest/quickstart/#pre先决条件

此时我有:

  • 已安装 Virtual Box 5.1
  • Vagrant 1:1.9.4已安装

在详细写步骤之前,这里是我当前的文件夹结构

/var/www/html
          |-> thevp (Chassis installation)
              |-> wp
                 |-> wp-content/themes/vip/plugins
                        |         |           |-> vip-init.php
                        |         |-> vp-theme (custom theme)
                        |-> mu-plugins

Vagrant URL: vagrant.local
Admin URL: vagrant.local/wp/wp-admin

安装以上两个后,我将 Chassis 安装在

/var/www/html/thevp
文件夹中。这安装了一个名为
wp
的文件夹,我相信这是默认的 WordPress 安装。所以现在我有了
/var/www/html/thevp/wp
(加上其他文件夹和文件)。
wp-content 文件夹位于“wp”文件夹中

接下来,我从 svn co https://vip-svn.wordpress.com/plugins/ wp-content/themes/vip/plugins 安装了 VIP 插件和助手

/var/www/html/thevp/wp/wp-content/themes/vip/plugins

然后我在里面安装了 VIP mu-Plugins

/var/www/html/thevp/wp/wp-content/mu-plugins

最后,我从 Github 克隆了我的 VIP 主题

/var/www/html/thevp/wp/wp-content/themes/vp-theme

完成所有安装和克隆后,我从

/var/www/html/thevp/
中运行 $vagrant,它配置了我的机箱并提供了 URL http://vagrant.local/

上面的 URL 运行良好,并打开带有 TwentySeventeen 主题的默认站点。 在管理 > 主题下,我可以看到我自己的主题 vp-theme 以及 WordPress 已安装的其他默认主题。

但是每当我尝试激活此主题时,我都会收到此错误消息:

警告: require_once(/vagrant/content/themes/vip/plugins/vip-init.php): 失败 打开流: 没有这样的文件或目录 /vagrant/wp/wp-content/themes/vip/yrc-wordpress-theme/functions.php 上 9号线

致命错误:require_once():打开要求失败 '/vagrant/content/themes/vip/plugins/vip-init.php' (include_path='.:/usr/share/php') 在 /vagrant/wp/wp-content/themes/vip/yrc-wordpress-theme/functions.php 上 9号线

假设

/var/www/htm/thevp
未被识别为正确的路径,因为 wp-content 文件夹实际上位于
/var/www/html/thevp/wp
下,并且这应该是 root,我销毁了正在运行的 VirtualBox 实例并再次运行
$ vagrant up
,但这次是从内部
/var/www/html/thevp/wp 
.

但我仍然遇到同样的错误。我该如何解决这个问题?

更新

我检查了主题的functions.php中的以下行

require_once WP_CONTENT_DIR . '/themes/vip/plugins/vip-init.php';

在那里,但我有一种感觉,

WP_CONTENT_DIR
可能由于某种原因输出错误的路径,如错误消息所示

require_once(/vagrant/content/themes/vip/plugins/vip-init.php)...

我找不到任何文件夹

/vagrant/content

wordpress virtualbox vagrant-provision
1个回答
0
投票

经过长时间的研究和谷歌搜索,我终于让它发挥作用了。

出现错误的主要原因是

config.yaml file
中定义的内容文件夹。

安装 Chassis 时,它会在其根目录中创建一个名为

config.yaml
的文件。这是 “path” 部分下文件中的默认设置。

# Base directory for reference. Relative to the Chassis directory.
base: .

# Where WordPress lives. Relative to the base directory.
wp: wp

# Content directory. Relative to the base directory.
content: content

我做的第一件事就是将

content: content
更改为
content: wp/wp-content
。这里需要注意的是 Chassis 在“wp”下而不是在“Wordpress”下创建默认的 WordPress 安装。

我需要更改的第二件事是在同一文件中从

multisite: No
更改为
multisite: Yes

但是,在启动虚拟机时,我遇到了以下错误:

您的机器似乎不支持 NFS,或者没有 用于在该计算机上为 Vagrant 启用 NFS 的适配器

通过安装 NFS Common 和 NFS Kernel Server 解决了这个问题

$ sudo apt-get install nfs-common nfs-kernel-server

我在使用 vagrant 启动 VitualBox 时遇到了另一个错误。它询问我的

sudo
密码。但提供后执行失败,我在控制台上收到以下消息:

以下 SSH 命令以非零退出状态响应。 Vagrant 认为这意味着命令失败!

mount -o 'vers=3,udp' 33.33.33.1:'/home/subrata/' /var/www

来自命令的标准输出:来自命令的标准错误:stdin:不是 tty mount.nfs:请求的 NFS 版本或传输协议不是 支持

要解决此问题,我必须在

/etc/sudoers
文件中添加以下行。

vagrant ALL=(ALL) NOPASSWD:ALL  
Defaults:vagrant !requiretty

我终于准备好了!

$vagrant up
已成功启动我的虚拟机。

http://vagrant.local 运行良好,现在我可以第一次激活我自己的 VIP 主题:)

© www.soinside.com 2019 - 2024. All rights reserved.