Archivos de Etiquetas: #conceptos #wordpress #woocommerce #shortcodes #css

Cambiar el color de fondo de nuestras publicaciones dependiendo su estado

Cuando el objetivo de nuestro sitio web es publicar artículos nos puede ser de mucha ayuda utilizar la colorimetría para categorizar nuestras publicaciones visualmente en el panel de administración dependiendo su estado (Publicado, borrador, privado, etc.), para eso utilizaremos la acción «admin_footer».

En el siguiente ejemplo crearemos una función que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function post_color_estado(){
?>
<style>
.status-draft{background: #FCE3F2 !important;}
.status-pending{background: #87C5D6 !important;}
.status-publish{/* sin color */}
.status-future{background: #C6EBF5 !important;}
.status-private{background:#F2D46F;}
</style>
<?php
}
add_action('admin_footer','post_color_estado');

Si deseas más información sobre como desarrollar en

WordPress en español

, visita el Codex oficial de WordPress haciendo clic aquí.

Descargar WordPress del repositorio oficial para México:haciendo clic aquí.
Repositorio oficial de Plugins para WordPress: haciendo clic aquí.
Repositorio oficial de temas gratuitos para WordPress: haciendo clic aquí.

Si necesitas consultoría sobre

WordPress

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Ocultar un Widget en una página específica

En algunas ocaciones dentro de nuestros desarrollos es necesario ocultar un Widget en una página específica, para lograr esto usaremos el filtro «widget_display_callback».

En el siguiente ejemplo crearemos una función que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function ocultar_widget( $instance, $widget, $args ) {
if ( $widget->id_base == 'widget-17_categories-3' ) { // ID del widget
if ( !is_page( 'contacto' ) ) { // página
return false;
}
}
}
add_filter( 'widget_display_callback', 'ocultar_widget', 10, 3 );
Notas:
1. El ID del Widget puedes conocerlo inspeccionando el código de la página o con ayuda de algún «Plugin» del repositorio de WordPress. Por ejemplo: Haz clic aquí.

Si deseas más información sobre como desarrollar en

WordPress en español

, visita el Codex oficial de WordPress haciendo clic aquí.

Descargar WordPress del repositorio oficial para México:haciendo clic aquí.
Repositorio oficial de Plugins para WordPress: haciendo clic aquí.
Repositorio oficial de temas gratuitos para WordPress: haciendo clic aquí.

Si necesitas consultoría sobre

WordPress

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Agregar un método de envío personalizado

En algunas ocaciones es necesario agregar un método de envío personalizado a nuestra «Tienda», por ejemplo «Envío rápido» o «Entrega en el mismo día», para esto utilizaremos la acción «woocommerce_flat_rate_shipping_add_rate».

En el siguiente ejemplo crearemos una función que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function envio_personalizado( $method, $rate ) {
$new_rate = $rate;
$new_rate['id'] .= ':' . 'envio_rapido'; 
$new_rate['label'] = 'Envío rápido';
$new_rate['cost'] += 10;
$method->add_rate( $new_rate );
}
add_action( 'woocommerce_flat_rate_shipping_add_rate', 'envio_personalizado', 10, 2 );

Si deseas más información sobre como desarrollar en

WooCommerce

, visita el Codex oficial de WooCommerce haciendo clic aquí.

Si necesitas consultoría sobre

WooCommerce

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Personalizar el texto «Gratis» en nuestros productos

Cuando nuestros productos no tienen valor automáticamente WooCommerce le añade la etiqueta «Gratis» y a veces es necesario remplazar este texto; un caso de uso sería cuando en la compra de un producto queremos regalar otro al cliente (un 2×1) y entonces la etiqueta de nuestro producto que debería ser «Extra 2×1″, para esto usaremos el filtro “woocommerce_free_price_html».

En el siguiente ejemplo crearemos una función para remplazar este texto, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function remplazar_gratis() {
return "Extra 2x1";
}
add_filter('woocommerce_free_price_html', 'remplazar_gratis');

Si deseas más información sobre como desarrollar en

WooCommerce

, visita el Codex oficial de WooCommerce haciendo clic aquí.

Si necesitas consultoría sobre

WooCommerce

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Convertir los campos a campos obligatorios en la página de finalizar compra

WooCommerce por defecto solo cuenta con algunos campos obligatorios en la «página de finalizar compra (checkout)» y en algunas ocaciones es necesario para nuestro desarrollo requerir más información sobre el cliente, por ende es necesario convertir algunos campos a obligatorios y para lograr esto utilizaremos el filtro «woocommerce_checkout_fields».

En el siguiente ejemplo crearemos una función que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function required_checkout_fields( $fields ) {
$fields['account']['account_username']['required'] = true;
$fields['account']['account_password']['required'] = true;
$fields['account']['account_password-2']['required'] = true;
return $fields;
}
add_filter( 'woocommerce_checkout_fields', 'required_checkout_fields' );

Si deseas más información sobre como desarrollar en

WooCommerce

, visita el Codex oficial de WooCommerce haciendo clic aquí.

Si necesitas consultoría sobre

WooCommerce

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Cambiar la URL de acceso al panel de administración

Como buena practica de seguridad y para proteger nuestros desarrollos, es recomendable cambiar la URL de acceso al panel de administración de WordPress (inicio de sesión) que es por defecto «wp-login.php» o «/wp-admin», para ello utilizaremos la acción «login_head».

En el siguiente ejemplo crearemos una función que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function protection_login_page() {
$QS = '?nuevoacceso=admin';
$theRequest = 'https://' . $_SERVER['SERVER_NAME'] . '/' . 'wp-login.php' . '?'. $_SERVER['QUERY_STRING'];
if ( site_url('/wp-login.php').$QS == $theRequest ) {
//echo 'Query string matches';
} else {
header( 'Location: https://' . $_SERVER['SERVER_NAME'] . '/' );
}
}
add_action('login_head', 'protection_login_page');
Notas:
1. La nueva ruta de acceso quedará de la siguiente manera:
midominio/wp-login.php?nuevoacceso=admin
2. Puedes cambiar “nuevoacceso» por cualquier texto (marca o nombre del cliente).

Si deseas más información sobre como desarrollar en

WordPress en español

, visita el Codex oficial de WordPress haciendo clic aquí.

Descargar WordPress del repositorio oficial para México:haciendo clic aquí.
Repositorio oficial de Plugins para WordPress: haciendo clic aquí.
Repositorio oficial de temas gratuitos para WordPress: haciendo clic aquí.

Si necesitas consultoría sobre

WordPress

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Bloquear el panel de administración para todos los usuarios, excepto el Administrador

En algunos de nuestros desarrollos es necesario bloquear el acceso de todos los usuarios al panel de administración de WordPress (wp-admin) exceptuando al administrador del sitio web, para eso utilizaremos la acción «init».

En el siguiente ejemplo utilizaremos un código que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function bloquear_panel_init() {
if ( is_admin() && ! current_user_can( 'administrator' ) ) {
wp_redirect( home_url() );
exit;
}
}
add_action( 'init', 'bloquear_panel_init' );

Si deseas más información sobre como desarrollar en

WordPress en español

, visita el Codex oficial de WordPress haciendo clic aquí.

Descargar WordPress del repositorio oficial para México:haciendo clic aquí.
Repositorio oficial de Plugins para WordPress: haciendo clic aquí.
Repositorio oficial de temas gratuitos para WordPress: haciendo clic aquí.

Si necesitas consultoría sobre

WordPress

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Remover la hoja de estilos de Contact Form 7

En muchas ocaciones los estilos CSS del «Plugin Contact Form 7», no son los adecuados para nuestro sitio web y deseamos utilizar los nuestros, para solucionar esto utilizaremos la acción «wp_print_styles».

En el siguiente ejemplo utilizaremos un código que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function remover_estilo_formulario() {
wp_deregister_style( 'contact-form-7' );
}
add_action( 'wp_print_styles', 'remover_estilo_formulario', 100 );

Si deseas más información sobre como desarrollar en

WordPress en español

, visita el Codex oficial de WordPress haciendo clic aquí.

Descargar WordPress del repositorio oficial para México:haciendo clic aquí.
Repositorio oficial de Plugins para WordPress: haciendo clic aquí.
Repositorio oficial de temas gratuitos para WordPress: haciendo clic aquí.

Si necesitas consultoría sobre

WordPress

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Borrar automáticamente la imagen destacada cuando eliminamos un post

Cuando borramos una publicación de nuestro blog es necesario borrar la imagen destacada (featured image) de manera manual de nuestra biblioteca de medios, para automatizar esta tarea utilizaremos la acción «before_delete_post».

En el siguiente ejemplo utilizaremos un código que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

function borrar_imagen_destacada($post_id)
{
if(has_post_thumbnail( $post_id ))
{
$attachment_id = get_post_thumbnail_id( $post_id );
wp_delete_attachment($attachment_id, true);
}
}
add_action( 'before_delete_post', 'borrar_imagen_destacada', 10 );

Si deseas más información sobre como desarrollar en

WordPress en español

, visita el Codex oficial de WordPress haciendo clic aquí.

Descargar WordPress del repositorio oficial para México:haciendo clic aquí.
Repositorio oficial de Plugins para WordPress: haciendo clic aquí.
Repositorio oficial de temas gratuitos para WordPress: haciendo clic aquí.

Si necesitas consultoría sobre

WordPress

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css

Mostrar productos relacionados con base a las etiquetas

WooCommerce por defecto muestra los productos relacionados con base a la categoría y las etiquetas, si solo deseamos tomar en cuenta las etiquetas para mostrar nuestros productos relacionados debemos utilizar el siguiente filtro “woocommerce_product_related_posts_relate_by_category».

En el siguiente ejemplo agregaremos un filtro que nos ayudará a realizar el proceso descrito anteriormente, asegúrate de insertar el código en el archivo functions.php del tema activo en tu sitio web.

add_filter( 'woocommerce_product_related_posts_relate_by_category', '__return_
false' );

Si deseas más información sobre como desarrollar en

WooCommerce

, visita el Codex oficial de WooCommerce haciendo clic aquí.

Si necesitas consultoría sobre

WooCommerce

envíame un correo a hola@dannydshore.com o haciendo clic aquí.

#conceptos #wordpress #woocommerce #shortcodes #css