в новой версии 1.7 плагина "simpletagging" появилась панель массового изменения тегов, а в ней новая "фишка": справа появляется панель в виде английского алфавита и при клике по букве появляется список тегов на эту букву, которые можно вставить в нужную строку. С цифрами и английскими буквами проблем нет, но при попытке расширить словарь еще и русскими буквами при клике на русские буквы вылетает ошибка javascript и нажатия на остальные буквы не срабатывают до перезагрузки страницы.
функция вызывающая это действие такая:
[code- function generateTagsTab() {
global $wpdb;
$tags = $wpdb->get_col("SELECT DISTINCT tag_name FROM {$this->objClient->info[‘stptable’]} ORDER BY tag_name ASC");
//$alphabet = array(‘0-9′,’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’,’k’,’l’,’m’,’n’,’o’,’p’,’q’,’r’,’s’,’t’,’u’,’v’,’w’,’x’,’y’,’z’,’А’,’Б’,’В’,’г’,’д’,’е’,’ж’,’з’,’и’,’й’,’к’,’л’,’м’,’н’,’о’,’п’,’р’,’с’,’т’,’у’,’ф’,’х’,’ц’,’ч’,’ш’,’щ’);
$alphabet = array(‘0-9′,’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’,’k’,’l’,’m’,’n’,’o’,’p’,’q’,’r’,’s’,’t’,’u’,’v’,’w’,’x’,’y’,’z’);
foreach ( $alphabet as $letter ) {
$new_tags[$letter] = array();
}
if ( $tags ) {
foreach($tags as $tag) {
$index = substr( trim(strtolower($tag)), 0, 1 );
if ( ctype_digit($index) ) {
$new_tags[‘0-9’]
= $tag;
} else {
$new_tags[$index-
= $tag;
}
}
} else {
echo ‘<p>’.__(‘No tags yet.’, ‘simpletagging’).'</p>’;
return;
}
unset($tags);
?>
<div id="containertags">
<?php foreach ( $alphabet as $letter ) : ?>
<?php $nb_tag = count($new_tags[$letter]); ?>
<div id="letter-<?php echo $letter; ?>" <?php if ( $nb_tag == 0 ) echo ‘class="tabs-disabled"’; ?>>
<h2><?php echo strtoupper($letter); ?></h2>
<?php if ( $nb_tag > 0 ) : ?>
<ul class="tag_list">
<?php foreach ( $new_tags[$letter] as $tag ) : ?>
<li><a href="javascript:addTag(‘<?php echo $tag; ?>’)"><?php echo $tag; ?></a></li>
<?php endforeach; ?>
</ul>
<?php else: ?>
<ul>
<li><?php _e(‘No tag for this letter yet.’, ‘simpletagging’); ?></li>
</ul>
<?php endif; ?>
</div>
<?php endforeach; ?>
</div>
<?php
}[/code]
при нажатии на букву генерируется запрос вида
http://сайт/wp-admin/admin.php?page=simple-tagging_mass#letter-a
где в конце буква a это буква, на которую начинаются теги – т.е. выводится список. все там работает на аяксе.
возник вопрос – можно ли переделать эту функцию так чтобы выдавался просто список всех тегов без фильтрации по буквам, как на закладке "Управление тегами" – я пробовал просто скопировать запрос так как он был на вышеозначенной странице но не выводится ничего вообще. или забить на эту функцию вообще и оставить только английские символы?
алилуя. переделал вывод тегов – сделал вывод просто всех тегов списком без сортировки по буквам и заработало
осталось победить прокрутку списка вместе со страницей
в общем все победил сам. скачать новую версию 1.7 можно по ссылке у меня в подписи. оригинальную с сайта автора качать не советую. там баги (кроме тех что озвучены выше в первом посте)
Lecactus, как специалист в русифицировании, не мог бы посмотреть и WP-SNAP http://www.nateomedia.com/wares/downloads/wordpress/wp-snap/
уж очень хорош плагин, а кирилицу не воспринимает.
Zyama насколько я увидел по скриншотам – там перебор идет по буквам. я это победить и в плагине simple tagging 1.7 не смог – английские работают нормально, но русские не понимает даже в виде кодов