Skip to content

Instantly share code, notes, and snippets.

View cuxaro's full-sized avatar

Ivan Barreda cuxaro

View GitHub Profile
@cuxaro
cuxaro / sudo-role.php
Last active October 4, 2024 09:45
Crear poderes de Sudo, para que el usuario pueda acceder a un role superior durante un tiempo limitado.
<?php
// Acción para registrar el widget en el dashboard
add_action('wp_dashboard_setup', 'ibp_add_sudo_role_dashboard_widget');
function ibp_add_sudo_role_dashboard_widget()
{
wp_add_dashboard_widget(
'ibp_sudo_role_dashboard_widget', // ID del widget
'Sudo Role', // Título del widget
@cuxaro
cuxaro / Gestion de NGINx con docker automaticamente para nuevos servicios.txt
Last active September 21, 2024 09:27
Montar un sistema docker en el que cuando se agrega un nuevo servicio con un dominio se automanitamente se monta, se puede acceder por el 80 y 443 y se genera un certificado gestionado con Lets Encrypt
#Crear una network para que se puedan comunicar entre los dockers
docker network create nginx_network
@cuxaro
cuxaro / personalizar_sitema_yoast.php
Last active September 20, 2024 14:20
Personalizar el Sitemap de YOAST mediante Filter hooks
<?php
/**
* Hook para agregar sitemaps personalizados al sitemap_index.xml de Yoast.
*
* @param string $sitemap_index El contenido del índice del sitemap de Yoast.
* @return string El índice del sitemap modificado.
*/
function ibp_agregar_sitemaps_personalizados( $sitemap_index ) {
// Obtener las URLs de los sitemaps personalizados a través de un filtro.
$sitemap_urls = apply_filters( 'ibp_sitemaps_urls', array() );
@cuxaro
cuxaro / ordenar_admin_last_modified.php
Created September 20, 2024 14:06
Ordenar el contenido por fecha de ultima modificación
<?php
/**
* Ordenar los posts por la fecha de última modificación en el admin para todos los CPT.
*
* @param WP_Query $query Objeto de la consulta.
*/
function ibp_order_cpts_by_modified_date( $query ) {
// Verificar si es el área de administración y la consulta principal.
if ( is_admin() && $query->is_main_query() ) {
@cuxaro
cuxaro / anadir_columna_todos_cpt.php
Last active September 20, 2024 14:07
Añadir una columan extra con todos los posts y los CPT que le indiquemos. Tiene una serie de hooks para extenderlo y modificadlo
<?php
// Eliminar la columna de "Entradas" en la tabla de usuarios y agregar una nueva columna con enlaces a los CPTs
add_filter('manage_users_columns', 'ibp_remove_and_add_custom_posts_column');
add_filter('manage_users_custom_column', 'ibp_add_custom_posts_column_content', 10, 3);
// Función para eliminar la columna de "Entradas" predeterminada y añadir una nueva
function ibp_remove_and_add_custom_posts_column($columns) {
// Permitir personalización de las columnas existentes antes de modificar
$columns = apply_filters('ibp_before_modify_users_columns', $columns);
@cuxaro
cuxaro / buscar_enlaces_externos.php
Created September 15, 2024 19:57
Buscar todos los enlaces externos dentro del content de una instalacion WordPress
<?php
/**
* Función principal que busca enlaces externos que no apunten a dominios permitidos y los guarda en un archivo CSV.
*
* @param string $output_file El archivo donde se guardarán los enlaces externos.
* @param array $allowed_domains Lista de dominios permitidos.
*/
function ibp_check_external_links( $output_file = 'external_links.csv', $allowed_domains = [] ) {
global $wpdb;
@cuxaro
cuxaro / ibp_create_redirection.php
Last active September 20, 2024 14:09
Generar Redirecciones mediante código
<?php
/**
* Crea una redirección utilizando Red_Item y permite modificar su comportamiento mediante hooks.
*
* @param string $source URL de origen.
* @param string $target URL de destino.
* @param bool $regex Define si se usa regex en la redirección.
* @param int $group_id ID del grupo de redirecciones.
* @param int $status_code Código HTTP (301 o 302).
* @return string Resultado de la operación.
@cuxaro
cuxaro / gdpr-hooks.php
Created January 17, 2022 20:55
hooks GDPR WordPress
<?php
add_action('init', function () {
if (function_exists('gdpr_cookie_is_accepted')) :
if (gdpr_cookie_is_accepted('thirdparty')) :
//Aquí va el código a ejecutar
@cuxaro
cuxaro / colectiva-woof.css
Last active March 5, 2021 13:43
WOOF CSS La Colectiva
.chosen-container-single .chosen-single {
border: 0;
box-shadow: none;
background: 0;
}
.chosen-container {
font-size: 15px;
}
//https://ivanbarreda.com/wptv-shortcode/
/*
Guide of css elements in plugin
.wptv_novideos
.wptv_container