Problemas con plantilla de Wordpress: Solución solicitada

  • Autor Autor gtools
  • Fecha de inicio Fecha de inicio
G

gtools

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola. Mi nombre es lucas y tengo hace un tiempo problemas con una web.
está funcionando con wordpress y luego de algunos intentos con plantillas prediseñadas de dudosa procedencia, opté por Comprar... 🙄

Resulta que aparentemente la gente que diseñó la plantilla yo brinda soporte y eliminó la plantilla de la venta....
Salgo de una y entro en otra :ambivalence:

Mi gran problema es que mi cliente me sigue solicitando actualizaciones que no puedo realizar sin antes solucionar el problema con la web.... q cada tanto algo le pasa.

Al ingresar al Panel de Administración aparece lo siguiente:
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 2: parser error : Space required after the Public Identifier in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 2: parser error : SystemLiteral " or ' expected in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 2: parser error : SYSTEM or PUBLIC, the URI is missing in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: Cannot modify header information - headers already sent by (output started at /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php:102) in /home/ler12ner/public_html/wp-includes/option.php on line 568

Warning: Cannot modify header information - headers already sent by (output started at /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php:102) in /home/ler12ner/public_html/wp-includes/option.php on line 569


Realmente ya no se como solucionar los problemas con la plantilla.

Quisiera saber si pueden darme una mano para solucionar el Error que les comento ahora.

Seguramente es algo simple de solucionar, pero para mi es un Mundo!! jaja

Ah y el código al que hace referencia dice:
Insertar CODE, HTML o PHP:
<?php
/**
 * Provides a notification everytime the theme is updated
 * Original code courtesy of João Araújo of Unisphere Design - http://themeforest.net/user/unisphere
 */

function update_notifier_menu() {
	
	function fileExists($path){
	    return (@fopen($path,"r")==true);
	}
	
	if(fileExists('http://polysimple.com/updates/jetbird.xml')){
	  
		$xml = get_latest_theme_version(21600); // This tells the function to cache the remote call for 21600 seconds (6 hours)
		$theme_data = get_theme_data(TEMPLATEPATH . '/style.css'); // Get theme data from style.css (current version is what we want)
		
		if(version_compare($theme_data['Version'], $xml->latest) == -1) {
			add_menu_page( $theme_data['Name'] . 'Theme Updates', $theme_data['Name'] . '<span class="update-plugins count-1" style="background: #cc0000"><span class="update-count">Updates</span></span>', 'administrator', strtolower($theme_data['Name']) . '-updates', 'update_notifier');
		}
	
	}
	
}  

add_action('admin_menu', 'update_notifier_menu');

function update_notifier() { 
	$xml = get_latest_theme_version(21600); // This tells the function to cache the remote call for 21600 seconds (6 hours)
	$theme_data = get_theme_data(TEMPLATEPATH . '/style.css'); // Get theme data from style.css (current version is what we want) ?>
	
	<style>
		.update-nag {display: none;}
		#instructions {max-width: 800px;}
		h3.title {margin: 30px 0 0 0; padding: 30px 0 0 0; border-top: 1px solid #ddd;}
	</style>

	<div class="wrap">
	
		<div id="icon-tools" class="icon32"></div>
		<h2><?php echo $theme_data['Name']; ?> Theme Updates</h2>
	    <div id="message" class="updated below-h2"><p><strong>There is a new version of the <?php echo $theme_data['Name']; ?> theme available.</strong> You have version <?php echo $theme_data['Version']; ?> installed. Update to version <?php echo $xml->latest; ?>.</p></div>
        
        <img style="float: left; margin: 0 20px 20px 0; border: 1px solid #ddd;" src="<?php echo get_bloginfo( 'template_url' ) . '/screenshot.png'; ?>" />
        
        <div id="instructions" style="max-width: 800px;">
            <h3>Update Download and Instructions</h3>
            <p><strong>Please note:</strong> make a <strong>backup</strong> of the Theme inside your WordPress installation folder <strong>/wp-content/themes/<?php echo strtolower($theme_data['Name']); ?>/</strong></p>
            <p>To update the Theme, login to your Themeforest account, head over to your <strong>downloads</strong> section and re-download the theme.</p>
            <p>Extract the zip's contents and look for the extracted theme folder. You can then use FTP to transfer the files to the <strong>/wp-content/themes/<?php echo strtolower($theme_data['Name']); ?>/</strong> folder overwriting the old files. (It is important to backup any changes you've made to the theme files).</p>
            <p><strong>If you have not made any changes to the core theme files</strong>, you are free to overwrite them with the update as backwards compatibility is guaranteed.</p>
        </div>
        
            <div class="clear"></div>
	    
	    <h3 class="title">Changelog</h3>
	    <?php echo $xml->changelog; ?>

	</div>
    
<?php } 

