por Cristian | Dic 8, 2019 | Woocommerce
Para ocultar categorías de la página de la tienda en Woocommerce nos serviremos de la siguiente función que incluiremos al final de nuestro wp-content/themes/nuestrotema/functions.php.
El uso es muy sencillo, simplemente añade los ids de las categorías (que se pueden ver en el link de la edición de la categoría en el panel del administrador) en el array que se indica, ¡y listo!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
/** ** Ocultar productos en la página de la tienda **/ function get_subcategory_terms( $terms, $taxonomies, $args ) { $new_terms = array(); $hide_category = array( 25,35,19,28,29,30,20,18,22 ); // Ids de las categorías que no quieres que se muestren en la página de la tienda if ( in_array( 'product_cat', $taxonomies ) && !is_admin() && is_shop() ) { foreach ( $terms as $key => $term ) { if ( ! in_array( $term->term_id, $hide_category ) ) { $new_terms[] = $term; } } $terms = $new_terms; } return $terms; } add_filter( 'get_terms', 'get_subcategory_terms', 10, 3 ); |
por Cristian | Sep 26, 2019 | Sin categoría
Si quieres ver, ordenados de menor a mayor por tamaño el listado de directorios en el que te encuentras puedes usar este comando:
por Cristian | Sep 4, 2019 | Sin categoría
Para que nuestras conexiones SSH no nos pidan contraseña podemos usar la autenticación por clave pública, para ello, usaremos una serie de comandos:
En el servidor de origen:
|
ssh-keygen -f ~/.ssh/id_rsa -q -P "" cat ~/.ssh/id_rsa.pub |
Obtendremos la clave pública de nuestro servidor de origen (el que necesitará autenticar con el servidor de destino), ej:
|
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLVDBIpdpfePg/a6h8au1HTKPPrg8wuTrjdh0QFVPpTI4KHctf6/FGg1NOgM++hrDlbrDVStKn/b3Mu65//tuvY5SG9sR4vrINCSQF++a+YRTGU6Sn4ltKpyj3usHERvBndtFXoDxsYKRCtPfgm1BGTBpoSl2A7lrwnmVSg+u11FOa1xSZ393aaBFDSeX8GlJf1SojWYIAbE25Xe3z5L232vZ5acC2PJkvKctzvUttJCP91gbNe5FSwDolE44diYbNYqEtvq2Jt8x45YzgFSVKf6ffnPwnUDwhtvc2f317TKx9l2Eq4aWqXTOMiPFA5ZRM/CF0IJCqeXG6s+qVfRjB root@avisa2 |
Y lo copiaremos en nuestro servidor de destino (crearemos los directorios y archivo authorized_keys si no existe):
|
mkdir ~/.ssh chmod 0700 ~/.ssh touch ~/.ssh/authorized_keys chmod 0644 ~/.ssh/authorized_keys |
Y ya está, las conexiones SSH que hagamos desde nuestro servidor de origen hacia el servidor que tenga nuestra clave pública en la lista de authorized_keys no necesitarán especificar contraseña.
por Cristian | Sep 4, 2019 | Sin categoría
Sabemos que con los túneles SSH podemos acceder a cualquier puerto de nuestro servidor externo desde un servidor local a través de SSH, pudiendo «enmascarar» ese puerto, por ejemplo podemos usar el puerto 3307 de nuestro servidor local como si fuera el puerto 3306 (mysql) de nuestro servidor externo.
Para ello podemos usar este comando:
|
ssh -fNg -p 22 -L 3307:127.0.0.1:3306 root@1.1.1.1 |
* Donde 1.1.1.1 es la ip de nuestro servidor externo y 22 el puerto ssh del mismo. 3307 es el puerto que usaremos en local, mientras que 3306 es el puerto de nuestro servidor remoto.
¿Pero que ocurre si queremos que mantenga viva ese conexión? No nos queda otra que usar autossh. Podemos instalarlo:
Y meter este comando en un cron cuando el sistema arranca:
|
autossh -M 22 -f -N root@1.1.1.1 -R 3307:127.0.0.1:3306 -C |
autossh se encargará de revisar si se ha perdido la conexión y reconectará.
por Cristian | Ago 21, 2019 | Terminal, Tutoriales Linux
Si ves este error al ejecutar tu script .sh es posible que se trate de un error de codificación, tu script tiene los finales de línea de DOS, y tienes que convertirlo a UNIX.
Con el editor vim puedes usar el siguiente comando para convertir automáticamente todos los saltos de línea: