Архива за 'SQL' категорију
Преместили сте свој WordPress блог, или сте само променили префикс из подразумеваног wp_ у нешто друго (нпр. префикс_) из било ког разлога. Осим што сте то урадили у датотеци wp_config.php, обавили сте и све промене у MySQL бази променивши и префикс у називима табела. Кренули сте да се пријавите у администраторски панел вордпреса, али Вас уместо Контролне табле дочекује порука:
You do not have sufficient permissions to access this page.
Марфи је крив, са све гремлинима, зар не? Да ли је блог отишао у бесповрат? Није, не брините. И за ово постоји решење, и то прилично једноставно.
Наиме, није довољно само променити префикс у називима табела у бази, већ је потребно изменити и префикс у референцама на табеле у бази. „Репови“ су „остали“ у табелама префикс_usermeta и префикс_options. Ако сте користили аналогију приликом постављања префикса приликом инсталације вордпреса па префиксу додали доњу црту као наставак, онда сте на коњу и пар SQL упита решиће проблем. Међутим, ако сте уместо префикс_ изабрали само префикс, мораћете да цео посао обавите ручно.
Важна напоменаПре сваког „прчкања“ по бази, увек, и то под обавезно, направите резервну копију базе пре него што било шта урадите. Разлог? Не желите да у случају да нешто пође по злу јурцате около и вичете „Ујела ме бува, ујела ме бува!“.
Први коракПрви проблем налази се у пољу meta_key у табели префикс_usermeta. Можете употребити следећи SQL упит (наравно, након што прилагодите зацрњени део синтаксе ситуацији у Вашој бази):
UPDATE `префикс_usermeta` SET `meta_key` = REPLACE(`meta_key`, 'wp_', 'префикс_');Овде ће бити ажурирани називи следећих записа:
префикс_capabilities префикс_user_level префикс_usersettings префикс_usersettingstime Други коракДруги корак се односи на табелу префикс_options у којој у пољу option_name треба променити запис префикс_user_roles. Поново, може се искористити следећи SQL упит, уз прилагођавање зацрњених делова синтаксе ситуацији у Вашој бази:
UPDATE `префикс_options` SET `option_name` = 'префикс_user_roles' WHERE `option_name` = 'wp_user_roles' AND `blog_id` = 0; Муке моје нико не знаАко сте се зезнули па приликом инсталације вордпреса и прављења нове базе задали префикс типа ja уместо ja_, аутоматизацију SQL упитима никако не препоручујем, већ лепо засучите рукаве и одрадите поменуте измене ручно. А други пут, па и тај приликом промене префикса, памет у главу па увек префиксима за табеле додајте доњу црту, злу не требало
Корисна адреса: BeConfused.
Подели:Većina korisnika Wordpressa zna WP u comment odeljku prikazuje akumulirani broj "odgovora" različitog tipa (bez obzira na tip: komentar, trackback, pingback ) na blog zapis. Postoji nekoliko WP pluginova koji razvrstavaju komentare i trekbekove, ali ih ne prebrojavaju. E, ako vam je potrebna broj pojedinačnih odgovora po tipu onda možete primeniti narednu malu modifikaciju.
Unutar foldera vaše teme, ukoliko većne postoji, kreirjate fajl functions.php i ubacite sledeći kod:
function tb_count() { global $wpdb; global $id; $count = "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_type = ‘trackback’ and comment_post_ID=$id"; return $wpdb->get_var($count); }
Naravno, ovim dobijate broj trackback-ova za pojedinačni blog post označen sa $id, a prebrojavanje po tipu određujete restrikcijom SQL upita na comment_type nivou. Da bi ste prikazali broj trackbackova unutar stranice, pozovite broj sledećom funkcijom:
<?php echo tb_count(); ?>
A ako vam recimo treba statistički podatak o ukupnom broju odgovora na celom blogu, po tipu, dovoljno je izbaciti ono ‘comment_post_ID=$id"‘ i globalnu varijablu.