PrestaShop 主题开发

问题描述 投票:0回答:1
version: '3'

services:
  mysql:
    container_name: some-mysql
    image: mysql:5.7
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: admin
      MYSQL_DATABASE: prestashop
    networks:
      - prestashop_network
    volumes:
      - dbdata:/var/lib/mysql

  prestashop:
    container_name: prestashop
    image: prestashop/prestashop:8.1.1
    restart: unless-stopped
    depends_on:
      - mysql
    ports:
      - 8080:80
    environment:
      DB_SERVER: some-mysql
      DB_NAME: prestashop
      DB_USER: root
      DB_PASSWD: admin
    networks:
      - prestashop_network
    volumes:
      - /home/aicha/presta:/var/www/html
      

  phpmyadmin:
    image: phpmyadmin
    container_name: phpmyadmin
    ports:
      - 8081:80
    environment:
      MYSQL_ROOT_PASSWORD: admin  # Use the same MySQL root password as in your MySQL service
      PMA_HOST: some-mysql
      PMA_USER: root
      PMA_PASSWORD: admin
    restart: unless-stopped
    depends_on:
      - mysql
    networks:
      - prestashop_network

networks:
  prestashop_network:

volumes:
  dbdata:

我已经使用 Docker Compose 文件在 Ubuntu 上设置了 Prestashop。安装后,将创建一个名为“presta”的文件夹(如 Docker Compose 文件中所指定),其中包含源代码。不过,好像被锁了。我尝试运行一些权限命令来访问该文件并进行一些更改。

`sudo chown -R 你的用户名:你的组名文件夹路径

sudo chmod -R 755 文件夹路径

` 接下来,我按照 Udemy 上有关创建新主题的教程进行操作。但是,每当我尝试修改代码时,都会遇到服务器错误并且无法继续。任何帮助将不胜感激。

我通过复制 /themes/classic 文件夹、重命名并更改其 theme.yml 文件来启动主题开发。然而,在 Prestashop 后台导航到“设计/主题和徽标”时,出现了服务器错误页面。

docker themes prestashop e-commerce prestashop-1.7
1个回答
0
投票

映射到 /var/www/html 的卷的所有者应该是 www-data (带有 www-data 组)。 您不应该更改这些文件的所有权。您可以将您的用户添加到该组,然后对文件使用 664 权限,对目录使用 775 权限(www-data 数字 ID 为 33 iirc)。您可以在创建的文件夹中运行以下命令:

sudo find . -type f -print0 | xargs -0 -I {} sudo chmod 664 {}
sudo find . -type d -print0 | sudo xargs -0 chmod 775 

您还可以使用带有“远程”扩展名的 VSCode 连接到站点(通过 ssh)并在桌面上远程编辑文件(当然,只有完成上述操作后才能保存任何更改) 。这还有许多其他生活质量的好处!

在主题开发方面,您可能会更好(至少对于您的第一个主题)创建一个子主题(经典)并从那里开始工作。版本之间存在相当多的更改,因此请使用您正在使用的主要版本(Prestashop 1.7.x 或 Prestashop 8.x)的文档。我强烈建议不要在 1.7 上开始开发,因为 PrestaShop 9 现在的目标是新功能,而 8 只是 1.7 的一个进化步骤(但具有更好的功能集)。

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