Autor Zpráva
hladis
Profil
Když si dám na svém webu RSS, tak mi to napíše: Chyba parsování XML: Na začátku externí entity chybí procesní instrukce xml
Adresa: http://hladis.ic.cz/?feed=rss2
Číslo řádku 2, sloupec 1:<?xml version="1.0" encoding="UTF-8"?>
^

Nevíte, v čem je chyba? Používám WP v2.7. Za každou odpověď předem děkuji.
Chamurappi
Profil
Reaguji na hladise:
Máš před XML deklarací prázdný řádek. Buď se zbav tohoto řádku, nebo té XML deklarace (při UTF-8 je k ničemu).
hladis
Profil
Chamurappi
Když otevřu soubor rss2.php:

<?php
/**
 * Redirects to the RSS2 feed
 * This file is deprecated and only exists for backwards compatibility
 *
 * @package WordPress
 */
require( './wp-load.php' );
wp_redirect( get_bloginfo( 'rss2_url' ), 301 );
?>


tak kde mám vzít ten .xml soubor?
hladis
Profil
Prosím napište mi, jak to je.
hladis
Profil
Nikdo neví?
Pulby
Profil *
hele ja sem lama ale neni ta xml deklarace spis ve souboru wp-load.php ??
hladis
Profil
Pulby
Obsah souboru wp-load.php:

<?php
/**
 * Bootstrap file for setting the ABSPATH constant
 * and loading the wp-config.php file. The wp-config.php
 * file will then load the wp-settings.php file, which
 * will then set up the WordPress environment.
 *
 * If the wp-config.php file is not found then an error
 * will be displayed asking the visitor to set up the
 * wp-config.php file.
 *
 * Will also search for wp-config.php in WordPress' parent
 * directory to allow the WordPress directory to remain
 * untouched.
 *
 * @package WordPress
 */

/** Define ABSPATH as this files directory */
define( 'ABSPATH', dirname(__FILE__) . '/' );

error_reporting(E_ALL ^ E_NOTICE ^ E_USER_NOTICE);

if ( file_exists( ABSPATH . 'wp-config.php') ) {

	/** The config file resides in ABSPATH */
	require_once( ABSPATH . 'wp-config.php' );

} elseif ( file_exists( dirname(ABSPATH) . '/wp-config.php' ) && ! file_exists( dirname(ABSPATH) . '/wp-load.php' ) ) {

	/** The config file resides one level below ABSPATH */
	require_once( dirname(ABSPATH) . '/wp-config.php' );

} else {

	// A config file doesn't exist

	// Set a path for the link to the installer
	if (strpos($_SERVER['PHP_SELF'], 'wp-admin') !== false) $path = '';
	else $path = 'wp-admin/';

	// Die with an error message
	require_once( ABSPATH . '/wp-includes/classes.php' );
	require_once( ABSPATH . '/wp-includes/functions.php' );
	require_once( ABSPATH . '/wp-includes/plugin.php' );
	wp_die(sprintf(/*WP_I18N_NO_CONFIG*/"There doesn't seem to be a <code>wp-config.php</code> file. I need this before we can get started. Need more help? <a href='http://codex.wordpress.org/Editing_wp-config.php'>We got it</a>. You can create a <code>wp-config.php</code> file through a web interface, but this doesn't work for all server setups. The safest way is to manually create the file.</p><p><a href='%ssetup-config.php' class='button'>Create a Configuration File</a>"/*/WP_I18N_NO_CONFIG*/, $path), /*WP_I18N_ERROR_TITLE*/"WordPress &rsaquo; Error"/*/WP_I18N_ERROR_TITLE*/);

}

?>


Vážně nikdo neví co s tím?
vydrus
Profil
Asi mám podobný problém - ale ne u článků, nýbrž u komentářů - viz: http://feeds.feedburner.com/Vydrusuv-zapisnik-komentare

Když si zobrazíte zdroják, můžete vidět, že je to celé nějaké divné. Validátor mi vyhodil nějaký hlášky, ale moudrej z toho fakt nejsem.

Co s tím? Ten, kdo mi pomůže, dostane bonbónek.