// This function retrieves a remote xml file on my server to see if there's a new update 
// For performance reasons this function caches the xml content in the database for XX seconds ($interval variable)
function get_latest_theme_version($interval) {
	
	// remote xml file location
		
	$notifier_file_url = 'http://polysimple.com/updates/jetbird.xml';

	$db_cache_field = 'contempo-notifier-cache';
	$db_cache_field_last_updated = 'contempo-notifier-last-updated';
	$last = get_option( $db_cache_field_last_updated );
	$now = time();
	// check the cache
	if ( !$last || (( $now - $last ) > $interval) ) {
		// cache doesn't exist, or is old, so refresh it
		if( function_exists('curl_init') ) { // if cURL is available, use it...
			$ch = curl_init($notifier_file_url);
			curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
			curl_setopt($ch, CURLOPT_HEADER, 0);
			curl_setopt($ch, CURLOPT_TIMEOUT, 10);
			$cache = curl_exec($ch);
			curl_close($ch);
		} else {
			$cache = file_get_contents($notifier_file_url); // ...if not, use the common file_get_contents()
		}
		
		if ($cache) {			
			// we got good results
			update_option( $db_cache_field, $cache );
			update_option( $db_cache_field_last_updated, time() );			
		}
		// read from the cache file
		$notifier_data = get_option( $db_cache_field );
	}
	else {
		// cache file is fresh enough, so read from it
		$notifier_data = get_option( $db_cache_field );
	}
	
	$xml = simplexml_load_string($notifier_data); 
	
	return $xml;
		
}

?>


Gracias!!!








___________________________________________________________________________________________________________
Empresa Constructora - Regalos Empresariales

- - - Actualizado - - -

Al intentar hacer cualquier modificación en la web sigue apareciendo el mismo error

Insertar CODE, HTML o PHP:
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 2: parser error : Space required after the Public Identifier in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 2: parser error : SystemLiteral " or ' expected in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 2: parser error : SYSTEM or PUBLIC, the URI is missing in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php on line 102

Warning: Cannot modify header information - headers already sent by (output started at /home/ler12ner/public_html/wp-content/themes/jetbird-woo/includes/update_notifier.php:102) in /home/ler12ner/public_html/wp-includes/pluggable.php on line 876
 
¿Qué plantilla es?
 
He estado buscando un poco la manera de poder ayudarte, pero el gran problema es que la url de actualización de tu plantilla a desaparecido, parece ser que han puesto a la venta el dominio de polysimple.com, consecuencia es que el código esta llamando un "XML" inexistente, la plantilla esta siendo obligada a ello y te genera ese error.
Posibles soluciones,
- Editar el código y especificar una url donde si aparezca el archivo al que intenta acceder aunque no encuentre actualización podrías seguir usando la plantilla.
- Editar el código donde aparezca la llamada a la actualización de la plantilla y eliminar esa porción para que desaparezca el fallo y pudieras continuar con el uso de la plantilla.

Te aconsejaría que probaras en un localhost para que pudieras borrar y recuperar cada vez que perdieras la funcionalidad del WP.

Yo empezaría por la raiz de la llamada a la actualización situada en el functions.php donde esta la linea de:
include("includes/update_notifier.php");

si no se encuentra ahí, pues bien sera buscar donde lo han puesto, recordar siempre hacer copias de seguridad de todo antes de hacer cambios tan radicales y hacer pruebas en algún localhost para no arruinar lo trabajado

Un saludo
 
Muchas Gracias por su ayuda.

