Přehled odpovědí
-
AutorPříspěvky
-
Zdravím, do pluginu jsem nekoukal, ale funkce tempnam() vrací “false” v případě neúspěchu, takže bych asi plugin upravil tak, že pokud by byla tato funkce neúspěšná použila by se jiná alternativní funkce kde by se použil jiný adresář umístěný už kdekoliv na serveru.
function alternative_tempnam($dir,$prefix){
$name = $prefix.md5(time().rand());
$handle = fopen(ABSPATH.$dir.'/'.$name, "w");
fclose($handle);
return $dir.'/'.$name;
}
if(!function_exists('tempnam') || tempnam($dir, $prefix) === false){
alternative_tempnam($dir, $prefix);
}
Viz. komentáře v PHP manuálu.
JJ to je :D ochrana před spamem v registraci uživatelů je zřejmně k ničemu ;)
Edit: Koukám, že na fóru jsou registrovány mraky uživatelů (i zatím nevyužitých, např uživatel pwweap) pro postování spamu, možná by to chtělo nějak pročistit :)
Zkuste použít stránkování bez pluginu. Jednou jsem to zkoušel a funguje to bezvadně. Podobně ( a možná i lépe) je stránkování řešeno i v šabloně Cyangant (ukázka stránkování je v demu pod články)
Neteyescz: Zajímavý odkaz…na to klikám jak vůl a furt nic… :D Jinak hezké že ty obdélníčky jsou i ve zdroji, jen mě nenapadá jak to využít… :)
Admin: Tvůj odkaz mi shodil záložku v chrome, asi je tam něco co se mu nelíbí :) Já používám třeba СПЕЦИАЛЬНЫЕ СИМВОЛЫ HTML И XHTML :)
:) lepší než obdélníčky by bylo spíš ☠ nebo aspoň ☹
♬ ♪ ♫ ;)
Právě jsem zjistila, že funkce vyhazuje i články, které mají bez problémů třeba 275 slov, nevím, čím to je.
Může to být způsobené HTML entitami, které editor ve WP vkládá automaticky do textu. Například mezi dvě slova vloží mezeru jako entitu což je řetězec
 . Vizuálně sice uvidíme dvě slova oddělené mezerou, ale ve zdroji bude slovo slovo což samozřejmě funkcestr_word_countvyhodnotí jako jedno dlouhé slovo.Přesně spočítat počet znaků v článků není díky editoru ve WP vůbec jednoduché. Museli by se před počítáním slov odstranit nebo nahradit všechny možné entity, odstranit mezery, HTML tagy a nakonec vše spočítat pomocí funkce
