ccc

Mostrando entradas con la etiqueta Wordpress: plugins. Mostrar todas las entradas
Mostrando entradas con la etiqueta Wordpress: plugins. Mostrar todas las entradas

Wordpress: plugin para loguearse, registrarse y recordar contraseña

https://es.wordpress.org/plugins/theme-my-login/

Wordpress: crear tu propio plugin

Te creas una nueva carpeta en la carpeta de plugins con el nombre que le vas a dar.

Dentro de esa carpeta la estructura básica es aconsejable que sea:
/nombre-plugin
          nombre-plugin.php
          uninstall.php
          index.php
          readme.txt
          /languages
          /includes
          /admin
                    /js
                    /css
                    /images
          /public
                    /js
                    /css
                    /images

Ojo: El fichero index.php nunca se edita, se deja en blanco.

En el fichero php de nuestro plugin por ejemplo:
<?php
/*
Plugin Name: El Despotricador Cinéfilo
Plugin URI: https://www.eldespotricadorcinefilo.com
Description: Plugin que te muestra los vídeos más populares de El Despotricador Cinéfilo
Version: 1.0
Author: Leandro Sierra
Author URI: https://www.eldespotricadorcinefilo.com
License: GPL2
*/

function lsg_edc() {
$JSON = file_get_contents("https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId=UCoM0y3Ys6dE1V-ldTpWKPQQ&maxResults=10&key=AIzaXXXXaqpDXkzPWE2VmAS-h23DIYHcN7u4Uc");
$arr = json_decode($JSON);
$html = "";
foreach ($arr->items as $clave=>$valor) {
$html .= "<div style='border:1px solid #000;background:#EEEEEE;margin:10px;padding:10px;'><h4>".$valor->snippet->title."</h4><p><img src='".$valor->snippet->thumbnails->default->url."'></p></div>";

// print_r($valor);
}

    return $html;
 }
 add_shortcode('edc', 'lsg_edc');
?>

Y así ya solo en cualquier página, entrada o parte del wordpress solo hay que poner el shortcode de:

[edc]

Wordpress: Define GD Library como tu editor de imágenes predeterminado

Hablando de magia, ¿sabías que WordPress viene con dos editores de imágenes? Así es, WordPress usa Imagick o GD Library para procesar imágenes. Si bien ambos son geniales, Imagick es conocido por agotar la memoria disponible y causar el error HTTP.

Para evitar este problema, debes hacer que GD Library sea tu editor predeterminado. ¿Cómo? Simplemente coloca este código en el archivo functions.php de tu plantilla:

function hs_image_editor_default_to_gd( $editors ) {
$gd_editor = 'WP_Image_Editor_GD';
$editors = array_diff( $editors, array( $gd_editor ) );
array_unshift( $editors, $gd_editor );
return $editors;
}
add_filter( 'wp_image_editors', 'hs_image_editor_default_to_gd' );

Guarda los cambios e intenta cargar la imagen nuevamente. Si el error de HTTP persiste, debes deshacer el cambio de código y probar con la siguiente solución.

Más información en:
https://www.hostinger.es/tutoriales/como-reparar-error-http-al-cargar-imagenes-wordpress/#Solucion-5-Define-GD-Library-como-tu-editor-de-imagenes-predeterminado

Wordpress: Añadir un Foro (BBPress)

https://es.wordpress.org/plugins/bbpress/

En los ajustes del plugin desmarcar:

Permite a usuarios anónimos, sin cuenta, crear debates y enviar respuestas

(para que así solo puedan crear foros y dar respuestas los usuarios registrados)

Para crear páginas en el menú personalizadas para cada una de las opciones del foro (registrarse, loguearse, recordar contraseña, etc) utilizar https://codex.bbpress.org/features/shortcodes/

Por ejemplo la página de registrarse contendría solo:

[bbp-register]


Para poder usar en una web el shortcode de [logout] hay que instalar previamente el plugin https://wordpress.org/plugins/log-out-shortcode/

Recaptcha Invisible Google

Hay que obtener una "key secrets" y una "api key" en:

https://www.google.com/recaptcha/admin

Por ejemplo en Wordpress el plugin es:

https://wordpress.org/plugins/cf7-invisible-recaptcha/

Para las webs normales seguir las indicaciones de la página de:

https://www.google.com/recaptcha/admin

Una vez que tienes ya el API KEY y el API SECRET en una web normal hay que poner en el form:
<script src='https://www.google.com/recaptcha/api.js'></script>
<div class="g-recaptcha" data-sitekey="[API_KEY]"></div>

Y luego en el fichero que recibe los datos del form:
$recaptcha = $_POST["g-recaptcha-response"];
$url = 'https://www.google.com/recaptcha/api/siteverify';
$data = array(
'secret' => '[API_SECRET]',
'response' => $recaptcha
);
$options = array(
'http' => array (
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context  = stream_context_create($options);
$verify = file_get_contents($url, false, $context);
$captcha_success = json_decode($verify);
if ($captcha_success->success) {
   // todo bien: rescatar los datos del form
}

Más información en:
http://jonsegador.com/2017/05/configurar-recaptcha-2-0-con-php/

Para Wordpress más información en:

https://www.cloudways.com/blog/add-google-invisible-recaptcha-in-wordpress/

En wordpress después de configurar el plugin de "Advanced noCaptcha & invisible captcha" con el Site key y el site Secret que te proporciona Google ya solo tienes que añadir a tu formulario de contact form:

[anr_nocaptcha g-recaptcha-response]