La plantilla la compré en ThemeForest y se llama "JetBird Shop - Premium E-commerce Theme"

Julioangelc es como tú dices, la plantilla ya no tiene actualizaciones..... desapareció! y como la misma plantilla pide actualizaciones no encuentra ningún archivo....

La plantilla me sirve sin actualizaciones ya que está actualmente funcional y mi problema es más que nada poder seguir actualizando sin los errores en el código que aparecen.

La opción de cambiar la ruta o buscar alternativas para que pueda actualizarse la plantilla ya estaría descartada, porque no existe más el soporte técnico para esa plantilla.
Podría solicitar un reembolso por éste problema, pero sinceramente la plantilla tal como está cumple con su función..... aunque entiendo que las actualizaciones tambien tienen sus ventajas...incluso al renovar las versiones de WordPress... pero en éste momento me serviría que funciona simplemente.

Creo que la solución sería poder modificar alguna línea del código para evitar simplemente que siga buscando actualizaciones.... ya que además al intentar cargar nueva info en la web éste error me impide hacer cualquier cosa.

Entiendo a duras penas el "Problema" ... lo que no tengo es la solución! :ambivalence:

Si pudieran indicarme que archivo es recomendable modificar y que línea del código mi problema estaría resuelto....

Gracias de antemano

SDs

- - - Actualizado - - -

Alguna ayuda por aqui?
 
En principio, ya la solucion te la habia cedido, pero aqui te la expongo mas radicalmente, ve al codigo de referencia, y borra las lineas siguientes:

SIEMPRE BORRA PRIMERO INSTALANDO LA PLANTILLA EN OTRO WORDPRESS QUE PUEDA SERVIR DE "LABORATORIO DE PRUEBAS" NO HAGÁIS NUNCA PRUEBAS O EXPERIMENTOS DESDE EL BLOG QUE TENGÁIS RIESGO DE PERDER O DE CAGARLA MAS. ME PASABA MUCHO AL PRINCIPIO, JEJE

-------------
<?php
/**
* Provides a notification everytime the theme is updated
* Original code courtesy of João Araújo of Unisphere Design - unisphere | ThemeForest
*/

function update_notifier_menu() {

function fileExists($path){
return (@fopen($path,"r")==true);
}

if(fileExists('http://polysimple.com/updates/jetbird.xml')){

$xml = get_latest_theme_version(21600); // This tells the function to cache the remote call for 21600 seconds (6 hours)
$theme_data = get_theme_data(TEMPLATEPATH . '/style.css'); // Get theme data from style.css (current version is what we want)

if(version_compare($theme_data['Version'], $xml->latest) == -1) {
add_menu_page( $theme_data['Name'] . 'Theme Updates', $theme_data['Name'] . '<span class="update-plugins count-1" style="background: #cc0000"><span class="update-count">Updates</span></span>', 'administrator', strtolower($theme_data['Name']) . '-updates', 'update_notifier');
}

}

}

add_action('admin_menu', 'update_notifier_menu');

function update_notifier() {
$xml = get_latest_theme_version(21600); // This tells the function to cache the remote call for 21600 seconds (6 hours)
$theme_data = get_theme_data(TEMPLATEPATH . '/style.css'); // Get theme data from style.css (current version is what we want) ?>
-----
Esta porción es lo que esta haciendo el test de versión de plantilla instalada. igual ya ahí puede ser un comienzo, lo siguiente es que pudieras comprobar todas las urls anidadas en la plantilla y eliminar dichas comprobaciones de igual manera, desde la apertura del php hasta tu finalizacion
Todo codigo html empieza con un "<?php" y termina con "?>".
Suerte y espero no se rompa nada, jeje
 
SIEMPRE BORRA PRIMERO INSTALANDO LA PLANTILLA EN OTRO WORDPRESS QUE PUEDA SERVIR DE "LABORATORIO DE PRUEBAS" NO HAGÁIS NUNCA PRUEBAS O EXPERIMENTOS DESDE EL BLOG QUE TENGÁIS RIESGO DE PERDER O DE CAGARLA MAS. ME PASABA MUCHO AL PRINCIPIO, JEJE

Esa es buena 😉
 
Atrás
Arriba