Vanilla 1.1.9 is a product of Lussumo. More Information: Documentation, Community Support.
I had this problem when trying to set up WordPress on a new PHP install the other day. Basically, what you need to do is go into your php.ini file (where it is will depend on the system) and change the memory_limit value to something higher (12 or 16MB should do it, try the lower value first!).
memory_limit = 12M
As the error indicates, it looks like this is down to the Feedparser library. I’m going to see if there’s anything I can do to reduce that load.
I’ve actually found that WordPress (at least on the bundled Mac OS 10.5 library of PHP and Apache) causes that error all by itself, without Tarski being activated, so Tarski’s intermittent apparent high memory usage may just push your server over the edge.
That’s correct. I take it you don’t have the problem with just WordPress, the default theme and no plugins running?
You could also try setting this in your .htaccess file (if your server is running Apache, which given that it looks like a *nix server it probably is):
php_value memory_limit 12M
But that capability may have been disabled by your host.
Can you try disabling all your plugins, enabling Tarski, and seeing if you can access the Options page? I’d like to find out Feedparser is all the problem or just a contributor to it.
Then I’m afraid the only options I can suggest are contacting your host to change the memory limit, or manually removing the update notification system.
To do that, go to library/launcher.php in your Tarski directory and comment out the following line:
add_action('activity_box_end', 'tarski_update_notifier');
So it becomes
// add_action('activity_box_end', 'tarski_update_notifier');
Then you need to remove it from the Tarski Options page. Go to library/display/admin/options_page.php, on lines 25-27 there should be the following code:
<?php if(!detectWPMU() || detectWPMUadmin()) { ?>
<?php tarski_update_notifier('options_page'); ?>
<?php } ?>
Comment out the middle line, so you end up with this:
<?php if(!detectWPMU() || detectWPMUadmin()) { ?>
<?php // tarski_update_notifier('options_page'); ?>
<?php } ?>
Obviously it means you’ll have to manually check for Tarski updates.
I think the new PHP defaults are the problem on Leopard; I didn’t have the issue when I set up PHP on Tiger (in addition to this I think Leopard is bundled with PHP 5, not 4, and it doesn’t automatically copy per-user Apache settings over either).
/**
* version_feed_data() - Returns latest version feed data.
*
* @link http://tarskitheme.com/version.atom
* @since 2.0
* @return string $atomdata
*/
function version_feed_data() {
// Thanks to Simon Willison for the inspiration
$cachefile = TARSKICACHE . "/version.atom";
$cachetime = 60 * 60;
// Serve from the cache if it is younger than $cachetime
if (
file_exists($cachefile)
&& (time() - $cachetime < filemtime($cachefile))
&& file_get_contents($cachefile)
) {
$atomdata = file_get_contents($cachefile);
} else {
$ch = curl_init(TARSKIVERSIONFILE);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$atomdata = curl_exec($ch);
curl_close($ch);
if(!empty($atomdata) && cache_is_writable("version.atom")) {
$fp = @fopen($cachefile, "w");
if($fp) {
fwrite($fp, $atomdata);
fclose($fp);
}
}
}
return $atomdata;
}
/**
* latest_version_number() - Returns latest version number.
*
* @since 2.0
* @return string
*/
function latest_version_number() {
if(preg_match('/<entry>.*?<title>(.+?)<\/title>.*?<\/entry>/is', Version::version_feed_data(), $matches)) {
$this->latest = wp_specialchars($matches[1]);
}
}
/**
* latest_version_link() - Returns link to latest version release post.
*
* The link should be the release post on the Tarski website
* for the latest version of Tarski, which will include a link
* to download the .zip file of that latest version.
* @since 2.0
* @return string
*/
function latest_version_link() {
if(preg_match('/<entry>.*?<id>(.+?)<\/id>.*?<\/entry>/is', Version::version_feed_data(), $matches)) {
$this->latest_link = wp_specialchars($matches[1]);
}
}
Thanks Henning, that’s very kind of you.
Jordan: it’s less than ideal, but ideally WordPress’s included feed parsing library wouldn’t be so awful and I wouldn’t need to include anything in the first place. Thanks for the patch, it’s now in trunk and will be in 2.0.1.
2.0.1 is now out and incorporates this change.
1 to 14 of 14