Respuestas de foro creadas

Viendo 15 respuestas - de la 1 a la 15 (de un total de 93)
  • Foro: WooCommerce
    En respuesta a: Me aparece error 570 y 828

    Hola @amaruveg

    le está pasado a mucha gente, simplemente es un problema de compatibilidad de WooCommerce Subscriptions con la última versión de WooCommerce.

    Si actualizas Subscriptions a la última versión (la 3.0.10), se arregla solo.

    Foro: WooCommerce
    En respuesta a: Error 500 en web

    Hola @albcabgil
    por lo que se ve en el registro de error que incluyes, uno de los problemas que tienes (no tiene por qué ser el único), es que algo que tienes instalado en tu sitio está utilizando funciones obsoletas de WooCommerce.

    Un buen sitio para empezar a recabar información son la página de estado de WooCommerce:
    https://darwincollection.com/wp-admin/admin.php?page=wc-status
    (mira sobre todo las secciones «plantillas» y «plugins activos»)

    También veo que tenéis instalado Flatco, un tema comercial. Aunque diga que es compatible con WooCommerce 4.1 es posible que no todas sus plantillas lo sean. Yo probaría a hacer una copia del sitio, instalar Storefront e intentar reproducir el error.

    Hola @jrmolinavilla
    cada plugin del repositorio de WordPress tiene su propio foro de soporte. Los mensajes que escribas ahí le llegan directamente al autor del plugin y normalmente es la forma más efectiva de solucionar un problema tan específico como el tuyo.

    Este es el de WP Easypay:
    https://wordpress.org/support/plugin/wp-easy-pay/

    Hola @roverquilling
    Todos los temas, plugins y el propio WordPress se desarrollan en inglés pero están preparados para que se puedan adaptar a las distintas variantes regionales o locales.

    En el caso del español, tenemos el español de España, de México, Argentina, Colombia… cada una de estas variaciones del español la gestiona y traduce un equipo independiente, con sus propias normas y equipo de traductores.

    El español de Uruguay es un equipo pequeño que no tiene tantos proyectos traducidos como otros equipos más grandes como España o Venezuela. En tu caso yo de aconsejaría que probaras a poner tu instalación de WordPress en español de Venezuela, que es un locale muy completo con un estilo de traducción similar al de Uruguay.

    Aún así, vas a seguir teniendo el problema del tema. Lo que tienes instalado es Enfold, un tema comercial. Si quieres que añadan una traducción que no tenga, tendrás que iniciar sesión en tu cuenta de ThemeForest y solicitarlo desde la página de soporte del tema.

    Nilo Velez

    (@nilovelez)

    Tienes instalado un plugin que te saca la versión AMP de tu sitio. AMP es una versién reducida del contenido que se usa principalmente en sitios de noticias, porque genera una versión simplificada que carga más rápido en móviles.

    Esta es la URL AMP de la que has pasado tú:
    https://espelauto.com/tienda/placa-de-diodos/placa-de-diodos-alternador-valeo-citroen-c15-peugeot-205-305/?amp

    En las tiendas puede ser bastante complicado hacer que funcione bien y no es epecialmente útil. Mi recomendación es que lo desactives.

    Nilo Velez

    (@nilovelez)

    ¿podrías dar más información?

    Hasta donde yo sé, WooCommerce no tiene un modo catálogo nativo, ¿lo has activado con un plugin o con código en el functions.php?

    ¿el pedido era de una persona real o podría ser un bot?

    ¿Puedes pasar la dirección de la tienda?

    Pues va a ser que sí.

    La vulnerabilidad está presente entre la 1.3.4 y la 1.6.1 de ThemeGrill Demo Importer y esto tiene la 1.6.1

    ¡Un abrazo, caballero!

    Foro: WordPress Avanzado
    En respuesta a: Sanitizar $REQUEST
    Nilo Velez

    (@nilovelez)

    Claro, el problema que tienes es que la función satitize_text_field está hecha para limpiar una sola cadena de texto y romper todas las posibles estructuras de datos que te intenten colar.

    Como imagino que lo que pretendes con tu método save_setting() es que sea genérico y no tengas que pasarle el tipo de campo que esperas, vas a tener que hacer una validación inicial más básica y luego revisar tú cada caso específico:

    if ( filter_input( INPUT_POST, "{$this->prefix}_setting" ) !== null ) {
    	check_admin_referer( 'aqui_va_tu_nonce' );
    	$new_settings = filter_input( INPUT_POST, "{$this->prefix}_setting", FILTER_FORCE_ARRAY );
    }

    Ahí estoy usando INPUT_POST, pero también permite INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER o INPUT_ENV.
    https://www.php.net/manual/es/function.filter-input.php

    El tercer parámetro y sucesivos de filter_input() son los filtros que quieres aplicarle, yo en el código uso FILTER_FORCE_ARRAY para garantizar que por lo menos lo que recibo sea un array, pero también puedes poner FILTER_DEFAULT o dejarlo en blanco para que no haga nada por defecto y hacer tú toda la validación (cuidadín)

    Como me habíais dejado con la duda, me he puesto a investigarlo y resulta que lo que le aplica WordPress a los títulos es un wp_kses (https://developer.wordpress.org/reference/functions/wp_kses/) con el valor predeterminado de $allowed_html

    Eso quiere decir que, a no ser el que el tema o algún plugin lo modifique, en los títulos se pueden añadir las mismas etiquetas que están permitidas por defecto en los comentarios:

    /**
     * @var array[] $allowedtags Array of KSES allowed HTML elements.
     * @since 1.0.0
     */
    $allowedtags = array(
            'a'          => array(
                    'href'  => true,
                    'title' => true,
            ),
            'abbr'       => array(
                    'title' => true,
            ),
            'acronym'    => array(
                    'title' => true,
            ),
            'b'          => array(),
            'blockquote' => array(
                    'cite' => true,
            ),
            'cite'       => array(),
            'code'       => array(),
            'del'        => array(
                    'datetime' => true,
            ),
            'em'         => array(),
            'i'          => array(),
            'q'          => array(
                    'cite' => true,
            ),
            's'          => array(),
            'strike'     => array(),
            'strong'     => array(),
    );

    ¡Ahí es ná!

    Suponiendo que la configuración de tu servidor te lo permita, lo más parecido que vas a conseguir es conseguir llamar al fichero exe la función exec de PHP (https://www.php.net/manual/es/function.exec.php) o descargarte el exe y ejecutarlo desde tu ordenador, pero jamás vas a conseguir que un servidor web ejecute fichero exe solo con enlazarlo.

    ¡Funcionando!

    Al final lo he cambiado un poco, pero va perfecto:

    En la configuración de NGINX:

    # Rewrite multisite in a subdirectory '.../wp-.*' and '.../*.php'.
    if (!-e $request_filename) {
    	rewrite ^/[_0-9a-zA-Z-]+(/wp-includes/.*) $1 last;
    	rewrite ^/[_0-9a-zA-Z-]+.*(/wp-admin/.*\.php)$ $1 last;
    	rewrite ^/[_0-9a-zA-Z-]+(/.*\.php)$ $1 last;
    }

    En el wp-config.php :
    define( 'WP_CONTENT_URL', '/wp-content');

    Con eso, las url con wp-includes quedan así:
    «http://loquesea.comes/es/wp-includes/css/dashicons.min.css»

    Y las del wp-content así:
    «/wp-content/themes/kiteplans/css/style.css»

    No lo he dicho, pero tengo NGINX con la configuración por defecto de Plesk (NGINX como proxy y sirviendo ficheros estáticos y Apache para procesar PHP) y con esta configuración funciona todo aunque active la compresión GZip en NGINX.

    Mil gracias por la ayuda, @kallookoo

    ¡Gracias! creo que este bloque es lo que necesito:

    # Rewrite multisite in a subdirectory '.../wp-.*' and '.../*.php'.
    if (!-e $request_filename) {
        rewrite ^/[_0-9a-zA-Z-]+(/wp-.*) $1 last;
        rewrite ^/[_0-9a-zA-Z-]+.*(/wp-admin/.*\.php)$ $1 last;
        rewrite ^/[_0-9a-zA-Z-]+(/.*\.php)$ $1 last;
    }

    Cuando lo pruebe digo si funciona

    Tu error es un combinación de error de javascript y de caché.

    Tienes activada la caché dinámica de Super Cache. Eso lo que hace es que cada vez que un visitante carga una página de tu web, se genera una copia estática, pero utiliza javascript para cargar dinámicamente el contenido que tiene que cambiar, como el carrito.

    Al mismo tiempo hay algo que está dándote un error de javascript, que hacer que no funcione el fragmento que muestra el contenido del carrito.

    Parece que lo que está dando el error es el plugin Social Sharing Toolkit, así que yo empezaría por probar a desactivarlo y vaciar la caché, a ver qué pasa.

    hola @jjmontalban
    Tengo un mensaje a la espera de aprobación recomendando también shopping-cart-migration antes de que saltara el tuyo en el que dices que te han dicho que no es posible.

    Tienes una opción, pero puede ser dolorosa.

    Hay un módulo de pago para Joomla que integra K2 con VirtueMart. Tendrías que comprarla, instalar VirtueMart y entonces comprar la migración a WooCommerce. No lo he usado nunca, pero la alternativa es exportar los CSV desde K2, tocar los datos en excel, importar en WooCommerce con la relación manual de columnas y arreglar lo que se rompa.

    https://www.joomlaworks.net/support/docs/item/176-k2mart

    Hola @jjmontalban,
    no me gusta recomendar aquí servicios de pago, pero iba lo mismo que @josearcos https://www.shopping-cart-migration.com/

    Es lo único que conozco que sea capar de hacer migraciones peloteras de comercio electrónico. Ya lo he usado personalmente para pasar a WooCommerce y Pestashop desde osCommerce, VirtueMart (maldita sea su estampa), Prestashop.
    Normalmente hay que corregir alguna cosa como alguna variación que se rompe, pero suelen ser cosas menores.

    Los precios son razonables y créete si te digo que es el dinero que he gastado más a gusto en mi vida.

Viendo 15 respuestas - de la 1 a la 15 (de un total de 93)