除非我真的找不到答案,否则我尽量不发布问题,但恐怕现在就是这种情况。
我正在运行一个项目,其中 Vue 应用程序部署在 wordpress 网站的页面中。到目前为止一切顺利,集成有点复杂,但现在是。
该应用程序嵌入了排队的脚本和样式:
wp_enqueue_script('portal', get_stylesheet_directory_uri() . '/myapp/dist/app.js', [], false, true);
我可以通过使 wordpress 主题目录可用来解决从 javascript 访问应用程序资产的问题:
$script_data = [
'image_path' => get_stylesheet_directory_uri() . '/myapp/dist/img/',
'myapp' => get_stylesheet_directory_uri()
];
wp_localize_script(
'portal',
'wpData',
$script_data
);
我花了一些时间才知道,所以我希望它对某人有所帮助。
我在尝试加载一些字体时被困住了。我将这些字体导入到 scss 中,如下所示:
@font-face {
font-family: 'icomoon';
src: url('~@/assets/fonts/icomoon.eot?ddstsa');
src: url('~@/assets/fonts/icomoon.eot?ddstsa#iefix') format('embedded-opentype'),
url('~@/assets/fonts/icomoon.ttf?ddstsa') format('truetype'),
url('~@/assets/fonts/icomoon.woff?ddstsa') format('woff'),
url('~@/assets/fonts/icomoon.svg?ddstsa#icomoon') format('svg');
font-weight: normal;
font-style: normal;
font-display: block;
}
这样我的 Vue 应用程序就可以编译,没问题,如果我“独立”运行应用程序,而不是嵌入到 wordpress 页面中,它会找到字体。但是在 wp 页面中,它会在文件夹 /fonts/ 中搜索字体,但它应该转到 /wp-content/themes/mytheme/myapp/dist/fonts ...
¿在部署到 wordpress 时,如何使它使用不同的资产路径?
提前致谢!