Establecer valores de configuración
En este tema se describen los comandos de configuración avanzada que se pueden utilizar para:
- Establezca cualquier opción de configuración desde la línea de comandos
- Si lo desea, bloquee cualquier opción de configuración para que su valor no se pueda cambiar en el Administrador
- Cambie una opción de configuración que esté bloqueada en el Administrador
Puede utilizar estos comandos para establecer la configuración de Commerce manualmente o mediante scripts. Las opciones de configuración se establecen mediante una ruta de configuración, que es una cadena delimitada por /
que identifica de forma exclusiva esa opción de configuración. Puede encontrar rutas de configuración en las siguientes referencias:
Puede definir valores en los momentos siguientes:
-
Antes de instalar Commerce, puede establecer valores de configuración solo para el ámbito predeterminado, ya que es el único ámbito válido.
-
Después de instalar Commerce, puede establecer los valores de configuración de cualquier sitio web o ámbito de vista de la tienda.
Utilice los siguientes comandos:
bin/magento config:set
establece cualquier valor de configuración no confidencial por su ruta de configuraciónbin/magento config:sensitive:set
establece cualquier valor de configuración confidencial por su ruta de configuraciónbin/magento config:show
muestra valores de configuración guardados; los valores de configuración cifrada se muestran como asteriscos
Requisitos previos
Para establecer un valor de configuración, debe conocer al menos una de las siguientes opciones:
-
La ruta de configuración
-
Para establecer un valor de configuración para un ámbito en particular, debe conocer el código de ámbito.
Para establecer un valor de configuración para el ámbito predeterminado, no es necesario que haga nada.
Buscar la ruta de configuración
Consulte las siguientes referencias:
Buscar el código de ámbito
Puede encontrar el código de ámbito en la base de datos de Commerce o en el Administrador de Commerce.
Para encontrar el código de ámbito en Admin:
-
Inicie sesión en el administrador como un usuario que puede ver sitios web y almacenar vistas.
-
Haga clic en Stores > Configuración > All Stores.
-
En el panel derecho, haga clic en el nombre del sitio web o de la vista de tienda para ver su código.
La siguiente figura muestra un ejemplo de código de sitio web.
-
Continuar con Establecer valores.
Para encontrar el código de ámbito en la base de datos:
Los códigos de ámbito de los sitios web y las vistas de tienda se almacenan en la base de datos de Commerce en las tablas store_website
y store
, respectivamente.
-
Conéctese a la base de datos de Commerce.
code language-bash mysql -u <Commerce database username> -p
-
Introduzca los siguientes comandos:
code language-shell use <Commerce database name>;
code language-shell SELECT * FROM store;
code language-shell SELECT * FROM store_website;
A continuación se muestra un ejemplo:
code language-none [mysql]> SELECT * FROM store_website; +------------+-------+--------------+------------+------------------+------------+ | website_id | code | name | sort_order | default_group_id | is_default | +------------+-------+--------------+------------+------------------+------------+ | 0 | admin | Admin | 0 | 0 | 0 | | 1 | base | Main Website | 0 | 1 | 1 | | 2 | test1 | Test Website | 0 | 3 | 0 | +------------+-------+--------------+------------+------------------+------------+
Use el valor de la columna
code
. -
Continúe con la siguiente sección.
Establecer valores
Para establecer valores de configuración específicos del sistema:
bin/magento config:set [--scope="..."] [--scope-code="..."] [-le | --lock-env] [-lc | --lock-config] path value
Para establecer valores de configuración confidenciales:
bin/magento config:sensitive:set [--scope="..."] [--scope-code="..."] path value
En la tabla siguiente se describen los parámetros de comando set
:
--scope
default
, website
o store
. El valor predeterminado es default
.--scope-code
-e or --lock-env
<Commerce base dir>/app/etc/env.php
.-c or --lock-config
<Commerce base dir>/app/etc/config.php
. La opción --lock-config
sobrescribe --lock-env
si especifica ambas opciones.path
value
--lock-env
y --lock-config
reemplazan la opción --lock
.--lock-env
o --lock-config
para establecer o cambiar un valor, debe usar el comando bin/magento app:config:import
para importar la configuración antes de tener acceso al administrador o a la tienda.Si escribe una ruta de configuración incorrecta, este comando devuelve un error
The "wrong/config/path" does not exist
Consulte una de las siguientes secciones para obtener más información:
Establezca los valores de configuración que se pueden editar en el Administrador
Use bin/magento config:set
sin --lock-env
o --lock-config
para escribir el valor en la base de datos. Los valores que configure de esta manera se pueden editar en el Administrador.
A continuación se muestran algunos ejemplos de configuración de una URL base de tienda:
Establezca la dirección URL base para el ámbito predeterminado:
bin/magento config:set web/unsecure/base_url http://example.com/
Establecer la dirección URL base del sitio web base
:
bin/magento config:set --scope=websites --scope-code=base web/unsecure/base_url http://example2.com/
Establecer la dirección URL base para la vista del almacén test
:
bin/magento config:set --scope=stores --scope-code=test web/unsecure/base_url http://example3.com/
Establezca valores de configuración que no se puedan editar en el Administrador
Si usa la opción --lock-env
de la siguiente manera, el comando guarda el valor de configuración en <Commerce base dir>/app/etc/env.php
y deshabilita el campo para editar este valor en el Administrador.
bin/magento config:set --lock-env --scope=stores --scope-code=default web/unsecure/base_url http://example3.com
Puede usar la opción --lock-env
para establecer los valores de configuración si Commerce no está instalado. Sin embargo, solo puede establecer valores para el ámbito predeterminado.
env.php
es específico del sistema. No debe transferirlo a otro sistema. Puede utilizarlo para sobrescribir los valores de configuración de la base de datos. Por ejemplo, puede tomar un volcado de la base de datos de otro sistema y sobrescribir base_url
y otros valores para no tener que modificar la base de datos.Si usa la opción --lock-config
de la siguiente manera, el valor de configuración se guarda en <Commerce base dir>/app/etc/config.php
. El campo para editar este valor en Admin está desactivado.
bin/magento config:set --lock-config --scope=stores --scope-code=default web/url/use_store 1
Puede usar --lock-config
para establecer los valores de configuración si Commerce no está instalado. Sin embargo, solo puede establecer valores para el ámbito predeterminado.
config.php
a otro sistema para utilizar allí los mismos valores de configuración. Por ejemplo, si tiene un sistema de prueba, el uso del mismo config.php
significa que no tiene que volver a establecer los mismos valores de configuración.Mostrar el valor de las opciones de configuración
Opciones de comando:
bin/magento config:show [--scope[="..."]] [--scope-code[="..."]] path
donde
--scope
es el ámbito de configuración (predeterminado, sitio web, tienda). El valor predeterminado esdefault
--scope-code
es el código de ámbito de configuración (código de sitio web o código de vista de tienda)path
es la ruta de configuración con el formato first_part/second_part/third_part/etc (obligatorio)
bin/magento config:show
muestra los valores de cualquier valor cifrado como una serie de asteriscos: ******
.Ejemplos
Para mostrar todas las configuraciones guardadas:
bin/magento config:show
Resultado:
web/unsecure/base_url - http://example.com/
general/region/display_all - 1
general/region/state_required - AT,BR,CA,CH,EE,ES,FI,LT,LV,RO,US
catalog/category/root_id - 2
analytics/subscription/enabled - 1
Para mostrar todas las configuraciones guardadas para el sitio web base
:
bin/magento config:show --scope=websites --scope-code=base
Resultado:
web/unsecure/base_url - http://example-for-website.com/
general/region/state_required - AT,BR,CA
Para mostrar la dirección URL base del ámbito predeterminado:
bin/magento config:show web/unsecure/base_url
Resultado:
web/unsecure/base_url - http://example.com/
Para mostrar la dirección URL base del sitio web base
:
bin/magento config:show --scope=websites --scope-code=base web/unsecure/base_url
Resultado:
web/unsecure/base_url - http://example-for-website.com/
Para mostrar la dirección URL base del almacén default
:
bin/magento config:show --scope=stores --scope-code=default web/unsecure/base_url
Resultado:
web/unsecure/base_url - http://example-for-store.com/