count();.Pokud tip od Separatisty nebude úspěšný mohl bych něco vytvořit…
EDIT: za   má být ještě ; jenže to ji pak neuvidíme ani jako kód :D
Jistě, pro uživatele který hledá “hotové řešení” to bude určitě skvělá volba, s tím souhlasím, pak se ale samozřejmě dříve či později “méně zkušený uživatel” dostává do situace kdy tento plugin nedělá přesně to co si představuje a nastává problém který neví jak vyřešit…
Řešení vytvořit si něco vlastního (nebo nechat si něco takového vytvořit) je podle mně daleko efektivnější a jistější
1. Bude to dělat přesně to co chci
2. Nebude nikdy vůbec žádný problém si cokoliv upravit
3. Nemusím se spoléhat na to, zda mi bude plugin fungovat i příští měsíc (např. pozastaven/ukončen vývoj pluginu a následná nefunkčnost v další nové verzi WP a tím pádem i nefunkčnost celého webu atd. atd.)
btw vložit “vlastním řešením” jakýkoliv feed do článků například pomocí shortcode nebo nacpat feedy do databáze článků zvládne průměrně zručný programátor určitě rychleji než třeba mi trvalo uspokojivé nastavení tohoto pluginu…
PS: tímto samozřejmě nechci tento plugin nějak zatracovat, své příznivce má a další si určitě najde, jde jen o můj názor :)
Zdravím,
a taky děkuji za report :)
Už docela dlouho mám připravenou novou verzi pluginu kde jsou již opraveny i některé další drobné chybičky a funkčnost ve WPMU bude už v této verzi vyřešena.
Pokud máte nějaké nápady nebo návrhy týkající se tohoto pluginu budu rád pokud se o ně podělíte.
Zdravím, tento plugin je vlastně jen taková “omáčka” kolem třídy SimplePie, která se již nachází ve WP.
Takže jednoduše by stačilo projít si dokumentaci a kouknout na API SimplePie (kde je mimochodem i docela dost zajímavých příkladů) a “slepit” si něco přesně podle toho jak potřebuji:
require_once ABSPATH.'wp-include/feed.php';
// nastavení adres ze kterých budeme parsovat
$url_adresy = array(
‘nejaka-adresa.cz’,
‘dalsi-adresa.cz’,
);
// inicializace a nastavení SimplePie
$rss = new SimplePie();
$rss->set_feed_url($url_adresy);
$rss->set_output_encoding(‘UTF-8’);
$rss->strip_htmltags(true);
$rss->enable_order_by_date(true);
$rss->enable_cache(true);
$rss->set_cache_location(ABSPATH.’cache/);
$rss->set_cache_duration(3600);
// a dalších X různých nastavení z dokumentace…
$rss->init();
$rss->handle_content_type();
// vypsání článků
if ($rss->error){ echo’Chyba RSS zdroje!’; } else {
foreach($rss->get_items() as $item):
?>
<h2><?php echo $item->get_title(); ?></h2>
<p><?php echo $item->get_content(); ?></p>
<?php endforeach
}
// odstranění z paměti
$rss->__destruct();
unset($rss);
?>
Tento kousek kódu jen vložím například do šablony stránky a použiji ji do nově vytvořené stránky v administraci. Naprostá výhoda je v tom, že si s tím můžu dělat co se mi zlíbí :)
Jak může vypadat výsledek je třeba na SimplePie Demo nebo na WP-feed.cz
Přes FTP bys jej měl normálně smazat bez problémů. Správně to má být tak, že je úplně jedno jestli soubor mažeš přes FTP nebo přes nějaký PHP script, mělo by to fungovat. Některé hostingy se ale snaží zabezpečovat svůj server nejrůznějšími moduly a nastaveními proto aby se jejich zákazníci cítili v “bezpečí”. Problém je ten, že už nepřemýšlí nad tím, že 90% jakýchkoliv aplikací takhle přestane správně fungovat a zákazníci v tu chvíli musí začít řešit mraky problémů a mnohdy paradoxně sami a úmyslně tohle “zabezpečení” obcházejí (například nastavením práv u souborů na 777…)
Konkrétně u tebe mám pocit, že původní soubory pluginů mají jiného vlastníka než má WP, systém tím pádem nemůže s těmito soubory manipulovat. Pokud ale aktualizuješ přímo přes WP tak si systém soubory pluginu sám vytvoří, proto je taky jejich vlastník a může si s nimi dělat co chce (tedy i aktualizovat, mazat atd…). Skus použít FTP rozhraní na webhostingu (pokud tam nějaké je) a hledej nějakou položku “reset oprávnění”, obvykle to tam bývá a mohlo by to pomoct. Jinak kontaktuj podporu ať ti to zresetují sami, změna CHMODu ti moc nepomůže pokud budou mít pluginy jiného vlastníka než wordpress.
A taky bys měl mít zapisovatelnou složku nejenom “plugins” ale i “wp-content”.
A nová instalace nějakého pluginu přes administraci funguje? Pokud je problém s vlastníkem souborů (hosting mohl udělat nějaké změny v nastavení zabezpečení) mohlo by pomoct smazání pluginů přes FTP a nová instalace těchto pluginů rovnou z administrace.
Pokud nefunguje ani nová instalace kontaktoval bych podporu hostingu a požadoval bych nápravu, to že PHP nemůže na tvém placeném hostingu vytvářet a upravovat soubory není tvůj problém a je to omezení ze strany hostingu (i když asi z dobrým úmyslem).
Jj jistě tak to je už samozřejmé, že pokud budu třeba v článku odkazovat absolutními adresami tak je jediné řešení přepsat vše v databázi. Ale relativní adresy jsem taky zkoušel používat a zatím naprosto bez problémů. Nějak nechápu ten smysl proč se museli používat absolutní když naopak to má obrovské výhody (například můžu napsat blog na localhostu a pak jej bez problémů “zkopírovat” na ostrý server naprosto bez jakýchkoliv úprav).
Mimochodem co se týče funkčnosti šablon a pluginů tak pokud jsou správně “napsané” měly by využívat funkce WordPressu v co největší maximálně možné míře takže nastavení cest a URL adres by měli správně zjišťovat pomocí funkcí
get_bloginfo();a podobných a všechny tyto funkce pro zjišťění nastavení si nejdřív kontrolují právě uvedené konstanty než sáhnou do databáze. Teoreticky by tak každý správně naprogramovaný plugin či šablona měli, při použití těchto konstant, bez problémů fungovat na jakémkoliv hostingu nebo doméně beze změn.Zdravím po delší pauze jsem nakoukl a nedalo mi to :)
Pro přesun na jinou doménu nebo i třeba hosting by podle mě mělo stačit doplnit tohle do souboru
wp-config.php. Odpadly by tak hrátky s MySql databází a ještě bych ušetřil docela dost dotazů na DB nemluvě o tom, že po smazání se zase můžu vrátit zpátky pokud by to bylo potřeba nebo mi něco uteklo?define('WP_SITEURL', 'http://'.$_SERVER);
define('WP_HOME', WP_SITEURL);
define('WP_CONTENT_DIR', $_SERVER.'/wp-content');
define('WP_CONTENT_URL', WP_HOME.'/wp-content');
define('WP_PLUGIN_DIR', WP_CONTENT_DIR.'/plugins');
define('WP_PLUGIN_URL', WP_CONTENT_URL.'/plugins ');
define('PLUGINDIR', WP_PLUGIN_DIR);
define('WP_LANG_DIR', WP_CONTENT_DIR.'/languages');
Job manager je asi nejlepší, ale samozřejmě záleží na požadavcích…
Tady je ukázka co umí: http://www.kostany.cz/wp/wordpress/?page_id=149
no asi teda určitě by to třeba šlo přes uživatelská pole nebo rovnou zvláštní tabulku v db jen pro tato data jen mě momentálně nenapadá jak by se ovládala například položka “právě hraje”. Moderátor by se mohl měnit třeba podle přihlášení, script (plugin) by poznal že je přihlášen moderátor ten a ten a jeho jméno by také zobrazil. Ale právě hraje…tak možná podle času, u každé písničky by se musel zadat čas kdy bude hrát a podle toho by se zobrazoval její název. Jinač netuším jak to automaticky provést, moderátor by to pak musel ručně měnit v administraci…nebo mám v sobě málo kafe :D
A máš nastaveno přepisování smajlíků? Mohlo se stát že sis toto nastavení třeba omylem vypl.
Nastavení >> Publikování >> Převést smajlíky jako např. :-) a :-P do grafické podoby
Jen doplním, že odstraněním atributů “title” u odkazů a to zvlášť v navigaci se váš web může snadno stát absolutně nepřístupný například pro zrakově postižené, s odstraňováním bych byl tedy docela opatrný.
je to zvláštní…jinak já třeba používám Simple Lightbox, ten je sice pořád označován jako beta verze, ale funguje bez problémů a je i dost často aktualizovaný. V nastavení můžeš určit zda se obrázky mají zobrazovat samostatně nebo třeba jako slideshow pokud je jich v článku víc. Pokud se to nevyřeší tak zkus tento plugin.
Pokud vypnutí pluginů nepomůže zkusil bych ještě něco. Jediný rozdíl ve zdroji je totiž jen v tom, že tam kde to funguje jsou obrázky obaleny do HTML tagu
<div>...</div>a tam kde ne jsou jen v nějakém pofidérním<span style.... Takže bych se zkusil přepnout do HTML editoru a upravit to ať jsou ty obrázky obaleny jen s<div>...</div>.jj tohle v artisteeru lze měnit (třeba v tom nastavení u jednotlivých položek), každopádně než něco dělat v artisteeru tak bych se raději naučil HTML a CSS a třeba i několikrát za sebou…pořád tím strávíš míň času než úpravami toho bordelu co vyleze z tohoto programu. Šablony možná vypadaj hezky, ale ten kod…to je na mašli.
-
AutorPříspěvky