//Edit: pokouším se to opravit, možná cizí pomoci nebude třeba. Uvidíme, jak mi to půjde.
vydrus
Profil
Můj problém je vyřešen, pomohl mi validátor, po chvilce vrtání jsem to spravil.

hladis
http://feedvalidator.org/check.cgi?url=http%3A%2F%2Fhladis.ic.cz%2F%3F feed%3Drss2 - zkus si to tam opravit. Možná to půjde.
hladis
Profil
vydrus
Ale já nevím, jak se dostanu do toho souboru.
vydrus
Profil
hladis
U tebe je to zřejmě root/wp-includes/feed-rss2.php.
hladis
Profil
vydrus
A co tam mám tedy blbě?
<?php
/**
 * RSS2 Feed Template for displaying RSS2 Posts feed.
 *
 * @package WordPress
 */

header('Content-Type: text/xml; charset=' . get_option('blog_charset'), true);
$more = 1;

?>
<?php echo'<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?>

<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	<?php do_action('rss2_ns'); ?>
>

<channel>
	<title><?php bloginfo_rss('name'); wp_title_rss(); ?></title>
	<atom:link href="<?php self_link(); ?>" rel="self" type="application/rss+xml" />
	<link><?php bloginfo_rss('url') ?></link>
	<description><?php bloginfo_rss("description") ?></description>
	<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?></pubDate>
	<?php the_generator( 'rss2' ); ?>
	<language><?php echo get_option('rss_language'); ?></language>
	<sy:updatePeriod><?php echo apply_filters( 'rss_update_period', 'hourly' ); ?></sy:updatePeriod>
	<sy:updateFrequency><?php echo apply_filters( 'rss_update_frequency', '1' ); ?></sy:updateFrequency>
	<?php do_action('rss2_head'); ?>
	<?php while( have_posts()) : the_post(); ?>
	<item>
		<title><?php the_title_rss() ?></title>
		<link><?php the_permalink_rss() ?></link>
		<comments><?php comments_link(); ?></comments>
		<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false); ?></pubDate>
		<dc:creator><?php the_author() ?></dc:creator>
		<?php the_category_rss() ?>

		<guid isPermaLink="false"><?php the_guid(); ?></guid>
<?php if (get_option('rss_use_excerpt')) : ?>
		<description><![CDATA[<?php the_excerpt_rss() ?>]]></description>
<?php else : ?>
		<description><![CDATA[<?php the_excerpt_rss() ?>]]></description>
	<?php if ( strlen( $post->post_content ) > 0 ) : ?>
		<content:encoded><![CDATA[<?php the_content() ?>]]></content:encoded>
	<?php else : ?>
		<content:encoded><![CDATA[<?php the_excerpt_rss() ?>]]></content:encoded>
	<?php endif; ?>
<?php endif; ?>
		<wfw:commentRss><?php echo get_post_comments_feed_link(); ?></wfw:commentRss>
<?php rss_enclosure(); ?>
	<?php do_action('rss2_item'); ?>
	</item>
	<?php endwhile; ?>
</channel>
</rss>
vydrus
Profil
Oprav to, co ti tam označil validátor. Pokud jsi průměrně inteligentní, spravíš si to sám. Bohužel nemám tolik času, takže ti nemohu rozebírat každý zdroják.
Chamurappi
Profil
Reaguji na vydruse:
Asi mám podobný problém
Ne, měl jsi úplně jiný problém, nijak nesouvisející s prázdným řádkem.

Oprav to, co ti tam označil validátor.
Validátor mu řekne přesně totéž, co jsem už uvedl v příspěvku #2, akorát bez návodu na řešení. (Validovat RSS/ATOM umí mimochodem i český validátor.)


Reaguji na hladise:
Když z uvedeného kódu vyhodíš řádek vypisující XML deklaraci, problém určitě zmizí.
Jinak je možná ten prázdný řádek způsoben odřádkováním před „<?php echo'<?xml version…“.
hladis
Profil
Chamurappi
Díky, moc jsi mi pomohl. Už mi to funguje.

vydrus
Díky za tvůj čas.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0