Идiотские обновления

НОВЫЙ СУПЕРМЕТОД:

добавить в funcions.php в теме вот это:

add_action(‘init’, ‘idiot_allowedtags’, 10);

function idiot_allowedtags() {
global $allowedtags;
$allowedtags[«embed»] = array («src» => array (),
«type» => array (),
«allowfullscreen» => array (),
«allowScriptAccess» => array (),
«width» => array (),
«height» => array ());
$allowedtags[«param»] = array («name» => array (),
«value» => array ());
$allowedtags[«object»] = array («width» => array (),
«hight» => array ());
$allowedtags[«img»] = array («alt» => array (),
«border» => array (),
«class» => array (),
«height» => array (),
«hspace» => array (),
«longdesc» => array (),
«vspace» => array (),
«src» => array (),
«width» => array ());
}

——————————————-

Я тут набросал способ за пять минут включить обычным зарегистрированным посетителям возможность использовать теги “object”, “param”, “embed”, “img” — то бишь возможность вставлять видео и картинки в комментарии.

Нужно:

1. войти на узел Idiot.fm в режиме ФТП,

2. открыть /home/content/i/d/i/idiotfm/html/wp-includes/kses.php,

3. в начале файла — сразу видно — найти определение массива $allowedtags,

4. добавить внурь самых внешних скобок — “$allowedtags = array(” следующее:
‘embed’ => array (
’src’ => array (),
‘type’ => array (),
‘allowfullscreen’ => array (),
‘allowScriptAccess’ => array (),
‘width’ => array (),
‘height’ => array ()),
‘param’ => array (
‘name’ => array (),
‘value’ => array ()),
‘object’ => array (
‘width’ => array (),
‘hight’ => array ()),
‘img’ => array (
‘alt’ => array (),
‘border’ => array (),
‘class’ => array (),
‘height’ => array (),
‘hspace’ => array (),
‘longdesc’ => array (),
‘vspace’ => array (),
’src’ => array (),
‘width’ => array ()),

– разумеется, последняя запятая не нужна, если вставлять в самый конец, перед последней (внешней) закрывающей скобкой.

5. записать изменения,

6. дать знать Идиотамъ, чтобы попробовали вставить видео с “Ю-Тьюба” и картинки.

———————

В продолжение http://idiot.fm/2009/10/17/pered-rybalgo/#comment-179764 набросал способ
за пять минут в ленте комментариев (всего узла и отдельных сообщений) включить
отображение помимо автора комментария еще и автора комментария-родителя
(если таковой существует) — чтобы сразу было понятно, на чей комментарий идет ответ.
Нужно:

1. войти на узел Idiot.fm в режиме ФТП,

2. открыть “/home/content/i/d/i/idiotfm/html/wp-includes/feed.php”,

3. найти описание “function get_comment_author_rss()”,

4. после описания этой функции вставить следующую функцию и записать файл:

function get_parent_comment_author_rss() {

global $comment;

global $wpdb;

$parent_comment_ID = $comment->comment_parent;
if (!empty($parent_comment_ID)){
$_comment = $wpdb->get_row($wpdb->prepare(“SELECT * FROM $wpdb->comments WHERE comment_ID = %d LIMIT 1″, $parent_comment_ID));
if ( empty($_comment->comment_author) ) {
if (!empty($_comment->user_id)){
$user=get_userdata($_comment->user_id);
$author=$user->user_login;
} else {
$author = __(‘Anonymous’);
}
} else {
$author = $_comment->comment_author;
}
} else {
$author = ”;
}
return apply_filters(‘comment_author_rss’, $author);
}

5. открыть “/home/content/i/d/i/idiotfm/html/wp-includes/feed-rss2-comments.php”,

6. найти строку “$title = get_the_title($comment_post->ID);”
– общий вид куска кода, начиная со строки выше, должен быть таким (с разницей, что текст на вывод
на “Идиоте” на русском языке):

if ( !is_singular() ) {
$title = get_the_title($comment_post->ID);
$title = apply_filters(‘the_title_rss’, $title);
printf(ent2ncr(__(‘Comment on %1$s by %2$s’)), $title, get_comment_author_rss());
} else {
printf(ent2ncr(__(‘By: %s’)), get_comment_author_rss());
}

7. заменить весь этот кусок на следующий (для удосбтва я текст привел к русскоязычному варианту
отображения на “Идиоте”) и записать файл:

$comment_parent_author = get_parent_comment_author_rss();
if (!empty($comment_parent_author)){
$comment_parent_author = ‘, в ответ посетителю ‘.$comment_parent_author;
} else {
$comment_parent_author = ”;
}
if (!is_singular() ) {
$title = get_the_title($comment_post->ID);
$title = apply_filters(‘the_title_rss’, $title);
printf(ent2ncr(__(‘Комментарий на “%1$s” от %2$s%3$s’)), $title, get_comment_author_rss(), $comment_parent_author);
} else {
printf(ent2ncr(__(‘От: %1$s%2$s’)), get_comment_author_rss(), $comment_parent_author);
}

Не проверял, но должно работать.
Если нет, то, разумеется, нужно просто восстановить эти два файла.