Gruntjs 咕噜咕噜的利弗雷洛德和曼普
我正在尝试使用GruntJSLivereload进行wordpress主题开发 对于WP主题开发,我通常使用MAMP并在浏览器中的localhost上查看站点 如果我使用grunt创建服务器,我仍然需要运行MAMP 我是否仍然需要MAMP根文件夹中的wordpress文件夹才能连接到数据库 我正在使用wordpress文件夹根目录下的这个简单的GrunFile.js,但是如果我运行grunt,浏览器会加载搜索引擎,搜索0.0.0.0Gruntjs 咕噜咕噜的利弗雷洛德和曼普,gruntjs,mamp,Gruntjs,Mamp,我正在尝试使用GruntJSLivereload进行wordpress主题开发 对于WP主题开发,我通常使用MAMP并在浏览器中的localhost上查看站点 如果我使用grunt创建服务器,我仍然需要运行MAMP 我是否仍然需要MAMP根文件夹中的wordpress文件夹才能连接到数据库 我正在使用wordpress文件夹根目录下的这个简单的GrunFile.js,但是如果我运行grunt,浏览器会加载搜索引擎,搜索0.0.0.0 'use strict'; module.exports =
'use strict';
module.exports = function(grunt){
require('load-grunt-tasks')(grunt);
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
connect: {
options: {
port: 9000,
},
livereload: {
options: {
open: true,
}
}
}
});
grunt.registerTask('default', ['connect']);
}
是否可以在不使用MAMP的情况下将grunt livereload与Wordpress一起使用
我一整天都在努力解决这个问题-任何帮助都会非常感谢。我不确定我是否完全理解了您的问题,但您将无法在“grunt”服务器上运行wordpress,因为节点服务器是JS的,不支持PHP或mysql(至少是开箱即用的),我可以帮助您进行mamp+watch设置 因此,要有一个适当的设置,包括mamp和grunt,以您的示例为基础
'use strict';
module.exports = function(grunt){
require('load-grunt-tasks')(grunt);
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
watch: {
options: {
livereload: true,
},
files: {
files: ['theDirYouWantToReload/*.scss'], // or whaterver globbing pattern you would need
tasks: ['yourNeededTask'],
},
}
});
grunt.registerTask('default', ['watch']);
}
您应该查看一下,了解有关监视和重新加载工作原理的更多信息
这是grunt部分,在WP端,您应该将livereload脚本添加到页面中
2在此解决方案中,使用浏览器的LR扩展,并在查看这些页面时在浏览器上激活它,或将实时重新加载脚本添加到WP enqueue
脚本的默认地址是http://localhost:35729/livereload.js?snipver=1
这是一个赤裸裸的示例,您可以对watch任务执行精细操作 嘿,我也遇到了这个问题,但我无法让它工作?我觉得这与MAMP在不同的端口上运行PHP服务器有关。也许您可以将默认设置为 我所做的一个非常有技巧的解决方法是,我创建了一个小PHP脚本,它在
localhost
上插入自己。我还检查以确保声明了一个变量
livereload.php
<?php
// Live reload script added only on localhost and if $livereload set to true
// add specific whitelist options
$whitelist = array(
'127.0.0.1',
'::1',
'localhost'
);
if(in_array($_SERVER['REMOTE_ADDR'], $whitelist) && isset($livereload)){
echo '<script src="http://localhost:35729/livereload.js?snipver=1"></script>';
}
?>
<?php
$livereload = true;
?>
// Markup, content
<?php
include_once('livereload.php');
?>
希望这能有所帮助。是的,我确实认为我可以在grunt服务器上运行wordpress,但我现在意识到这是行不通的。如果你能帮助我修改我的答案,根据你的例子,一个与livereload一起安装的MAMP+手表将是完美的